實(shí)現(xiàn)多個(gè)MySQL數(shù)據(jù)庫實(shí)例管理,用mysqld_multi!
以下的文章主要是向大家介紹的是使用mysqld_multi來對多個(gè)MySQL數(shù)據(jù)庫實(shí)例進(jìn)行管理的實(shí)際操作流程,MySQL數(shù)據(jù)庫是可以多主一從的來進(jìn)行實(shí)時(shí)備份,在google下可以使用mysqld_multi來管理多個(gè)MySQL實(shí)例。
之前有想過在一臺(tái)服務(wù)器上運(yùn)行多個(gè)MySQL實(shí)例就可以實(shí)現(xiàn)一從多主的master-slave方式的實(shí)時(shí)備份,今天剛好看到mysqld-multi就動(dòng)手測試下配置過程如下,
1. 修改mysql的配置文件my.cnf配置mysqld_multi的選項(xiàng)
- [mysqld_multi]
- mysqld = /usr/local/mysql/bin/mysqld_safe
- mysqladmin = /usr/local/mysql/bin/mysqladmin
- user = multi_admin
- password = multipass
- log = /usr/local/mysql/etc/mysqld_multi.log
2. 創(chuàng)建mysqld_multi的config-file
- cat /usr/local/mysql/etc/mysqld_multi.cnf
- [mysqld1]
- socket = /tmp/mysql.sock1
- port = 3306
- pid-file = /usr/local/mysql/var1/localhost.pid
- datadir = /usr/local/mysql/var1
- user = mysql
- [mysqld2]
- socket = /tmp/mysql.sock2
- port = 3307
- pid-file = /usr/local/mysql/var2/localhost.pid
- datadir = /usr/local/mysql/var2
- user = mysql
- [mysqld3]
- socket = /tmp/mysql.sock3
- port = 3308
- pid-file = /usr/local/mysql/var3/localhost.pid
- datadir = /usr/local/mysql/var3
- user = mysql
3. 拷貝mysqld_multi.server(在源代碼的support-files中)腳本到/usr/sbin
- cp /mysql_source/support-files/mysqld_multi.server /usr/sbin
4. 編輯/usr/sbin/mysqld_multi.server(添加–config-file=/usr/local/mysql/etc/mysqld_multi.cnf選項(xiàng))
- 'start' )
- "$mysqld_multi" start $2
- ;;
- 'stop' )
- "$mysqld_multi" --config-file=/usr/local/mysql/etc/mysqld_multi.cnf stop $2
- ;;
- 'report' )
- "$mysqld_multi" --config-file=/usr/local/mysql/etc/mysqld_multi.cnf report $2
5. 啟動(dòng)多個(gè)MySQL數(shù)據(jù)庫實(shí)例
- mysqld_multi.server start
6. 之前在my.cnf設(shè)置的user和password是用來關(guān)閉數(shù)據(jù)庫實(shí)例的,根據(jù)配置中的用戶名和密碼授權(quán)該用戶shutdown權(quán)限
- mysql -u root -S /tmp/mysql.sock1 -p
- mysql> grant shutdown on *.* to multi_admin@'localhost' identified by 'multipass';
7. 關(guān)閉所有數(shù)據(jù)庫實(shí)例
- mysqld_multi.server stop
8. 對單臺(tái)數(shù)據(jù)庫的啟動(dòng)和關(guān)閉
語法:mysqld_multi [options] {start|stop|report} [GNR[,GNR] …]
如對mysqld1的啟動(dòng)和關(guān)閉,可以通過mysqld_multi來操作
啟動(dòng): mysqd_multi start 1
關(guān)閉: mysqd_multi stop 1
也可以同時(shí)啟動(dòng)和關(guān)閉多個(gè)MySQL數(shù)據(jù)庫實(shí)例
啟動(dòng): mysqd_multi start 1-3
關(guān)閉: mysqd_multi stop 1-3
【編輯推薦】