阿里云轻量应用服务器2G2核配置安装MySQL8.0?

服务器

在阿里云轻量应用服务器(2核2GB内存)上安装 MySQL 8.0 是完全可行的,但需要注意内存资源有限,需合理配置以避免性能问题或服务崩溃。以下是详细的操作步骤:


✅ 一、准备工作

  1. 登录服务器
    使用 SSH 登录你的轻量应用服务器:

    ssh root@your_server_ip
  2. 更新系统包

    sudo apt update && sudo apt upgrade -y

✅ 二、安装 MySQL 8.0

方法一:使用官方 APT 源(推荐)

  1. 下载并添加 MySQL APT 源

    wget https://dev.mysql.com/get/mysql-apt-config_0.8.24-1_all.deb
    sudo dpkg -i mysql-apt-config_0.8.24-1_all.deb

    安装过程中会弹出配置界面,选择 MySQL Server & Cluster → 选择 mysql-8.0,然后确认 OK。

  2. 更新软件包列表

    sudo apt update
  3. 安装 MySQL 服务器

    sudo apt install mysql-server -y
  4. 启动并设置开机自启

    sudo systemctl start mysql
    sudo systemctl enable mysql

✅ 三、安全初始化配置

运行安全脚本,设置 root 密码、移除匿名用户等:

sudo mysql_secure_installation

按提示操作:

  • 设置强密码
  • 移除匿名用户
  • 禁止 root 远程登录(建议)
  • 移除测试数据库
  • 重新加载权限

⚠️ 注意:MySQL 8.0 默认使用 caching_sha2_password 认证插件,部分旧客户端可能不兼容。如需兼容可手动修改(见下方说明)。


✅ 四、(可选)优化配置以适应 2GB 内存

默认配置对 2GB 内存偏高,建议调整 my.cnf 以减少内存占用。

编辑配置文件:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

修改或添加以下内容:

[mysqld]
# 基础设置
port = 3306
bind-address = 127.0.0.1    # 仅本地访问,更安全

# 内存相关(关键!)
key_buffer_size = 16M
max_allowed_packet = 64M
thread_stack = 192K
thread_cache_size = 8
tmp_table_size = 32M
max_heap_table_size = 32M

# InnoDB 设置(重点)
innodb_buffer_pool_size = 512M   # 建议:512M~1G,不要超过 1G
innodb_log_file_size = 128M
innodb_log_buffer_size = 16M
innodb_flush_log_at_trx_commit = 2
innodb_file_per_table = 1

# 连接数
max_connections = 100

💡 说明:innodb_buffer_pool_size 是最大内存占用项,建议设置为 512M~768M,保留内存给系统和其他进程。

保存后重启 MySQL:

sudo systemctl restart mysql

✅ 五、创建远程访问用户(可选)

如需从外部连接(如本地 Navicat):

  1. 登录 MySQL:

    sudo mysql -u root -p
  2. 创建用户并授权:

    CREATE USER 'admin'@'%' IDENTIFIED BY 'YourStrongPassword';
    GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%';
    FLUSH PRIVILEGES;
  3. 修改绑定地址(如需远程访问):
    编辑 /etc/mysql/mysql.conf.d/mysqld.cnf,将:

    bind-address = 127.0.0.1

    改为:

    bind-address = 0.0.0.0
  4. 务必在阿里云控制台轻量应用服务器防火墙中开放 3306 端口


✅ 六、常见问题处理

1. 安装时报错或卡住?

  • 检查网络是否正常,尝试更换 DNS(如 echo "nameserver 8.8.8.8" >> /etc/resolv.conf
  • 清理缓存:sudo apt clean && sudo apt autoclean

2. 启动失败?查看日志:

sudo journalctl -u mysql.service --no-pager -n 50

3. 认证插件不兼容?

如果客户端报错 Authentication plugin 'caching_sha2_password' cannot be loaded

进入 MySQL 修改用户认证方式:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';
FLUSH PRIVILEGES;

✅ 七、监控资源使用

定期检查内存使用情况:

free -h
top

避免 MySQL 占用过多内存导致 OOM。


✅ 总结

项目 建议
服务器配置 2核2GB,适合轻量级应用
MySQL 版本 8.0(功能强,但需调优)
内存优化 innodb_buffer_pool_size=512M
安全 开启防火墙、限制远程访问、强密码
备份 定期使用 mysqldump 备份数据

如有进一步需求(如部署 WordPress、配置主从复制等),可继续提问!

未经允许不得转载:CDNK博客 » 阿里云轻量应用服务器2G2核配置安装MySQL8.0?