MySQL 5.7 引入 --initialize 替代 mysql_install_db、自動生成 SSL 憑證、內置 sys 效能監控庫。本文記錄 CentOS 6.7 + 5.7.12 完整安裝步驟與關鍵變化。
mysql-5.7.12-linux-glibc2.5-x86_64.tar.gzdev.mysql.com/downloads/mysql/ → Linux Generic
# 1. 用戶組
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
# 2. 解壓
cd /package
tar zxvf mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.12-linux-glibc2.5-x86_64 mysql
# 3. 目錄與權限
mkdir data
chown -R mysql:mysql .
# 4. 初始化(5.7.6+ 新方式)
bin/mysqld --initialize --user=mysql \
--basedir=/package/mysql \
--datadir=/package/mysql/data \
--innodb_undo_tablespaces=3
# 5. SSL 憑證生成
bin/mysql_ssl_rsa_setup
# 6. 服務腳本
cp support-files/mysql.server /etc/init.d/mysql
# 7. 首次啟動(跳過授權表改密)
bin/mysqld_safe --skip-grant-tables --skip-networking &
# 8. 修改 root 密碼(5.7 字段變 authentication_string)
mysql -uroot
UPDATE mysql.user SET authentication_string=PASSWORD('root') WHERE user='root';
FLUSH PRIVILEGES;
-- 首次登錄需再改一次
SET PASSWORD=PASSWORD('root');
| 項目 | 5.6 | 5.7 |
|---|---|---|
| 初始化 | mysql_install_db | mysqld --initialize |
| 密碼欄位 | password | authentication_string |
| SSL | 手動配置 | 自動 mysql_ssl_rsa_setup 生成 *.pem |
| sys庫 | 無 | 內置效能監控視圖(IO、Memory、Wait、Lock、Statement) |
| 數據目錄 | 基礎文件 | 新增 *.pem、sys庫、binlog 索引文件 |
數據目錄對比:

--force 強制初始化或修正 /etc/hostsshare/english/errmsg.sys 到 datadir/share/SET PASSWORD--ssl-mode=DISABLED 或配置 CA