傳統做法:多次編譯、多目錄、多啟動腳本,維護極其繁瑣。mysqld_multi 官方工具可用單二進制、共享數據目錄模板,輕鬆管理 N 個實例。
'multi_admin'@'localhost'。cp -r /var/lib/mysql /var/lib/mysql3307chown -R mysql:mysql /var/lib/mysql3307
[mysqld_multi]
mysqld = /usr/bin/mysqld_safe
mysqladmin = /usr/bin/mysqladmin
user = multi_admin
password = strong_password
[mysqld1] # 默認 3306
datadir = /var/lib/mysql
socket = /var/run/mysql/mysql.sock
port = 3306
[mysqld2] # 新實例 3307
datadir = /var/lib/mysql3307
socket = /var/run/mysql/mysql3307.sock
port = 3307
pid-file = /var/lib/mysql3307/mysql3307.pid
GRANT SHUTDOWN ON *.* TO 'multi_admin'@'localhost' IDENTIFIED BY 'strong_password';mysqld_multi --log=/var/log/mysqld_multi.log start 1,2mysqld_multi --log=/var/log/mysqld_multi.log stop 2mysqld_multi reportmysqld。mysqld_multi 要求 [mysqld_multi] 段的 user/password 在每個實例的 mysql.user 表中存在且為 localhost。server-id 必須唯一,防止複製衝突。systemd 管理時建議生成獨立 mysql@3307.service 模板單元,而非直接用 mysqld_multi。作者:sky-鵬