mysql安装完成后需要做哪些配置_mysql基础配置清单

1次阅读

mysql安装后须完成安全与性能配置:修改root密码并禁用匿名用户、限制root远程访问并创建专用管理账号、启用密码策略、配置my.cnf关键参数(字符集、日志、连接数等)、运行mysql_secure_installation加固。

mysql安装完成后需要做哪些配置_mysql基础配置清单

mysql安装完成后,不能直接投入生产使用,需完成基础安全与性能配置。核心是修改默认设置、加固访问控制、调整关键参数,避免常见风险(如空密码、远程无限制访问、日志缺失等)。

修改root密码并禁用匿名用户

安装后root可能无密码或允许空密码登录,必须立即设置强密码,并清理安全隐患:

  • 启动MySQL服务后,用mysql -u root -p登录(若无需密码,可先用sudo mysqld_safe –skip-grant-tables &临时跳过验证,再更新密码)
  • 执行:ALTER USER ‘root’@’localhost’ IDENTIFIED WITH mysql_native_password BY ‘YourStrongPass123!’;
  • 删除匿名用户:delete FROM mysql.user WHERE User=”;
  • 刷新权限:FLUSH PRIVILEGES;

限制root远程访问,创建专用管理账号

root账号不应开放远程登录,应单独创建带限制的管理用户:

  • 禁止root远程登录:DELETE FROM mysql.user WHERE User=’root’ AND Host!=’localhost’;
  • 新建管理员账号(仅限内网IP):CREATE USER ‘admin’@’192.168.1.%’ IDENTIFIED BY ‘AdminPass456!’;
  • 赋予必要权限(避免GRANT ALL):GRANT select, INSERT, UPDATE, DELETE, PROCESS, REPLICATION CLIENT ON *.* TO ‘admin’@’192.168.1.%’;
  • 启用密码策略(可选但推荐):INSTALL PLUGIN validate_password SONAME ‘validate_password.so’;

配置my.cnf关键参数(linux下通常为/etc/my.cnf或/etc/mysql/my.cnf)

基础运行稳定性依赖合理配置,重点关注字符集、日志、连接与内存:

  • [client]:添加default-character-set = utf8mb4
  • [mysqld]
    • character-set-server = utf8mb4(统一字符集,支持emoji)
    • collation-server = utf8mb4_unicode_ci
    • bind-address = 127.0.0.1(默认仅本地监听;如需内网访问,改为192.168.1.0/24对应网段IP)
    • max_connections = 200(根据服务器内存调整,初始建议100–300)
    • log-Error = /var/log/mysql/error.log(确保错误日志路径存在且MySQL有写入权限)
    • slow_query_log = ONslow_query_log_file = /var/log/mysql/slow.loglong_query_time = 2(开启慢查询日志,便于后续优化)
    • sql_mode = STRICT_TRANS_TABLES,NO_ZERO_DATE,NO_ZERO_IN_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION(启用严格模式,避免隐式转换问题)
  • 修改后重启服务:sudo systemctl restart mysql(或mysqld

初始化数据库安全加固(mysql_secure_installation)

官方提供的交互式脚本,快速完成多项基础加固:

  • 运行sudo mysql_secure_installation
  • 按提示操作:设置root密码强度、删除匿名用户、禁止root远程登录、删除test库、重载权限表
  • 即使已手动配置,也建议运行一次确保无遗漏(尤其在新装环境中)
text=ZqhQzanResources