在 Linux 系统(以常见的基于 Red Hat 系,如 CentOS、RHEL 等,使用 dnf 包管理器为例)安装 MySQL 8 遇到 GPG 密钥验证问题,可按以下方法解决:

1. 导入 MySQL 8 的 GPG 公钥

MySQL 8 及后续版本有对应的 GPG 公钥,你可以使用以下命令导入官方公钥:

bash

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

如果上述链接无法使用,可以访问 MySQL 官方仓库地址(https://repo.mysql.com/),在页面中查找并下载适用于你系统的 RPM-GPG-KEY-mysql 文件,然后手动导入,示例如下:

bash

wget https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
rpm --import RPM-GPG-KEY-mysql-2022

2. 清除缓存并重新安装

导入公钥后,先清除 dnf 缓存中之前下载的可能存在问题的软件包:

bash

dnf clean all

接着重新安装 MySQL 8 服务器及相关组件:

bash

dnf install mysql-community-server

安装过程中,系统会使用刚导入的 GPG 公钥来验证软件包的合法性和完整性。

3. 启动 MySQL 服务

安装成功后,启动 MySQL 服务:

bash

sudo systemctl start mysqld

并可以使用以下命令查看服务状态,确认是否启动成功:

bash

sudo systemctl status mysqld

4. 初始化 MySQL

首次启动 MySQL 后,还需要进行初始化设置,获取初始密码并进行安全配置:

bash

sudo mysql_secure_installation

按照提示输入初始密码(一般首次启动后,初始密码会打印在安装日志中,或者可以通过查看 /var/log/mysqld.log 文件获取),然后依次设置密码验证策略、修改 root 密码、移除匿名用户、禁止 root 远程登录、移除 test 数据库等操作。

如果是基于 Debian 系(如 Ubuntu)的 Linux 系统,安装流程有所不同,解决 GPG 问题的步骤如下:

  1. 导入 GPG 公钥

bash

wget -qO - https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 | sudo apt-key add -
  1. 更新软件源并安装

bash

sudo apt update
sudo apt install mysql-server

后续启动 MySQL 服务(sudo systemctl start mysql)和初始化配置操作基本类似 。

  1. 查找临时密码从日志内容中可以看到,有 “A temporary password is generated for root@localhost: Mbz58ng2i=q” 这样的记录,这里 “Mbz58ng2i=q” 就是 MySQL 首次安装后为 root 用户生成的临时密码。
  2. 使用临时密码登录 MySQL执行命令 mysql -u root -p,然后输入找到的临时密码(即 Mbz58ng2i=q),即可登录 MySQL。
  3. 修改 root 密码(可选,若想设置更易记的密码)登录 MySQL 后,执行以下 SQL 语句修改 root 用户的密码(这里将新密码设为 NewPassword123!,实际可根据需求设置,需符合 MySQL 密码策略,包含大小写字母、数字和特殊字符):

    sql

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
    
    执行后,下次就可以用新设置的密码登录 MySQL 了。
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐