2核2g 怎么安装mysql5.7?

在2核2G的服务器上安装MySQL 5.7是完全可行的,以下是详细步骤:

1. 系统准备

# 更新系统
sudo apt update && sudo apt upgrade -y  # Ubuntu/Debian
# 或
sudo yum update -y  # CentOS/RHEL

# 安装必要工具
sudo apt install wget curl vim -y  # Ubuntu/Debian
# 或
sudo yum install wget curl vim -y  # CentOS/RHEL

2. 安装MySQL 5.7

Ubuntu/Debian:

# 添加MySQL官方仓库
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.23-1_all.deb
sudo dpkg -i mysql-apt-config_*.deb

# 更新包列表
sudo apt update

# 安装MySQL 5.7
sudo apt install mysql-server-5.7 -y

CentOS/RHEL:

# 添加MySQL Yum仓库
sudo rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

# 安装MySQL 5.7
sudo yum install mysql-community-server -y

3. 启动MySQL服务

# 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld

# 检查状态
sudo systemctl status mysqld

4. 获取临时密码并安全配置

# 获取临时密码(Ubuntu/Debian)
sudo grep 'temporary password' /var/log/mysql/error.log

# 获取临时密码(CentOS/RHEL)
sudo grep 'temporary password' /var/log/mysqld.log

# 安全配置向导
sudo mysql_secure_installation

按提示操作:

  • 输入临时密码
  • 设置新密码(强密码策略)
  • 删除匿名用户
  • 禁止root远程登录(生产环境建议)
  • 删除test数据库
  • 重新加载权限表

5. 优化配置(重要!)

编辑配置文件 /etc/mysql/mysql.conf.d/mysqld.cnf (Ubuntu) 或 /etc/my.cnf (CentOS):

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

# 内存优化(适合2G内存)
key_buffer_size = 64M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
sort_buffer_size = 256K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 64M

# InnoDB优化
innodb_buffer_pool_size = 512M  # 物理内存的25-30%
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  # 根据实际需求调整
max_connect_errors = 100
open_files_limit = 65535

# 查询缓存(可选)
query_cache_type = 1
query_cache_size = 64M

重启MySQL:

sudo systemctl restart mysqld

6. 验证安装

# 登录MySQL
mysql -u root -p

# 查看版本
SELECT VERSION();

# 查看内存使用情况
SHOW VARIABLES LIKE 'innodb_buffer_pool_size';
SHOW STATUS LIKE 'Threads_connected';

7. 监控和维护建议

查看资源使用:

# 实时监控
watch -n 1 'mysql -e "SHOW STATUS LIKE "Threads_connected"; SHOW STATUS LIKE "Innodb_buffer_pool_reads";"'

# 系统资源
htop  # 或 top

创建普通用户:

CREATE USER 'appuser'@'localhost' IDENTIFIED BY 'StrongPassword123!';
GRANT SELECT,INSERT,UPDATE,DELETE ON your_database.* TO 'appuser'@'localhost';
FLUSH PRIVILEGES;

注意事项:

  1. 内存限制:2G内存建议 innodb_buffer_pool_size 不超过512M
  2. 连接数max_connections 设置为100-150足够
  3. 定期备份:设置自动备份计划
  4. 监控日志:关注 /var/log/mysql/error.log
  5. 安全加固:禁用远程root登录,使用防火墙限制访问

这样配置后,MySQL 5.7就能在2核2G环境下稳定运行了!