首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

MySQL 5.6 二進制包安裝標準化流程總結

     編輯:MySQL 綜合教學

MySQL 5.6 二進制包安裝標準化流程總結

生產環境推薦使用官方編譯優化的二進制包(Generic Linux Glibc 2.5 x86_64),避免源碼編譯風險,利用社區成熟經驗快速落地。本文記錄標準化安裝步驟:用戶創建、目錄規劃、配置文件、數據初始化、服務管理。

一、下載與準備

  • 官網:MySQL 5.6 Downloads
  • 選擇:Linux - Generic (glibc 2.5) (x86, 64-bit), Compressed TAR Archive
  • 文件:mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz
  • 上傳至服務器 /root 或 /opt/src

二、創建運行用戶

groupadd mysql
useradd -r -g mysql -s /sbin/nologin -M mysql
# -r: 系統用戶,無登錄shell,UID < 1000

三、目錄規劃與解壓

# 1. 解壓至 /opt/mysql
tar -xzf mysql-5.6.27-linux-glibc2.5-x86_64.tar.gz -C /opt/mysql

# 2. 創建軟鏈接(便於版本切換)
cd /usr/local
ln -s /opt/mysql/mysql-5.6.27-linux-glibc2.5-x86_64 mysql

# 3. 賦權
chown -R mysql:mysql /usr/local/mysql
chown -R mysql:mysql /opt/mysql/mysql-5.6.27-linux-glibc2.5-x86_64

四、數據目錄規劃

mkdir -p /data/mysql/{data,logs,tmp}
chown -R mysql:mysql /data/mysql
# data: 數據文件
# logs: Binlog、錯誤日志、慢查詢日志
# tmp: 臨時文件、排序文件

五、配置文件 my.cnf

創建 /etc/my.cnf(或 /usr/local/mysql/my.cnf),核心配置:

[client]
port = 3306
socket = /data/mysql/tmp/mysql.sock
default-character-set = utf8mb4

[mysqld]
user = mysql
port = 3306
socket = /data/mysql/tmp/mysql.sock
basedir = /usr/local/mysql
datadir = /data/mysql/data
tmpdir = /data/mysql/tmp
pid-file = /data/mysql/tmp/mysqld.pid

character-set-server = utf8mb4
collation-server = utf8mb4_general_ci

# 日志
log-error = /data/mysql/logs/error.log
slow-query-log = 1
slow-query-log-file = /data/mysql/logs/slow.log
long-query-time = 2
log-bin = /data/mysql/logs/binlog
binlog-format = ROW
expire-logs-days = 7
server-id = 1

# InnoDB 核心
innodb_buffer_pool_size = 4G      # 物理內存 50-70%
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = 1
innodb_read_io_threads = 8
innodb_write_io_threads = 8

# 連接與緩存
max_connections = 2000
open_files_limit = 65535
table_open_cache = 4000
query_cache_type = 0
query_cache_size = 0

# 安全
skip-name-resolve
explicit_defaults_for_timestamp = 1

sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

關鍵參數:explicit_defaults_for_timestamp=1 解決 5.6+ TIMESTAMP 默認值警告;skip-name-resolve 禁用 DNS 反解,提升連接速度。

六、初始化數據目錄

cd /usr/local/mysql
./scripts/mysql_install_db --defaults-file=/etc/my.cnf --user=mysql
# 輸出兩個 "OK" 表示成功:
# Installing MySQL system tables... OK
# Filling help tables... OK

七、啟動驗證

# 1. 啟動服務(前台調試)
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &

# 2. 登錄測試
/usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/tmp/mysql.sock
# 初始密碼為空,直接回車

# 3. 修改 root 密碼
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'StrongPass123!';
mysql> FLUSH PRIVILEGES;

# 4. 測試連接
/usr/local/mysql/bin/mysql -uroot -p'StrongPass123!' -S /data/mysql/tmp/mysql.sock -e "SELECT VERSION();"

八、系統服務註冊

# 複製啟動腳本
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld

# 加入服務管理
chkconfig --add mysqld
chkconfig mysqld on

# 測試
service mysqld start
service mysqld stop
service mysqld restart

九、安裝後驗證清單

十、總結

二進制包安裝核心優勢:**官方編譯優化、依賴少、社區驗證度高、易遷移升級**。標準化流程關鍵點:

  1. 專用用戶、獨立數據目錄、分離日志
  2. my.cnf 參數按硬件資源調優(特別是 innodb_buffer_pool_size)
  3. mysql_install_db 初始化指定 --defaults-file 與 --user
  4. 註冊 System V 服務,實現開機自啟、統一管理

此流程經過多個生產項目驗證,可作為團隊標準化交付 SOP。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
項目命令/檢查預期
進程存在ps -ef | grep mysqldmysqld 進程運行
端口監聽netstat -ntlp | grep 3306LISTEN 0.0.0.0:3306
Socket文件ls -l /data/mysql/tmp/mysql.sock存在,屬主 mysql
登錄成功mysql -uroot -p -S /data/mysql/tmp/mysql.sock進入交互界面
系統庫完整SHOW DATABASES;mysql, performance_schema, information_schema, sys
字符集正確SHOW VARIABLES LIKE 'character_set%';均為 utf8mb4
InnoDB就緒SHOW ENGINES;InnoDB DEFAULT
Binlog開啟SHOW VARIABLES LIKE 'log_bin';ON