首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

RedHat 7.1 安裝 MySQL 5.7.10 完整圖文教學(二進制包部署)

     編輯:MySQL 資料庫相關知識

本文記錄在 RedHat 7.1 上使用官方二進制包 (.tar.gz) 部署 MySQL 5.7.10 的標準化流程:目錄規劃、解壓部署、用戶權限、數據目錄初始化、SSL 憑證生成、配置檔與啟動腳本部署、服務註冊、密碼修改全過程。

目錄規劃

用途路徑
程式安裝目錄/usr/local/mysql
資料目錄/data/mysql
日誌目錄/data/log/mysql

部署步驟

  1. 下載:MySQL 5.7.10 Linux Generic (glibc 2.5) x86_64
  2. 解壓:tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz
  3. 移動並改名:mv mysql-5.7.10-linux-glibc2.5-x86_64 /usr/local/mysql
  4. 建立資料/日誌目錄並授權:
    mkdir -p /data/mysql /data/log/mysql
    useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql
    chown -R mysql:mysql /usr/local/mysql
    chown -R mysql:mysql /data/mysql
  5. 初始化數據目錄 (5.7 新特性):
    cd /usr/local/mysql
    bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql
    # 輸出會包含臨時 root 密碼,例:h(g+qq)pk6fw  **請務必記錄**
  6. 生成 SSL 憑證:
    bin/mysql_ssl_rsa_setup --datadir=/data/mysql
  7. 部署配置檔與啟動腳本:
    cd support-files
    cp my-default.cnf /etc/my.cnf
    cp mysql.server /etc/init.d/mysql
  8. 修改啟動腳本 /etc/init.d/mysql:設定 basedir=/usr/local/mysql、datadir=/data/mysql。
  9. 修改 /etc/my.cnf 關鍵參數:
    [mysqld]
    basedir=/usr/local/mysql
    datadir=/data/mysql
    port=3306
    socket=/data/mysql/mysql.sock
    log-error=/data/log/mysql/mysql_error.log
    pid-file=/data/mysql/mysqld.pid
    character-set-server=utf8
    innodb_buffer_pool_size=1G  # 視記憶體調整
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  10. 建立日誌檔與 pid 檔:
    touch /data/log/mysql/mysql_error.log
    chown mysql:mysql /data/log/mysql/mysql_error.log
    mkdir -p /usr/local/mysql/data
    touch /usr/local/mysql/data/mysqld_safe.pid
    chown mysql:mysql /usr/local/mysql/data/mysqld_safe.pid
  11. 建立命令軟連結:
    ln -s /usr/local/mysql/bin/mysql /usr/bin/
    ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/
  12. 啟動服務:
    service mysql start
  13. 登入修改密碼:
    mysql -u root -p
    # 輸入步驟 5 記錄的臨時密碼
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'admin';
    # 或 5.7.6+ 語法:SET PASSWORD = 'admin';
    FLUSH PRIVILEGES;

下載頁面 解壓目錄 解壓過程 移動改名 建立資料目錄 授權操作 資料目錄授權 初始化輸出臨時密碼 SSL生成 部署配置腳本 修改啟動腳本 修改my.cnf 建立日誌目錄 建立pid檔 建立軟連結 服務啟動成功 修改密碼成功

關鍵差異提醒 (5.7 vs 5.6)

  • --initialize 會生成隨機臨時密碼並建立 SSL 憑證;5.6 需手動執行 mysql_install_db。
  • 密碼修改語法:5.7.6+ 推薦 ALTER USER 或 SET PASSWORD,PASSWORD() 函數已棄用。
  • sql_mode 預設嚴格模式(ONLY_FULL_GROUP_BY, STRICT_TRANS_TABLES, ...),遷移舊應用可能需調整。

常見問題

啟動失敗:The server quit without updating PID file
檢查 /etc/my.cnf 路徑是否正確、datadir 權限、log-error 目錄是否存在且可寫、SELinux 是否阻擋(setenforce 0 測試)。
連線報錯:Can't connect to local MySQL server through socket
確認 socket 參數在 [mysqld] 和 [client] 區塊一致,或連線時指定 --socket=/data/mysql/mysql.sock。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved