MySQL 5.7

使用 Docker 容器运行,数据持久化,配置内存限制。

🐳

Docker 方式(推荐)

# 创建数据目录
sudo mkdir -p /app/mysql57/{data,conf,log}

# 自定义配置文件(限制内存、关闭performance_schema等)
cat <<EOF | sudo tee /app/mysql57/conf/my.cnf
[mysqld]
innodb_buffer_pool_size = 64M
performance_schema = OFF
max_connections = 500
lower_case_table_names = 1
EOF

# 运行容器(密码设为 XXX)
docker run -d \
  --name mysql57 \
  --restart=always \
  -p 3306:3306 \
  -v /app/mysql57/data:/var/lib/mysql \
  -v /app/mysql57/conf:/etc/mysql/conf.d \
  -v /app/mysql57/log:/var/log/mysql \
  -e MYSQL_ROOT_PASSWORD='XXX' \
  -e TZ=Asia/Shanghai \
  mysql:5.7 \
  --character-set-server=utf8mb4 \
  --collation-server=utf8mb4_unicode_ci
📦

原生安装(CentOS/Ubuntu)

# CentOS 8
sudo yum install -y https://repo.mysql.com/mysql57-community-release-el8-11.noarch.rpm
sudo yum install -y mysql-community-server
sudo systemctl enable --now mysqld

# Ubuntu 20.04
wget https://dev.mysql.com/get/mysql-apt-config_0.8.22-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.22-1_all.deb
# 选择 MySQL 5.7
sudo apt update
sudo apt install -y mysql-server

# 获取临时密码并修改
sudo grep 'temporary password' /var/log/mysqld.log
mysql_secure_installation

🔐 安全建议:为 root 设置强密码(不要使用示例中的 XXX),创建应用专用账户并限制权限。