MySQL中怎么配置主從復(fù)制,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
創(chuàng)新互聯(lián)公司企業(yè)建站,10多年網(wǎng)站建設(shè)經(jīng)驗,專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁設(shè)計,有多年建站和網(wǎng)站代運營經(jīng)驗,設(shè)計師為客戶打造網(wǎng)絡(luò)企業(yè)風(fēng)格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對于成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)中不同領(lǐng)域進(jìn)行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準(zhǔn)市場調(diào)研,為客戶提供的解決方案。
1.下載mysql安裝包(我用的是解壓版的mysql-5.7),解壓成兩份分別命名為MySQLmaster和MySQLslave
2.修改master的my.ini文件
[mysqld] #端口 port = 3306 basedir=D:/hlb/ruanjian/mysql5.7_master/mysql-5.7.25-winx64 datadir=D:/hlb/ruanjian/mysql5.7_master/mysql-5.7.25-winx64/data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #需要備份的數(shù)據(jù)庫 binlog-do-db=test #不需要備份的數(shù)據(jù)庫 #binlog-ignore-db=mysql #注:bin-do-db,bin-ignore-db 為互斥關(guān)系,只需設(shè)置其中一項即可 #開啟二進(jìn)制日志 log-bin=mysql-bin #服務(wù)id server-id=1 [mysql] default-character-set=utf8
3.修改slave的my.ini文件
[mysqld] port = 3307 basedir=D:/hlb/ruanjian/mysql5.7_slave/mysql-5.7.25-winx64 datadir=D:/hlb/ruanjian/mysql5.7_slave/mysql-5.7.25-winx64/data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES #服務(wù)器id server_id = 2 #開啟二進(jìn)制日志(從服務(wù)器不是必須要開啟二進(jìn)制日志) log-bin=mysql-bin [mysql] default-character-set=utf8
4.mysql解壓版安裝
)1.以管理員身份打開cmd.exe )2.cd D:\hlb\ruanjian\mysql5.7_slave\mysql-5.7.25-winx64\bin )3.mysqld -install mysqlmaster(或者是mysqlslave) )4.mysqld --initialize-insecure --user=mysql(此語句用于初始化MySQL并生成data目錄) net start mysql 啟動MySQL命令 net stop mysql 停止MySQL命令 mysql -uroot -P3306(或者-P3307)進(jìn)入mySQL命令行
5.配置master Mysql。
binlog-do-db(前面修改master 的my.ini文件有此參數(shù))用于指定需要同步的數(shù)據(jù)庫,binlog-ignore-db指定不需要同步的數(shù)據(jù)庫,如果這兩個參數(shù)都不設(shè)置,則從服務(wù)器會復(fù)制主服務(wù)器的所有數(shù)據(jù)庫。
一般不用root賬號作同步賬號,為此,我們需要在主服務(wù)器上創(chuàng)建一個新的用戶(如 user01,密碼為123456)。
這里我們用命令行的方式創(chuàng)建,方法如下:
)1.創(chuàng)建新用戶: create user 'user01'@'127.0.0.1' identified by '123456';(@后面的ip地址為允許連接的客戶端的ip地址。) )2.給新用戶配置主從復(fù)制的權(quán)限: grant replication slave on *.* to 'user01'@'127.0.0.1' identified by '123456'; (@后面的ip地址為允許連接的客戶端的ip地址,如果改為 '%',就表示客戶端沒有ip地址的限制) )3.查看主服務(wù)器的 master 狀態(tài):mysql> show master status;(從配置會用到里面的信息)
6.配置slave Mysql
連接MySQL從服務(wù)器:
mysql -uroot -p -P3307
配置復(fù)制的參數(shù):
change master to master_host='127.0.0.1',master_user='user01',master_password='123456',master_port=3306,master_log_file='mysql-bin.000008',master_log_pos=498;
啟動從服務(wù)器的slave復(fù)制功能:
start slave;
查看從服務(wù)器的slave狀態(tài):
mysql> show slave status \G
如果 Slave_IO_Running 和 Slave_SQL_Running 的值都為 Yes,則說明主從復(fù)制的所有配置已成功,即從服務(wù)器已經(jīng)可以自動與主服務(wù)器的數(shù)據(jù)庫數(shù)據(jù)實現(xiàn)同步了。
此后,只要主服務(wù)器的數(shù)據(jù)有更新(比如:在 test數(shù)據(jù)庫中新建了一張表或者表中的數(shù)據(jù)發(fā)生了變化),從服務(wù)器都會自動與主服務(wù)器保持一致。
但如果有人刻意改變了從服務(wù)器的數(shù)據(jù),主服務(wù)器中的數(shù)據(jù)并不會同步更新,除非我們把這兩個MySQL服務(wù)器設(shè)置為互為主從。
insert into user values(1,'aa') 主MySQL測試即可
截圖效果如下:
看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。
名稱欄目:mysql中怎么配置主從復(fù)制
分享路徑:http://aaarwkj.com/article30/igsdso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站策劃、網(wǎng)站導(dǎo)航、服務(wù)器托管、網(wǎng)頁設(shè)計公司、企業(yè)建站、ChatGPT
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)