
作者✍️提示:如果你是全新环境,可先执行
dnf makecache构建本地缓存
使用以下命令查看是否有 MySQL 相关包:
dnf search mysql-server如果显示有 mysql-server 等包,说明已经支持

sudo dnf install -y mysql-server

等待安装完成后,启动MySQL服务:
sudo systemctl start mysqld
设置开机自启:
sudo systemctl enable mysqld查看服务状态:
systemctl status mysqld
作者✍️提示:如果出现 “Active: active (running)” 则说明安装成功
sudo systemctl stop mysqldsudo mysqld --skip-grant-tables --skip-networking --user=mysql &☑️ 注意:此命令将在前台运行,终端会被占用。建议 开另一个终端窗口或使用 SSH 登录新会话 继续后续操作。

在另一个终端输入:
mysql -u root
进入 MySQL shell 后执行:
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'openEuler&2025';
FLUSH PRIVILEGES;
EXIT;或者某些 MySQL 8 版本需要用下面的语法:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'NewSecurePwd8!';完成后输入:
EXIT;回到原终端,按 Ctrl + C 停止前台 mysqld_safe,然后:
sudo systemctl start mysqld现在你可以正常使用新密码登录:
mysql -u root -p
ERROR 1410 (42000): You are not allowed to create a user with GRANTmysql -u rootmysql 系统库USE mysql;SELECT Host, User FROM user WHERE User = 'root';你应该会看到:
+-----------+------+
| Host | User |
+-----------+------+
| localhost | root |
+-----------+------+%UPDATE user SET Host='%' WHERE User='root' AND Host='localhost';
FLUSH PRIVILEGES;GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;SELECT Host, User FROM user WHERE User = 'root';应该输出:
+------+------+
| Host | User |
+------+------+
| % | root |
+------+------+
CREATE USER 'devadmin'@'%' IDENTIFIED BY 'StrongDev#2025';
GRANT ALL PRIVILEGES ON *.* TO 'devadmin'@'%' WITH GRANT OPTION;如果需让外网或同网段的服务器连接MySQL,需打开3306端口:
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reloadmysql -u root -p输入新密码后即可进入MySQL管理界面
作者✍️提示:可使用
SHOW DATABASES;查看数据库列表,或创建新数据库、用户
/etc/my.cnf:[mysqld]
bind-address=0.0.0.0systemctl restart mysqldCREATE USER 'admin'@'%' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;作者✍️提示:生产环境不建议接受全网段连接,请配合防火墙或VPN系统保障
通过上述步骤,你已经成功在OpenEuler系统上安装并启用MySQL,同时可选配置防火墙和远程连接。