- A+
所属分类:教程文章

在MySQL中配置安全策略,主要是通过设置账户权限、启用日志审计、加密连接、限制访问来源以及定期更新等方式来提升数据库的安全性。下面介绍具体的操作方法和安装配置步骤。
1. 设置强密码策略
MySQL支持密码强度验证插件,可通过安装并启用validate_password插件增强密码安全性。
操作步骤:
- 登录MySQL:使用root账户登录命令行mysql -u root -p
- 安装插件:INSTALL PLUGIN validate_password SONAME 'validate_password.so';
- 查看密码策略等级:SHOW VARIABLES LIKE 'validate_password%';
- 设置策略(可选):
例如设为强策略:
SET GLOBAL validate_password.policy = HIGH;
要求密码至少12位:
SET GLOBAL validate_password.length = 12;
2. 限制用户权限与远程访问
避免使用root账户远程登录,创建专用账户并限制其权限和访问IP。
建议做法:
- 创建新用户并指定主机:
CREATE USER 'appuser'@'192.168.1.%' IDENTIFIED BY 'StrongPass123!'; - 授予最小必要权限:
GRANT SELECT, INSERT, UPDATE ON mydb.* TO 'appuser'@'192.168.1.%'; - 禁止root远程登录:
确保'root'@'%'不存在,可通过
DELETE FROM mysql.user WHERE User='root' AND Host='%';
并执行FLUSH PRIVILEGES;
3. 启用SSL加密连接
防止数据在传输过程中被窃听,需配置MySQL支持SSL。

MagicStudio

102
图片处理必备效率神器!为你的图片提供神奇魔法

102
查看详情

检查是否支持SSL:
SHOW VARIABLES LIKE '%ssl%';
若have_ssl值为YES,说明已支持。
配置文件修改(my.cnf或my.ini):
- 在[mysqld]部分添加:
ssl-ca=ca.pem
ssl-cert=server-cert.pem
ssl-key=server-key.pem - 重启MySQL服务生效
- 强制用户使用SSL:
ALTER USER 'appuser'@'%' REQUIRE SSL;
4. 开启日志审计(通用日志或审计插件)
记录数据库操作行为,便于追踪异常访问。
启用通用查询日志(仅调试用,生产慎用):
在配置文件中添加:
general_log = 1
general_log_file = /var/log/mysql/general.log
更推荐使用企业级审计插件如MariaDB Audit Plugin或MySQL Enterprise Audit,可精细控制日志内容。
5. 定期更新与漏洞修复
保持MySQL版本更新,及时应用官方发布的安全补丁。
- 关注MySQL官网安全公告
- 升级前备份数据并测试兼容性
- 关闭不必要的功能(如删除test数据库、禁用LOCAL INFILE等)
基本上就这些关键点。合理配置账户、启用加密、限制访问、开启审计,再配合系统层面的防火墙规则,就能构建一个相对安全的MySQL运行环境。




