在Ubuntu云服务器上安装MySQL时,需要注意以下关键问题:
一、安装前的准备
- 系统更新:先执行
sudo apt update && sudo apt upgrade - 防火墙配置:确保3306端口开放
sudo ufw allow 3306/tcp sudo ufw enable - 云安全组/防火墙:在云控制台开放3306端口(重要!)
二、安装方式选择
- APT安装(推荐新手):
sudo apt install mysql-server - 官方仓库安装(获取最新版本):
wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb sudo dpkg -i mysql-apt-config_*.deb
三、安全配置要点
-
运行安全脚本:
sudo mysql_secure_installation重要选项:
- 设置root密码强度
- 移除匿名用户
- 禁止远程root登录
- 移除测试数据库
-
修改默认端口(可选但推荐):
# 编辑 /etc/mysql/mysql.conf.d/mysqld.cnf port = 3307
四、远程访问配置
- 修改绑定地址:
# 编辑 /etc/mysql/mysql.conf.d/mysqld.cnf bind-address = 0.0.0.0 # 或服务器公网IP - 创建远程用户:
CREATE USER 'username'@'%' IDENTIFIED BY '强密码'; GRANT ALL PRIVILEGES ON database.* TO 'username'@'%'; FLUSH PRIVILEGES;
五、性能优化
- 调整内存配置(根据服务器内存):
# /etc/mysql/my.cnf innodb_buffer_pool_size = 1G # 建议为内存的50-70% max_connections = 100 - 启用查询缓存(小规模应用):
query_cache_type = 1 query_cache_size = 64M
六、备份与监控
- 自动备份设置:
# 使用mysqldump创建cron任务 0 2 * * * mysqldump -u root -p密码 数据库 > /backup/db_$(date +%Y%m%d).sql - 启用慢查询日志:
slow_query_log = 1 slow_query_log_file = /var/log/mysql/slow.log long_query_time = 2
七、常见问题解决
-
无法远程连接:
- 检查防火墙和安全组
- 确认用户权限和绑定地址
- 查看错误日志:
sudo tail -f /var/log/mysql/error.log
-
内存不足:
- 调整InnoDB缓冲池大小
- 考虑使用云数据库服务
-
忘记root密码:
sudo systemctl stop mysql sudo mysqld_safe --skip-grant-tables & mysql -u root # 执行密码重置命令
八、安全建议
- 定期更新MySQL和系统补丁
- 使用SSL加密连接
- 限制访问IP范围
- 启用审计日志(企业版)
- 考虑使用云平台托管数据库服务(如RDS)
九、安装后检查清单
- [ ] MySQL服务运行状态:
sudo systemctl status mysql - [ ] 本地连接测试:
mysql -u root -p - [ ] 远程连接测试(从其他机器)
- [ ] 备份脚本测试
- [ ] 监控设置完成
根据你的具体使用场景(开发测试/生产环境),配置重点会有所不同。生产环境务必加强安全设置和备份策略。
CLOUD技术笔记