新聞中心
mysql主從庫與讀寫分離
一.mysql主從庫與讀寫分離的實(shí)現(xiàn)理論
目前創(chuàng)新互聯(lián)已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、成都網(wǎng)站托管、企業(yè)網(wǎng)站設(shè)計(jì)、雷山網(wǎng)站維護(hù)等服務(wù),公司將堅(jiān)持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
二.mysql配置
1.準(zhǔn)備兩臺(tái)服務(wù)器安裝mysql(也可以在一臺(tái)中裝兩個(gè)mysql修改端口號(hào)避免沖突)
2.分別連接mysql
3.配置mysql
1.配置主庫 monster
打開binary log
2.配置從庫
主庫授權(quán)
賬號(hào)repl后面的是從庫的ip地址 mysql是賬號(hào)repl的密碼
刷新
后面master_log_pos=0 表示從零開始同步 master_log_file 是上面SHOW MASTER STATUS 下面的file文件
在從庫中開啟主從跟蹤
查看從庫狀態(tài)
從庫中終止主從同步 stop slave
查看 my.cnf 文件 把 server -id=1 的字段刪除 保留server-id=2 修改后保存 重啟mysql 重新連接 開啟主從同步start slave
查看從庫狀態(tài) 發(fā)現(xiàn)沒有錯(cuò)誤 到此主從同步配置已經(jīng)完成.
mysql 如何實(shí)現(xiàn)讀寫分離,用mysql-proxy 或者直接用php連接兩個(gè)數(shù)據(jù)庫?
Mysql主從配置,實(shí)現(xiàn)讀寫分離
原理:主服務(wù)器(Master)負(fù)責(zé)網(wǎng)站NonQuery操作,從服務(wù)器負(fù)責(zé)Query操作,用戶可以根據(jù)網(wǎng)站功能模特性塊固定訪問Slave服務(wù)器,或者自己寫個(gè)池或隊(duì)列,自由為請(qǐng)求分配從服務(wù)器連接。主從服務(wù)器利用MySQL的二進(jìn)制日志文件,實(shí)現(xiàn)數(shù)據(jù)同步。二進(jìn)制日志由主服務(wù)器產(chǎn)生,從服務(wù)器響應(yīng)獲取同步數(shù)據(jù)庫。
具體實(shí)現(xiàn):
1、在主從服務(wù)器上都裝上MySQL數(shù)據(jù)庫,windows系統(tǒng)鄙人安裝的是mysql_5.5.25.msi版本,Ubuntu安裝的是mysql-5.6.22-linux-glibc2.5-i686.tar
windows安裝mysql就不談了,一般地球人都應(yīng)該會(huì)。鄙人稍微說一下Ubuntu的MySQL安裝,我建議不要在線下載安裝,還是離線安裝的好。大家可以參考 這位不知道大哥還是姐妹,寫的挺好按照這個(gè)就能裝上。在安裝的時(shí)候可能會(huì)出現(xiàn)幾種現(xiàn)象,大家可以參考解決一下:
(1)如果您不是使用root用戶登錄,建議 su - root 切換到Root用戶安裝,那就不用老是 sudo 了。
(2)存放解壓的mysql 文件夾,文件夾名字最好改成mysql
(3)在./support-files/mysql.server start 啟動(dòng)MySQL的時(shí)候,可能會(huì)出現(xiàn)一個(gè)警告,中文意思是啟動(dòng)服務(wù)運(yùn)行讀文件時(shí),忽略了my.cnf文件,那是因?yàn)閙y.cnf的文件權(quán)限有問題,mysql會(huì)認(rèn)為該文件有危險(xiǎn)不會(huì)執(zhí)行。但是mysql還會(huì)啟動(dòng)成功,但如果下面配置從服務(wù)器參數(shù)修改my.cnf文件的時(shí)候,你會(huì)發(fā)現(xiàn)文件改過了,但是重啟服務(wù)時(shí),修改過后的配置沒有執(zhí)行,而且您 list一下mysql的文件夾下會(huì)發(fā)現(xiàn)很多.my.cnf.swp等中間文件。這都是因?yàn)镸ySQL啟動(dòng)時(shí)沒有讀取my.cnf的原因。這時(shí)只要將my.cnf的文件權(quán)限改成my_new.cnf的權(quán)限一樣就Ok,命令:chmod 644 my.cnf就Ok
(4)Ubuntu中修改文檔內(nèi)容沒有Vim,最好把Vim 裝上,apt-get install vim,不然估計(jì)會(huì)抓狂。
這時(shí)候我相信MySQL應(yīng)該安裝上去了。
2、配置Master主服務(wù)器
(1)在Master MySQL上創(chuàng)建一個(gè)用戶‘repl’,并允許其他Slave服務(wù)器可以通過遠(yuǎn)程訪問Master,通過該用戶讀取二進(jìn)制日志,實(shí)現(xiàn)數(shù)據(jù)同步。
如何實(shí)現(xiàn)mysql讀寫分離
Slave從服務(wù)器(Ubuntu)
(1)找到MySQL安裝文件夾修改my.cnf文件,vim my.cnf
s
(2) ./support-files/myql.server restart 重啟MySQL服務(wù) , ./bin/mysql 進(jìn)入MySQL命令窗口
(3)連接Master
change master to master_host='192.168.0.104', //Master 服務(wù)器Ip
master_port=3306,
master_user='repl',
master_password='mysql',
master_log_file='master-bin.000001',//Master服務(wù)器產(chǎn)生的日志
master_log_pos=0;
(4)啟動(dòng)Slave
start slave;
網(wǎng)頁標(biāo)題:mysql怎么做讀寫分離 mysql讀寫分離原理詳解
網(wǎng)頁鏈接:http://www.dlmjj.cn/article/dopesoj.html