在Fedora 29系统中安装MySQL 8.0数据库的方法
本文介绍在Fedora 29、Fedora 28操作系统中安装并配置MySQL 8.0数据库的方法,适用Server或Workstation版本。如果有旧版本的MySQL(例如5.7版本),需要进行就地升级或转储所有数据,升级软件包并将所有数据重新导入到新的MySQL 8.0中。在RHEL 8中安装请参考在RHEL 8系统上安装MySQL 8.0的步骤。
1. 添加MySQL 8.0社区存储库
29系统:
sudo dnf install https://repo.mysql.com//mysql80-community-release-fc29-1.noarch.rpm
28系统
sudo dnf install https://repo.mysql.com//mysql80-community-release-fc28-1.noarch.rpm
这会将存储库文件写入/etc/yum.repos.d/mysql-community.repo中。
2. 安装MySQL Server 8.0的方法
添加存储库并确认启用后,通过运行以下命令继续将MySQL 8.0安装到Fedora 29系统中:
sudo dnf -y install mysql-community-server
安装后,可以运行以下命令查看包信息:
dnf info mysql-community-server
安装完成之后会有mysql Server的详细信息
3. 配置MySql数据库
在Fedora 29/Fedora 28系统中安装成功MySQL 8.0之后,需要进行初始配置以保护它。
1、启动并启用mysqld服务:
sudo systemctl start mysqld.service
sudo systemctl enable mysqld.service
2、复制root用户生成的随机密码:
grep 'A temporary password' /var/log/mysqld.log |tail -1
3、启动MySQL安全安装以更改root密码,远程禁用root登录,删除匿名用户并删除测试数据库:
mysql_secure_installation
4、以root用户身份连接到MySQL数据库并创建测试数据库
mysql -u root -p
创建测试数据库和用户:
mysql> CREATE DATABASE test_db;
mysql> CREATE USER 'test_user'@'localhost' IDENTIFIED BY "Strong34S;#";
mysql> GRANT ALL PRIVILEGES ON test_db.* TO 'test_user'@'localhost';
mysql> FLUSH PRIVILEGES;
可以通过运行以下命令删除此测试数据库和用户:
mysql> DROP DATABASE test_db;
mysql> DROP USER 'test_user'@'localhost';
mysql> show databases;
mysql> QUIT
4. 配置防火墙(根据需求来定)
要允许远程连接,请允许防火墙上的端口3306:
sudo firewall-cmd --add-service=mysql --permanent
sudo firewall-cmd --reload
还可以限制来自相关网络的访问:
sudo firewall-cmd --permanent --add-rich-rule 'rule family="ipv4" \
service name="mysql" source address="10.1.1.0/24" accept'