方法一:通过官方仓库安装(推荐)
1. Ubuntu/Debian
bash
bash
复制
# 1. 下载官方 MySQL APT 仓库
wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb
# 如果无法访问,使用国内镜像:
# wget https://mirrors.tuna.tsinghua.edu.cn/mysql/apt/ubuntu/pool/mysql-8.0/m/mysql-apt-config/mysql-apt-config_0.8.29-1_all.deb
# 2. 安装仓库配置
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb
# 在出现的界面中选择 MySQL 8.0 版本,按确定
# 3. 更新包列表
sudo apt update
# 4. 安装 MySQL Server
sudo apt install mysql-server
# 5. 安全配置
sudo mysql_secure_installation
2. CentOS/RHEL/Fedora
bash
bash
复制
# 1. 下载 MySQL YUM 仓库
sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
# 2. 导入 GPG 密钥
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2023
# 3. 安装 MySQL
sudo yum install mysql-community-server
# 4. 启动服务
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 5. 获取临时密码
sudo grep 'temporary password' /var/log/mysqld.log
# 6. 安全配置
sudo mysql_secure_installation
方法二:通过包管理器安装(简单但可能不是最新)
Ubuntu/Debian:
bash
bash
复制
# Ubuntu 22.04+ 默认仓库包含 MySQL 8.0
sudo apt update
sudo apt install mysql-server
CentOS 8/RHEL 8:
bash
bash
复制
# 启用 MySQL 8 模块
sudo dnf module disable mysql
sudo dnf module enable mysql:8.0
sudo dnf install mysql-community-server
方法三:二进制包安装(手动安装最新版)
1. 下载二进制包
bash
bash
复制
# 从官网下载
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.36-linux-glibc2.17-x86_64.tar.xz
# 国内镜像(华为云)
# wget https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-8.0/mysql-8.0.36-linux-glibc2.17-x86_64.tar.xz
2. 解压安装
bash
bash
复制
# 解压
tar -xf mysql-8.0.36-linux-glibc2.17-x86_64.tar.xz
sudo mv mysql-8.0.36-linux-glibc2.17-x86_64 /usr/local/mysql
# 创建用户和组
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
# 创建数据目录
sudo mkdir -p /usr/local/mysql/data
sudo chown -R mysql:mysql /usr/local/mysql
3. 初始化
bash
bash
复制
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql
# 保存显示的临时密码
sudo bin/mysql_ssl_rsa_setup
方法四:使用 Docker(最方便)
1. 快速启动
bash
bash
复制
# 拉取 MySQL 8 镜像
docker pull mysql:8.0
# 运行容器
docker run -d \
--name mysql8 \
-e MYSQL_ROOT_PASSWORD=your_password \
-p 3306:3306 \
-v mysql_data:/var/lib/mysql \
mysql:8.0 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci
2. 带配置文件的 Docker
bash
bash
复制
# 创建配置文件目录
mkdir -p ~/mysql/conf ~/mysql/data
# 创建配置文件 ~/mysql/conf/my.cnf
cat > ~/mysql/conf/my.cnf << 'EOF'
[mysqld]
character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci default-authentication-plugin=mysql_native_password
[client]
default-character-set=utf8mb4 EOF # 运行容器 docker run -d \ –name mysql8 \ -e MYSQL_ROOT_PASSWORD=123456 \ -v ~/mysql/conf:/etc/mysql/conf.d \ -v ~/mysql/data:/var/lib/mysql \ -p 3306:3306 \ mysql:8.0