速卖通素材
努力

阿里云1核2G安装mysql?

服务器

在阿里云1核2G的ECS实例上安装MySQL是完全可行的,但需要注意资源限制和配置优化,以确保系统稳定运行。以下是详细步骤和优化建议:


✅ 一、环境准备(以 CentOS 7/8 或 Ubuntu 20.04 为例)

1. 更新系统

# CentOS/RHEL
sudo yum update -y

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

2. 安装 MySQL

方式一:安装 MySQL 官方版本(推荐)

MySQL 8.0 为例(以 CentOS 为例):

# 下载并安装 MySQL Yum 源
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm

# 安装 MySQL 服务器
sudo yum install mysql-server -y

# 启动 MySQL 服务
sudo systemctl start mysqld

# 设置开机自启
sudo systemctl enable mysqld
方式二:使用 MariaDB(轻量替代)
# CentOS
sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb

# Ubuntu
sudo apt install mariadb-server -y

✅ 二、初始化 MySQL 安全设置

sudo mysql_secure_installation

按提示设置 root 密码、移除匿名用户、禁止远程 root 登录等。


✅ 三、登录 MySQL

mysql -u root -p

✅ 四、针对 1核2G 的优化建议

1核2G 的 ECS 属于低配环境,建议对 MySQL 做轻量级配置,避免内存溢出(OOM)。

编辑 MySQL 配置文件:

sudo vim /etc/my.cnf

添加或修改以下内容(适用于 MySQL 8.0 + InnoDB):

[mysqld]
# 基础设置
port = 3306
socket = /var/lib/mysql/mysql.sock
datadir = /var/lib/mysql
skip-name-resolve
skip-external-locking

# 内存优化(关键)
key_buffer_size = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 4
sort_buffer_size = 256K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
join_buffer_size = 256K

# InnoDB 设置(主要内存占用)
innodb_buffer_pool_size = 512M   # 1核2G 可设为 512M ~ 768M,建议不超过 1G
innodb_log_file_size = 64M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_file_per_table = 1

# 连接数控制
max_connections = 100            # 默认151,可适当调低
wait_timeout = 300
interactive_timeout = 300

# 查询缓存(MySQL 8.0 已移除,如用 5.7 可开启)
# query_cache_type = 1
# query_cache_size = 16M

# 日志(可关闭以节省资源)
# log-error = /var/log/mysqld.log
# slow_query_log = 0

⚠️ 注意:innodb_buffer_pool_size 是最大内存占用项,建议设置为 512M ~ 768M,避免系统内存耗尽。


✅ 五、重启 MySQL 生效配置

sudo systemctl restart mysqld

✅ 六、监控资源使用

# 查看内存和 CPU
free -h
top

# 查看 MySQL 进程内存
ps aux | grep mysqld

✅ 七、其他建议

  1. 避免运行其他高负载服务(如 Nginx + PHP + MySQL 全开需谨慎)。
  2. 定期清理日志和无用数据
  3. 使用阿里云 RDS:如果对稳定性要求高,建议使用阿里云 RDS MySQL 基础版(性价比高,托管运维)。
  4. 开启 swap 分区(重要!):
    sudo fallocate -l 1G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
    echo '/swapfile none swap sw 0 0' >> /etc/fstab

✅ 总结

项目 建议
系统 CentOS 7+/Ubuntu 20.04+
MySQL 版本 5.7 或 8.0(或 MariaDB)
innodb_buffer_pool_size 512M ~ 768M
max_connections ≤ 100
是否可行 ✅ 可行,适合轻量级应用、测试、小网站

如你有具体用途(如 WordPress、开发测试等),可进一步优化配置。欢迎补充场景,我可以提供更精准建议。

未经允许不得转载:轻量云Cloud » 阿里云1核2G安装mysql?