网络知识
centos mysql安全设置技巧
2025-07-12 15:54  点击:0

在CentOS系统上设置MySQL的安全性的方法如下:

安装MySQL
    确保系统是最新的:
sudo yum update
    添加MySQL Yum仓库并安装MySQL服务器:
sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpmssudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpmsudo yum install mysql-community-server -y
    启动MySQL服务并设置开机自启:
sudo systemctl start mysqldsudo systemctl enable mysqld
安全设置
    查看初始密码:
grep 'temporary password' /var/log/mysqld.log
    修改初始密码:
mysql -uroot -p 临时密码
    运行安全配置脚本:
mysql_secure_installation
    配置防火墙:
sudo firewall-cmd --permanent --zone public --add-port 3306/tcpsudo firewall-cmd --reload
    创建新用户并授权:
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';GRANT SELECT, INSERT, UPDATE, DELETE ON mydatabase.* TO 'myuser'@'localhost';FLUSH PRIVILEGES;
    修改MySQL配置文件:
sudo vi /etc/my.cnf

[mysqld] 部分添加或修改以下设置:

bind-address = 127.0.0.1max_connections = 500datadir=/var/lib/mysqlchown -R mysql:mysql /var/lib/mysqlchmod -R 700 /var/lib/mysql

保存更改并重启MySQL服务:

sudo systemctl restart mysqld
用户权限管理
    查看用户:
use mysql;show grants for current_user();
    创建用户:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
    授予权限:
GRANT SELECT, INSERT ON mydatabase.* TO 'newuser'@'localhost';FLUSH PRIVILEGES;
    撤销权限:
REVOKE SELECT, INSERT ON mydatabase.* FROM 'newuser'@'localhost';FLUSH PRIVILEGES;
    删除用户:
DROP USER 'olduser';
    更改用户密码:
SET PASSWORD FOR 'olduser'@'localhost' = PASSWORD('newpassword');