您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關(guān)MYSQL中怎么實(shí)現(xiàn)主從復(fù)制和讀寫分離,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
在master,slave1,slave2上分別安裝MySQL
[root@master1 ~]# mkdir /abc ##創(chuàng)建掛載點(diǎn) [root@master1 ~]# mount.cifs //192.168.100.1/LNMP-C7 /abc/ ##遠(yuǎn)程掛載 Password for root@//192.168.100.1/LNMP-C7: [root@master1 ~]# cd /abc/ [root@master1 abc]# ls mysql-5.5.24 [root@master1 abc]# tar zxvf mysql-5.5.24.tar.gz -C /opt/ ##解壓 [root@master1 opt]# yum install -y \ > gcc gcc-c++ \ > ncurses \ > ncurese-devel \ ##控制終端屏幕顯示的庫(kù) > bison \ ##語(yǔ)法分析 > make > cmake ##cmake工具 > libaio-devel ##系統(tǒng)調(diào)用來(lái)實(shí)現(xiàn)異步IO [root@slave1 opt]# useradd -s /sbin/nologin mysql ##添加不可登錄的mysql用戶 [root@slave1 opt]# cd /opt/mysql-5.5.24/ [root@slave1 mysql-5.5.24]# mkdir /usr/local/mysql ##創(chuàng)建安裝目錄 [root@slave1 mysql-5.5.24]# cmake \ ##配置 > -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ ##安裝路徑 > -DMYSQL_UNIX_ADDR=/home/mysql/mysql.sock \ ##sock文件路徑 > -DDEFAULT_CHARSET=utf8 \ ##字符集 > -DDEFAULT_COLLATION=utf8_general_ci \ > -DWITH_EXTRA_CHARSETS=all \ > -DWITH_MYISAM_STORAGE_ENGINE=1 \ ##存儲(chǔ)引擎 > -DWITH_INNOBASE_STORAGE_ENGINE=1 \ > -DWITH_MEMORY_STORAGE_ENGINE=1 \ > -DWITH_READLINE=1 \ > -DENABLED_LOCAL_INFILE=1 \ > -DMYSQL_DATADIR=/home/mysql \ ##數(shù)據(jù)文件路徑 > -DMYSQL_USER=mysql \ ##用戶 > -DMYSQL_TCP_PORT=3306 ##端口 [root@slave1 mysql-5.5.24]# make && make install ##編譯及安裝 [root@master1 mysql-5.5.24]# chown -R mysql.mysql /usr/local/mysql ##設(shè)置mysql屬主屬組 [root@master1 mysql-5.5.24]# vim /etc/profile ##配置環(huán)境變量便于系統(tǒng)識(shí)別 export PATH=$PATH:/usr/local/mysql/bin/ [root@master1 mysql-5.5.24]# source /etc/profile ##刷新配置文件 [root@master1 mysql-5.5.24]# cp support-files/my-medium.cnf /etc/my.cnf ##主配置文件 cp:是否覆蓋"/etc/my.cnf"? yes [root@master1 mysql-5.5.24]# cp support-files/mysql.server /etc/init.d/mysqld ##啟動(dòng)文件 [root@master1 mysql-5.5.24]# chmod 755 /etc/init.d/mysqld ##設(shè)置權(quán)限 [root@master1 mysql-5.5.24]# chkconfig --add /etc/init.d/mysqld ##添加到service管理中 [root@master1 mysql-5.5.24]# chkconfig mysqld --level 35 on ##開機(jī)自啟動(dòng) [root@master1 mysql-5.5.24]# /usr/local/mysql/scripts/mysql_install_db \ ##初始化數(shù)據(jù)庫(kù) > --user=mysql \ > --ldata=/var/lib/mysql \ > --basedir=/usr/local/mysql \ > --datadir=/home/mysql [root@master1 mysql-5.5.24]# vim /etc/init.d/mysqld ##編輯啟動(dòng)腳本文件 basedir=/usr/local/mysql ##找到此處添加路徑 datadir=/home/mysql [root@master1 mysql-5.5.24]# service mysqld start ##啟動(dòng)MySQL Starting MySQL.. SUCCESS! [root@master1 mysql-5.5.24]# mysqladmin -u root password 'abc123' ##設(shè)置密碼
11,修改amoeba服務(wù)器配置文件
[root@amoeba conf]# vim amoeba.xml ##修改主配置文件 #第30行 <property name="user">amoeba</property> ##從服務(wù)器同步主服務(wù)器的用戶密碼 #第32行 <property name="password">123456</property> #第117行去掉注釋 <property name="defaultPool">master</property> <property name="writePool">master</property> <property name="readPool">slaves</property> [root@amoeba conf]# vim conf/dbServers.xml ##配置數(shù)據(jù)庫(kù)配置文件 #第26 至29行去掉注釋 <property name="user">test</property> <property name="password">123.com</property> #第42行添加主服務(wù)器地址 <dbServer name="master" parent="abstractServer"> <property name="ipAddress">192.168.142.151</property> 第52行添加從服務(wù)器slave1地址 <dbServer name="slave1" parent="abstractServer"> <property name="ipAddress">192.168.142.163</property> ##復(fù)制6行添加服務(wù)器slave2地址 <dbServer name="slave2" parent="abstractServer"> <property name="ipAddress">192.168.142.145</property> #第65行授權(quán)同步 <dbServer name="slaves" virtual="true"> <poolConfig class="com.meidusa.amoeba.server.MultipleServerPool"> #末行添加從服務(wù)器名稱 <property name="poolNames">slave1,slave2</property> </poolConfig> [root@amoeba conf]# /usr/local/amoeba/bin/amoeba start& ##開啟amoeba服務(wù) [root@amoeba ~]# netstat -anpt | grep java ##開啟另一個(gè)終端查看開啟情況 tcp6 0 0 127.0.0.1:26268 :::* LISTEN 40925/java tcp6 0 0 :::8066 :::* LISTEN 40925/java tcp6 0 0 192.168.142.160:34090 192.168.142.151:3306 ESTABLISHED 40925/java tcp6 0 0 192.168.142.160:33866 192.168.142.145:3306 ESTABLISHED 40925/java tcp6 0 0 192.168.142.160:55984 192.168.142.163:3306 ESTABLISHED 40925/java
看完上述內(nèi)容,你們對(duì)MYSQL中怎么實(shí)現(xiàn)主從復(fù)制和讀寫分離有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝大家的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。