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

Windows 安裝多實例 MySQL 實戰:4.0.18 與 5.5.36 共存指南

     編輯:MySQL 綜合教學

Windows 安裝多實例 MySQL 實戰:4.0.18 與 5.5.36 共存指南

因舊專案鎖定 MySQL 4.0(latin1、MyISAM),新專案用 5.5(utf8、InnoDB),編碼、引擎、參數均不兼容,無奈在同一台 Windows Server 上部署雙實例。本文記錄無坑安裝全過程。

核心原則

  • 目錄隔離:各實例獨立安裝目錄、數據目錄、配置文件。
  • 端口隔離:預設 3306 給主力版本,舊版本改用 3307(或其他未佔用端口)。
  • 服務名隔離:Windows 服務名唯一,避免衝突。

安裝步驟

1. 安裝新版主力實例(5.5.36)

按預設一路「下一步」,安裝至 D:\mysql5.5.36\,服務名 MySQL,端口 3306。完成後驗證服務運行正常。

2. 安裝舊版實例(4.0.18)

同樣一路「下一步」,但修改安裝目錄 為 D:\mysql4.0.18\。安裝完成後不要啟動服務,先配置。

3. 配置 4.0.18 實例 my.ini

進入 D:\mysql4.0.18\,複製 my-medium.cnf 重命名為 my.ini,修改三處:

[client]
# password=my_password
port=3307                    # 避開 3306
default-character-set=utf8   # 按專案需求

[mysqld]
port=3307
# character-set-server=utf8  # 按需啟用

# basedir / datadir 指向具體目錄
basedir = d:/mysql4.0.18/
datadir = d:/mysql4.0.18/data/

關鍵:basedir/datadir 必須用正斜槓 / 或雙反斜槓 \\,且指向該實例專屬目錄。

4. 註冊 Windows 服務

cd /d D:\mysql4.0.18\bin
mysqld --install mysql4.0.18 --defaults-file="D:\mysql4.0.18\my.ini"

成功提示 Service Successfully installed.,任務管理器 → 服務 可見 mysql4.0.18。

5. 初始化 Root 密碼

mysql -u root -P 3307
-- 進入 mysql> 提示符後
USE mysql;
UPDATE user SET password=PASSWORD('你的密碼') WHERE user='root';
FLUSH PRIVILEGES;
QUIT;

服務管理速查

操作5.5.36 (預設服務名 MySQL)4.0.18 (服務名 mysql4.0.18)
啟動net start mysqlnet start mysql4.0.18
停止net stop mysqlnet stop mysql4.0.18
GUI任務管理器 → 服務 → 右鍵啟動/停止同左

驗證共存

# 終端 1
mysql -u root -p -P 3306 -e "SELECT VERSION();"  -- 5.5.36

# 終端 2
mysql -u root -p -P 3307 -e "SELECT VERSION();"  -- 4.0.18

兩端口同時響應、版本正確、數據目錄隔離,即部署成功。

常見坑與避坑

  • 端口衝突:安裝前用 netstat -ano | findstr 3306 檢查佔用。
  • 配置文件未生效:mysqld --install 必須指定 --defaults-file 絕對路徑,否則讀取預設 C:\Windows\my.ini。
  • 數據目錄權限:datadir 目錄需給運行服務的用戶(通常是 SYSTEM 或專用賬號)完整權限。
  • 防火牆:入站規則放行 3306、3307 TCP。

總結

Windows 多實例核心在於「三隔離」:目錄、端口、服務名。4.0 年代配置文件為 .cnf、無 mysql_install_db、密碼初始化方式不同,細節處理得當即可穩定共存。生產環境建議遷移舊專案至新版本,或使用 Docker/虛擬機進一步隔離。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved