MySQL中怎么設(shè)置主從同步,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于網(wǎng)站制作、成都做網(wǎng)站、阿拉山口網(wǎng)絡(luò)推廣、微信平臺(tái)小程序開發(fā)、阿拉山口網(wǎng)絡(luò)營銷、阿拉山口企業(yè)策劃、阿拉山口品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供阿拉山口建站搭建服務(wù),24小時(shí)服務(wù)熱線:18980820575,官方網(wǎng)址:jinyejixie.com
1、 配置主庫my.ini
port=3306
datadir="C:/Program Files/MySQL/MySQL Server 5.0/Data/"
server-id=1
log-bin=mysql-bin.log
2、 配置從庫my2.ini
port=3307
datadir="C:/Program Files/MySQL/MySQL Server 5.0/Data2/"
server-id=2
#啟用從庫日志,這樣可以進(jìn)行鏈?zhǔn)綇?fù)制
log-slave-updates
#從庫是否只讀,0表示可讀寫,1表示只讀
read-only=1
#只復(fù)制某個(gè)表
#replicate-do-table=tablename
#只復(fù)制某些表(可用匹配符)
#replicate-wild-do-table=tablename%
#只復(fù)制某個(gè)庫(如果對(duì)多個(gè)數(shù)據(jù)庫做同步,那么可以用多行來表示。)
replicate-do-db = backup
#只復(fù)制某些庫
#replicte-wild-do-db=dbname%
#不復(fù)制某個(gè)表
#replicate-ignore-table=tablename
#不復(fù)制某些表
#replicate-wild-ignore-table=tablename%
#不復(fù)制某個(gè)庫(如果忽略多個(gè)數(shù)據(jù)庫的同步,那么可以用多行表示。)
replicate-ignore-db=mysql
#復(fù)制完的sql語句是否立即從中繼日志中清除,1表示立即清除
relay-log-purge = 1
#從服務(wù)器主機(jī),用于show slave hosts生成從庫清單
report-host=slave-1
#即不管發(fā)生什么錯(cuò)誤,鏡像處理工作也繼續(xù)進(jìn)行
slave-skip-errors=all
#每經(jīng)過n次日志寫操作就把日志文件寫入硬盤一次(對(duì)日志信息進(jìn)行一次同步)。n=1是最安全的做法,但效率最低。
#默認(rèn)設(shè)置是n=0,意思是由操作系統(tǒng)來負(fù)責(zé)二進(jìn)制日志文件的同步工作。
sync_binlog=1
3、 設(shè)置主庫
啟動(dòng)主庫:
mysqld-nt --defaults-file=my.ini
連接到主庫中,創(chuàng)建復(fù)制用戶
C:/>mysql -uroot -ppassword -P3306
mysql> grant replication slave on *.* to identified by '123456';
Query OK, 0 rows affected (0.00 sec)
鎖住主庫的table,以便備份數(shù)據(jù)文件到從庫進(jìn)行初始化
> flush tables with read lock;
Query OK, 0 rows affected (0.00 sec)
顯示主庫狀態(tài),注意記下當(dāng)前二進(jìn)制日志文件名和position
mysql> show master status;
+-----------------------+-----------+-------------------+------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+------------+-------------------+------------------------+
| mysql-bin.000001 | 98 | backup | mysql |
+----------------------+------------+-------------------+--------------------------+
1 row in set (0.00 sec)
將C:/Program Files/MySQL/MySQL Server 5.0/Data/下的內(nèi)容打包復(fù)制到C:/Program Files/MySQL/MySQL Server 5.0/Data2/下,執(zhí)行從庫的初始化。當(dāng)然,初始化也可以使用mysqldump來完成。
4、設(shè)置從庫
另外開啟一個(gè)cmd,啟動(dòng)從庫
mysqld-nt --defaults-file=my2.ini
連接到從庫進(jìn)行配置
C:/>mysql -uroot -ppassword -P3307
mysql> CHANGE MASTER TO
-> MASTER_HOST='localhost',
-> MASTER_USER='backup',
-> MASTER_PASSWORD='backup',
-> MASTER_LOG_FILE='mysql-bin.000001',
-> MASTER_LOG_POS=98;
Query OK, 0 rows affected (0.01 sec)
注意到這里master_log_file和master_log_pos就是前面show master status的結(jié)果。
啟動(dòng)復(fù)制進(jìn)程
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)
至此配置基本完成,在主庫解開table的鎖定
mysql> unlock tables;
Query OK, 0 rows affected (0.00 sec)
看完上述內(nèi)容,你們掌握MySQL中怎么設(shè)置主從同步的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章標(biāo)題:MySQL中怎么設(shè)置主從同步
網(wǎng)站路徑:http://jinyejixie.com/article36/ipjesg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站營銷、品牌網(wǎng)站設(shè)計(jì)、微信小程序、軟件開發(fā)、標(biāo)簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)