以下是详细的指导:
首先,检查系统中是否已经安装了 MySQL 或 MariaDB:
mysql --version如果系统中已经安装了旧版本的 MySQL 或 MariaDB,请先卸载它们。
MySQL 官方提供了 Yum 仓库,可以通过它直接安装 MySQL 8。
运行以下命令下载并安装 MySQL Yum 仓库:
sudo wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm注意:如果你使用的是 openEuler 20.03 或更高版本,可以选择与 CentOS 8 兼容的仓库。
使用 rpm 命令安装下载的仓库文件:
sudo rpm -Uvh mysql80-community-release-el8-3.noarch.rpm确保包管理器的缓存是最新的:
sudo yum makecache运行以下命令安装 MySQL 8 社区版:
sudo yum install mysql-server安装完成后,启动 MySQL 服务,并设置为开机自启:
sudo systemctl start mysqld
sudo systemctl enable mysqldMySQL 8 安装完成后会生成一个临时密码,通常记录在日志文件中。你可以通过以下命令查看临时密码:
sudo grep 'temporary password' /var/log/mysqld.log输出结果类似如下:
2025-04-15T10:42:00.123456Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Abc123XyZ其中 Abc123XyZ 就是临时密码,请妥善保存。
使用临时密码登录 MySQL:
mysql -u root -p输入临时密码后,进入 MySQL 命令行。
首次登录后,MySQL 会强制要求修改初始密码。可以执行以下 SQL 命令来设置新密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';注意:
退出 MySQL 后,再次使用新密码登录以验证是否成功:
mysql -u root -p输入新密码即可正常登录。
如果需要从其他机器访问 MySQL 数据库,可以执行以下操作。
编辑 MySQL 配置文件 /etc/my.cnf,找到 bind-address 参数并将其修改为 0.0.0.0:
bind-address=0.0.0.0保存后重启 MySQL 服务:
sudo systemctl restart mysqld登录 MySQL 后,执行以下命令授予远程访问权限:
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;如果你的服务器启用了防火墙(如 firewalld),需要开放 MySQL 的默认端口(3306)。
firewalld 开放端口运行以下命令开放端口:
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reloadsudo firewall-cmd --list-all在另一台机器上,尝试通过 MySQL 客户端连接到服务器。假设服务器的 IP 是 192.168.1.181,可以使用以下命令测试连接:
mysql -u root -p -h 192.168.1.181输入密码后,如果能够成功连接,则说明配置成功。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。