温馨提示×

centos mysql安全设置技巧

小樊
41
2025-07-12 12:25:45
栏目: 云计算

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

安装MySQL

  1. 确保系统是最新的:
sudo yum update 
  1. 添加MySQL Yum仓库并安装MySQL服务器:
sudo wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpms sudo rpm -Uvh mysql80-community-release-el7-3.noarch.rpm sudo yum install mysql-community-server -y 
  1. 启动MySQL服务并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld 

安全设置

  1. 查看初始密码
grep 'temporary password' /var/log/mysqld.log 
  1. 修改初始密码
mysql -uroot -p 临时密码 
  1. 运行安全配置脚本
mysql_secure_installation 
  1. 配置防火墙
sudo firewall-cmd --permanent --zone public --add-port 3306/tcp sudo firewall-cmd --reload 
  1. 创建新用户并授权
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword'; GRANT SELECT, INSERT, UPDATE, DELETE ON mydatabase.* TO 'myuser'@'localhost'; FLUSH PRIVILEGES; 
  1. 修改MySQL配置文件
sudo vi /etc/my.cnf 

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

bind-address = 127.0.0.1 max_connections = 500 datadir=/var/lib/mysql chown -R mysql:mysql /var/lib/mysql chmod -R 700 /var/lib/mysql 

保存更改并重启MySQL服务:

sudo systemctl restart mysqld 

用户权限管理

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

0