一、多實(shí)例的應(yīng)用場(chǎng)景:
成都創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的拱墅網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!1、資金緊張型公司的選擇
當(dāng)公司業(yè)務(wù)訪問(wèn)量不太大,又舍不得花錢,但同時(shí)又希望不同業(yè)務(wù)的數(shù)據(jù)庫(kù)服務(wù)各自獨(dú)立,而且需要主從同步進(jìn)行等技術(shù)提供備份或讀寫(xiě)分離服務(wù)時(shí),使用多實(shí)例是最好不過(guò)的。
2、并發(fā)訪問(wèn)不是特別大的業(yè)務(wù)
當(dāng)公司業(yè)務(wù)訪問(wèn)量不太大,服務(wù)器資源基本閑置的比較多,這是就很適合多實(shí)例的應(yīng)用。如果對(duì)SQL語(yǔ)句優(yōu)化的好,多實(shí)例是一個(gè)很值得使用的技術(shù)。即使并發(fā)很大,只要合理分配好系統(tǒng)資源,也不會(huì)有太大問(wèn)題。
二、mysql多實(shí)例的原理
mysql多實(shí)例,簡(jiǎn)單的說(shuō),就是在一臺(tái)服務(wù)器上開(kāi)啟多個(gè)不同的mysql服務(wù)端口(如3306,3307),運(yùn)行多個(gè)mysql服務(wù)進(jìn)程。這些服務(wù)進(jìn)程通過(guò)不同的socket監(jiān)聽(tīng)不同的服務(wù)端口,來(lái)提供各自的服務(wù)。
這些mysql實(shí)例共用一套mysql安裝程序,使用不同的my.cnf配置文件、啟動(dòng)程序、數(shù)據(jù)文件。在提供服務(wù)時(shí),mysql多實(shí)例在邏輯上看來(lái)是各自獨(dú)立的,各個(gè)實(shí)例之間根據(jù)配置文件的設(shè)定值,來(lái)取得服務(wù)器的相關(guān)硬件資源。
三、多實(shí)例部署步驟
在這里數(shù)據(jù)庫(kù)的編譯安裝就不贅述了,如有不清楚的,請(qǐng)參考其他文件。
實(shí)驗(yàn)使用的端口:33064,33065
1、創(chuàng)建數(shù)據(jù)目錄
創(chuàng)建數(shù)據(jù)文件存放目錄,并修改文件夾的所屬用戶組
mkdir -p /home/mysqldata/33064
mkdir -p /home/mysqldata/33065
chown mysql.mysql 33064/33065/
2、初始化數(shù)據(jù)庫(kù):
/usr/bin/mysql_install_db\
--datadir=/home/mysqldata/33064/\
--user=mysql
/usr/bin/mysql_install_db\
--datadir=/home/mysqldata/33065/\
--user=mysql
3、配置/etc/my.cnf配置文件
每一個(gè)實(shí)例都有一個(gè)屬于實(shí)例自己的msyqld模塊,模塊中是實(shí)例對(duì)應(yīng)的初始化參數(shù),例如[mysqld33064],[mysqld33065]
[root@model /]# cat /etc/my.cnf
[mysqld_multi]
mysqld=/usr/bin/mysqld_safe
mysqladmin=/usr/bin/mysqladmin
user=mysql
password=mysql
[mysqld33064]
datadir=/home/mysqldata/33064
port=33064
socket=/home/mysqldata/33064/mysql33064.sock
user=mysql
symbolic-links=0
default-storage-engine=INNODB
log-bin = mysql-bin
binlog_format = mixed
expire_logs_days = 7
## utf8
#default-character-set = utf8
#character_set_connection = utf8
#character_set_results = utf8
character-set-server = utf8
collation-server = utf8_general_ci
init_connect = 'SET collation_connection =utf8_general_ci '
init_connect = 'SET NAMES utf8'
server-id = 1
[mysqld33065]
datadir=/home/mysqldata/33065
port=33065
socket=/home/mysqldata/33065/mysql33065.sock
user=mysql
symbolic-links=0
default-storage-engine=INNODB
log-bin = mysql-bin
binlog_format = mixed
expire_logs_days = 7
## utf8
#default-character-set = utf8
#character_set_connection = utf8
#character_set_results = utf8
character-set-server = utf8
collation-server = utf8_general_ci
init_connect = 'SET collation_connection =utf8_general_ci '
init_connect = 'SET NAMES utf8'
server-id = 1
[mysqld_safe]
#log=/var/log/mysqldquery.log
## error log
log-error=/var/log/mysqld.log
#pid-file=/var/run/mysqld/mysqld.pid
4、多實(shí)例的啟動(dòng)和停止
啟動(dòng)的時(shí)候要用mysqld_multi 命令,而不是mysqld命令,命令通過(guò)傳遞不同的端口參數(shù)來(lái)啟動(dòng)對(duì)應(yīng)額數(shù)據(jù)庫(kù)實(shí)例.
/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf start 33064
/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf start 33065
/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf stop 33064
/usr/bin/mysqld_multi --defaults-file=/etc/my.cnf stop 33065
查看數(shù)據(jù)庫(kù)進(jìn)程情況,如果有兩個(gè)數(shù)據(jù)庫(kù)進(jìn)程說(shuō)明數(shù)據(jù)庫(kù)安裝正常,否則失敗,具體原因需要查看log日志來(lái)處理。
[root@model mysql]# ps -ef|grep mysql
root 3990 1 0 11:18 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/home/mysqldata/33065 --port=33065 --socket=/home/mysqldata/33065/mysql33065.sock --user=mysql --symbolic-links=0 --default-storage-engine=INNODB --log-bin=mysql-bin --binlog_format=mixed --expire_logs_days=7 --character-set-server=utf8 --collation-server=utf8_general_ci --init_connect=SET collation_connection = utf8_general_ci --init_connect=SET NAMES utf8 --server-id=1
mysql 4132 3990 0 11:18 pts/0 00:00:01 /usr/libexec/mysqld --basedir=/usr --datadir=/home/mysqldata/33065 --user=mysql --symbolic-links=0 --default-storage-engine=INNODB --log-bin=mysql-bin --binlog_format=mixed --expire_logs_days=7 --character-set-server=utf8 --collation-server=utf8_general_ci --init_connect=SET collation_connection = utf8_general_ci --init_connect=SET NAMES utf8 --server-id=1 --log-error=/var/log/mysqld.log --pid-file=/home/mysqldata/33065/model.pid --socket=/home/mysqldata/33065/mysql33065.sock --port=33065
root 4155 1 0 11:18 pts/0 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/home/mysqldata/33064 --port=33064 --socket=/home/mysqldata/33064/mysql33064.sock --user=mysql --symbolic-links=0 --default-storage-engine=INNODB --log-bin=mysql-bin --binlog_format=mixed --expire_logs_days=7 --character-set-server=utf8 --collation-server=utf8_general_ci --init_connect=SET collation_connection = utf8_general_ci --init_connect=SET NAMES utf8 --server-id=1
mysql 4297 4155 0 11:18 pts/0 00:00:01 /usr/libexec/mysqld --basedir=/usr --datadir=/home/mysqldata/33064 --user=mysql --symbolic-links=0 --default-storage-engine=INNODB --log-bin=mysql-bin --binlog_format=mixed --expire_logs_days=7 --character-set-server=utf8 --collation-server=utf8_general_ci --init_connect=SET collation_connection = utf8_general_ci --init_connect=SET NAMES utf8 --server-id=1 --log-error=/var/log/mysqld.log --pid-file=/home/mysqldata/33064/model.pid --socket=/home/mysqldata/33064/mysql33064.sock --port=33064
5、多實(shí)例的連接登錄
mysql -S /home/mysqldata/33064/mysql33064.sock
mysql -S /home/mysqldata/33065/mysql33065.sock
6、賦權(quán)限
剛安裝好的數(shù)據(jù)庫(kù)root用戶無(wú)localhost登錄權(quán)限,所以需要賦權(quán)限以后才能通過(guò)用戶名和密碼登錄。
mysql -S /home/mysqldata/33064/mysql33064.sock
mysql>grant allon *.* to 'root'@'%' identified by 'root';
mysql>grant allon *.* to 'root'@'localhost' identified by 'root';
mysql> flushprivileges;
7、通過(guò)用戶名和密碼登錄
mysql -uroot -proot -S /home/mysqldata/33064/mysql33064.sock
8、多實(shí)例修改密碼
修改實(shí)例33064的root密碼,使用mysqladmin命令。如下:
mysqladmin -uroot -p password root-S /home/mysqldata/33064/mysql33064.sock
到此我們的mysql多實(shí)例部署就已經(jīng)完成。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
網(wǎng)站標(biāo)題:MYSQL數(shù)據(jù)庫(kù)多實(shí)例的安裝配置mysql_multi啟停實(shí)戰(zhàn)-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://www.rwnh.cn/article4/cspeoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、商城網(wǎng)站、網(wǎng)站內(nèi)鏈、域名注冊(cè)、網(wǎng)站排名、網(wǎng)站營(yíng)銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容