OpenEuler 系统中安装 MySQL【华为开发者空间】

举报
tea_year 发表于 2025/12/19 14:53:09 2025/12/19
【摘要】 教程适用于 OpenEuler 20.03 LTS、22.03 LTS 等主流版本,全程使用 root 权限操作(也可通过sudo提升权限)。一、环境准备1.1 检查系统版本与权限首先登录 OpenEuler 系统,执行以下命令确认系统版本,确保符合安装要求:# 查看OpenEuler系统版本cat /etc/openEuler-release# 确认当前用户为root(非root用户需在命...
教程适用于 OpenEuler 20.03 LTS、22.03 LTS 等主流版本,全程使用 root 权限操作(也可通过sudo提升权限)。

一、环境准备

1.1 检查系统版本与权限

首先登录 OpenEuler 系统,执行以下命令确认系统版本,确保符合安装要求:
# 查看OpenEuler系统版本
cat /etc/openEuler-release
# 确认当前用户为root(非root用户需在命令前加sudo)
whoami

输出示例(符合要求):

openEuler release 22.03 LTS
root

1.2 清理系统残留组件

OpenEuler 默认可能预装 MariaDB(与 MySQL 冲突),需先清理残留的 MySQL/MariaDB 相关组件:
# 查看已安装的MySQL/MariaDB相关组件
rpm -qa | grep -E 'mysql|mariadb'
# 卸载相关组件(将查询结果中的组件名替换到命令中,示例如下)
rpm -e --nodeps mariadb-libs-5.5.68-1.oe1.x86_64
# 再次检查,确保无残留
rpm -qa | grep -E 'mysql|mariadb'

若输出为空,说明清理完成。

1.3 配置系统依赖与网络

确保系统可访问互联网,并安装必要的依赖包:
# 更新系统软件包(可选,建议执行)
dnf update -y
# 安装wget、net-tools等基础工具(用于后续操作)
dnf install -y wget net-tools

二、配置 MySQL 官方 YUM 源

OpenEuler 的默认源中没有 MySQL 8.0,需手动添加 MySQL 官方 YUM 源:
# 进入yum源配置目录
cd /etc/yum.repos.d/
# 下载MySQL 8.0的yum源配置文件(适配RHEL 8/9的版本,兼容OpenEuler)
wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm
# 安装yum源配置包
rpm -ivh mysql80-community-release-el8-3.noarch.rpm
# 检查yum源是否生效
dnf repolist enabled | grep mysql

输出中出现mysql80-community说明源配置成功。

三、安装 MySQL 8.0

执行以下命令安装 MySQL 服务器包:
# 安装MySQL 8.0服务器
dnf install -y mysql-community-server

安装过程中会自动解决依赖,等待安装完成即可。

四、初始化与配置 MySQL

4.1 启动 MySQL 服务并设置开机自启


# 启动MySQL服务
systemctl start mysqld
# 设置开机自启
systemctl enable mysqld
# 查看MySQL服务状态
systemctl status mysqld

若输出中出现active (running),说明服务启动成功。

4.2 获取初始密码并修改

MySQL 8.0 安装后会生成临时初始密码,存储在日志文件中:
# 查找初始密码(注意密码包含特殊字符)
grep 'temporary password' /var/log/mysqld.log

输出示例:
2025-05-20T08:12:34.567890Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: Abc123!@#

其中Abc123!@#就是初始密码,接下来登录 MySQL 并修改密码:
# 登录MySQL(输入上述初始密码)
mysql -uroot -p
# 修改root密码(密码需满足:至少8位,包含大小写字母、数字和特殊字符)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass123!';
# 刷新权限
FLUSH PRIVILEGES;

4.3 配置远程访问(可选)

默认情况下,MySQL 的 root 用户仅允许本地访问,若需要远程连接(如用 Navicat、DBeaver),需执行以下配置:
-- 允许root用户从任意主机远程访问(%表示任意主机,也可替换为具体IP)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyNewPass123!' WITH GRANT OPTION;
-- 刷新权限
FLUSH PRIVILEGES;
-- 退出MySQL
EXIT;

同时,需开放 OpenEuler 的 3306 端口(MySQL 默认端口):
# 临时开放3306端口(重启网络后失效)
firewall-cmd --add-port=3306/tcp --permanent
# 重新加载防火墙规则
firewall-cmd --reload
# 查看端口是否开放
firewall-cmd --query-port=3306/tcp

输出yes说明端口开放成功。

五、验证 MySQL 安装与使用

5.1 本地连接验证


# 重新登录MySQL(使用新设置的密码)
mysql -uroot -pMyNewPass123!
# 查看MySQL版本
SELECT VERSION();
# 退出MySQL
EXIT;

输出 MySQL 8.0 的版本号,说明本地连接正常。

5.2 远程连接验证(可选)

使用远程数据库工具(如 Navicat),输入以下信息连接:
  • 主机:OpenEuler 系统的 IP 地址
  • 端口:3306
  • 用户名:root
  • 密码:你设置的新密码

    若能成功连接,说明远程访问配置生效。

六、常见问题解决

  1. 安装时提示 “GPG 密钥验证失败”

    执行命令导入 MySQL 官方 GPG 密钥:
    rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
    

  2. 忘记 MySQL 密码

    可通过停止 MySQL 服务,跳过权限表验证的方式重置密码(具体步骤可参考 MySQL 官方文档)。
  3. 3306 端口无法访问

    检查防火墙是否开放端口,或云服务器的安全组是否放行 3306 端口。

总结

  1. 在 OpenEuler 中安装 MySQL 8.0 的核心步骤为:清理残留组件→配置官方 YUM 源→安装 MySQL→启动服务→修改初始密码→配置远程访问(可选)
  2. MySQL 的初始密码存储在/var/log/mysqld.log中,新密码需满足复杂度要求(大小写字母 + 数字 + 特殊字符)。
  3. 远程访问需授权root@%并开放 3306 端口,才能实现外部工具连接。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。