萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

Windows 環境 MySQL 5.7/8.0 手動安裝與配置圖文詳解

下載與解壓

  1. 前往 MySQL 官網 下載 ZIP Archive 版本(如 mysql-8.0.36-winx64.zip)
  2. 解壓至簡單路徑,建議 D:\mysql-8.0(路徑勿含空格、中文)

建立配置檔 my.ini

在解壓目錄建立 my.ini,內容如下(根據記憶體調整):

[mysqld]
# 基礎路徑
basedir=D:/mysql-8.0
datadir=D:/mysql-8.0/data
port=3306

# 字符集
character_set_server=utf8mb4
collation_server=utf8mb4_general_ci

# 連線設定
max_connections=500
wait_timeout=600

# InnoDB 核心參數(假設 8GB 記憶體)
innodb_buffer_pool_size=4G
innodb_log_file_size=512M
innodb_log_files_in_group=3
innodb_flush_log_at_trx_commit=2
innodb_file_per_table=1

# 慢查詢
slow_query_log=1
slow_query_log_file=D:/mysql-8.0/logs/slow.log
long_query_time=1

# 二進制日誌(主從同步需求)
log-bin=D:/mysql-8.0/logs/mysql-bin
server-id=1
binlog_format=ROW
expire_logs_days=7

# 其他
explicit_defaults_for_timestamp=1
default_authentication_plugin=mysql_native_password

初始化資料目錄

# 以管理員身分開啟 CMD,切換至 bin 目錄
cd D:\mysql-8.0\bin
# 初始化(會生成隨機 root 密碼,輸出在錯誤日誌中)
mysqld --initialize --console

重要:記下螢幕顯示的臨時密碼,如 A temporary password is generated for root@localhost: xYz123!@#

安裝為 Windows 服務

# 安裝服務
mysqld --install MySQL80 --defaults-file="D:\mysql-8.0\my.ini"
# 啟動服務
net start MySQL80

首次登入與安全設定

# 使用臨時密碼登入
mysql -u root -p
# 修改密碼(MySQL 8.0 語法)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewStrongPass123!';
FLUSH PRIVILEGES;

# 執行安全腳本(可選)
mysql_secure_installation

驗證安裝

# 測試連線
mysql -u root -p -e "SELECT VERSION(); SHOW DATABASES;"
# 檢查字符集
mysql -u root -p -e "SHOW VARIABLES LIKE 'character_set%';"

常見問題排查

現象原因解決
服務啟動失敗 datadir 權限、my.ini 路徑錯誤、端口被佔用 檢查錯誤日誌 .err,確保 data 目錄可寫入
中文亂碼 字符集不一致 統一設定 utf8mb4,連線端執行 SET NAMES utf8mb4
無法遠端連線 防火牆、bind-address、用戶 host 限制 開放 3306,建立 'user'@'%',重啟服務

進階:多版本共存

不同版本安裝至不同目錄,使用不同端口(3306, 3307...)與服務名,各自擁有獨立 my.ini 與 data 目錄。

總結

手動安裝 MySQL 具備完全可控性,適合開發測試與特殊部署需求。關鍵在於:正確規劃目錄結構、精心調整 my.ini 核心參數、妥善管理 root 密碼與權限。生產環境建議使用官方安裝包或容器化部署以獲得更好維護性。

copyright © 萬盛學電腦網 all rights reserved