OpenEuler 系统中安装 MySQL

本教程适用于 OpenEuler 20.03 LTS、22.03 LTS 等主流版本,全程使用 root 权限操作(也可通过sudo提升权限)。

一、环境准备

1.1 检查系统版本与权限

首先登录 OpenEuler 系统,执行以下命令确认系统版本,确保符合安装要求:

bash

运行

查看OpenEuler系统版本

cat /etc/openEuler-release

确认当前用户为root(非root用户需在命令前加sudo)

whoami

输出示例(符合要求):

plaintext

openEuler release 22.03 LTS

root

1.2 清理系统残留组件

OpenEuler 默认可能预装 MariaDB(与 MySQL 冲突),需先清理残留的 MySQL/MariaDB 相关组件:

bash

运行

查看已安装的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 配置系统依赖与网络

确保系统可访问互联网,并安装必要的依赖包:

bash

运行

更新系统软件包(可选,建议执行)

dnf update -y

安装wget、net-tools等基础工具(用于后续操作)

dnf install -y wget net-tools

二、配置 MySQL 官方 YUM 源

OpenEuler 的默认源中没有 MySQL 8.0,需手动添加 MySQL 官方 YUM 源:

bash

运行

进入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 服务器包:

bash

运行

安装MySQL 8.0服务器

dnf install -y mysql-community-server

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

四、初始化与配置 MySQL

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

bash

运行

启动MySQL服务

systemctl start mysqld

设置开机自启

systemctl enable mysqld

查看MySQL服务状态

systemctl status mysqld

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

4.2 获取初始密码并修改

MySQL 8.0 安装后会生成临时初始密码,存储在日志文件中:

bash

运行

查找初始密码(注意密码包含特殊字符)

grep 'temporary password' /var/log/mysqld.log

输出示例:

plaintext

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

其中Abc123!@#就是初始密码,接下来登录 MySQL 并修改密码:

bash

运行

登录MySQL(输入上述初始密码)

mysql -uroot -p

修改root密码(密码需满足:至少8位,包含大小写字母、数字和特殊字符)

ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass123!';

刷新权限

FLUSH PRIVILEGES;

4.3 配置远程访问(可选)

默认情况下,MySQL 的 root 用户仅允许本地访问,若需要远程连接(如用 Navicat、DBeaver),需执行以下配置:

sql

-- 允许root用户从任意主机远程访问(%表示任意主机,也可替换为具体IP)

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'MyNewPass123!' WITH GRANT OPTION;

-- 刷新权限

FLUSH PRIVILEGES;

-- 退出MySQL

EXIT;

同时,需开放 OpenEuler 的 3306 端口(MySQL 默认端口):

bash

运行

临时开放3306端口(重启网络后失效)

firewall-cmd --add-port=3306/tcp --permanent

重新加载防火墙规则

firewall-cmd --reload

查看端口是否开放

firewall-cmd --query-port=3306/tcp

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

五、验证 MySQL 安装与使用

5.1 本地连接验证

bash

运行

重新登录MySQL(使用新设置的密码)

mysql -uroot -pMyNewPass123!

查看MySQL版本

SELECT VERSION();

退出MySQL

EXIT;

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

5.2 远程连接验证(可选)

使用远程数据库工具(如 Navicat),输入以下信息连接:

主机:OpenEuler 系统的 IP 地址

端口:3306

用户名:root

密码:你设置的新密码

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

六、常见问题解决

安装时提示 "GPG 密钥验证失败":

执行命令导入 MySQL 官方 GPG 密钥:

bash

运行

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

忘记 MySQL 密码:

可通过停止 MySQL 服务,跳过权限表验证的方式重置密码(具体步骤可参考 MySQL 官方文档)。

3306 端口无法访问:

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

总结

在 OpenEuler 中安装 MySQL 8.0 的核心步骤为:清理残留组件→配置官方 YUM 源→安装 MySQL→启动服务→修改初始密码→配置远程访问(可选)。

MySQL 的初始密码存储在/var/log/mysqld.log中,新密码需满足复杂度要求(大小写字母 + 数字 + 特殊字符)。

远程访问需授权root@%并开放 3306 端口,才能实现外部工具连接。

相关推荐
No8g攻城狮21 分钟前
【Linux】Windows11 安装 WSL2 并运行 Ubuntu 22.04 详细操作步骤
linux·运维·ubuntu
WangYaolove131435 分钟前
基于python的在线水果销售系统(源码+文档)
python·mysql·django·毕业设计·源码
酷酷的崽79837 分钟前
CANN 生态可维护性与可观测性:构建生产级边缘 AI 系统的运维体系
运维·人工智能
做人不要太理性42 分钟前
CANN Runtime 运行时组件深度解析:任务调度机制、存储管理策略与维测体系构建逻辑
android·运维·魔珐星云
souyuanzhanvip1 小时前
ServerBox v1.0.1316 跨平台 Linux 服务器管理工具
linux·运维·服务器
山岚的运维笔记1 小时前
SQL Server笔记 -- 第18章:Views
数据库·笔记·sql·microsoft·sqlserver
文静小土豆1 小时前
Docker 与 containerd 代理配置详解:镜像拉取速度慢的终极解决方案
运维·docker·容器
roman_日积跬步-终至千里2 小时前
【LangGraph4j】LangGraph4j 核心概念与图编排原理
java·服务器·数据库
汇智信科2 小时前
打破信息孤岛,重构企业效率:汇智信科企业信息系统一体化运营平台
数据库·重构
野犬寒鸦2 小时前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法