91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL主從復制的實現方法

發布時間:2020-09-01 15:41:23 來源:億速云 閱讀:160 作者:小新 欄目:MySQL數據庫

這篇文章給大家分享的是有關MySQL主從復制的實現方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

                                                           MySQL主從復制的實現方法

測試服務器使用centos7.2進行相關配置

文章內容參考mysql數據庫的主從同步,實現讀寫分離

概敘

大型網站為了軟解大量的并發訪問,除了在網站實現分布式負載均衡,遠遠不夠。到了數據業務層、數據訪問層,如果還是傳統的數據結構,或者只是單單靠一臺服務器來處理如此多的數據庫連接操作,數據庫必然會崩潰,特別是數據丟失的話,后果更是不堪設想。這時候,我們會考慮如何減少數據庫的連接,下面就進入我們今天的主題。

利用主從數據庫來實現讀寫分離,從而分擔主數據庫的壓力。在多個服務器上部署mysql,將其中一臺認為主數據庫,而其他為從數據庫,實現主從同步。其中主數據庫負責主動寫的操作,而從數據庫則只負責主動讀的操作(slave從數據庫仍然會被動的進行寫操作,為了保持數據一致性),這樣就可以很大程度上的避免數據丟失的問題,同時也可減少數據庫的連接,減輕主數據庫的負載。

安裝mysql

服務器安裝mysql我參考了以下兩篇文章

Centos7.2安裝Mysql5.7(阿里云)

Centos7 遠程無法連接mysql數據庫

在安裝數據庫過程中,由于遠程無法連接踩了一些坑,首先在配置完成數據庫后,需要數據庫授權允許訪問,然后打開防火墻設置,將3306端口打開,允許通過數據庫管理工具通過端口訪問數據庫,我就是在沒有設置打開防火墻這塊一直踩坑。

在測試的兩臺服務器都分別安裝了mysql,并同時導入測試數據庫

主從復制配置

主服務器配置

修改主服務器mysql配置,文件位于/etc/my.cnf

#在[mysqld]中添加:
server-id=1log_bin=master-bin
log_bin_index=master-bin.index
binlog_do_db=master

#server-id 服務器唯一標識。
#log_bin 啟動MySQL二進制日志,即數據同步語句,從數據庫會一條一條的執行這些語句。
#binlog_do_db 指定記錄二進制日志的數據庫,即需要復制的數據庫名,如果復制多個數據庫,重復設置這個選項即可。
#binlog_ignore_db 指定不記錄二進制日志的數據庫,即不需要復制的數據庫名,如果有多個數據庫,重復設置這個選項即可。
#其中需要注意的是,binlog_do_db和binlog_ignore_db為互斥選項,一般只需要一個即可。

創建用戶和權限

grant replication slave on . to masterbackup@’%’ identified by ‘123456’;

%通配符,表示任意IP都可訪問主服務器,正式環境請配置指定從服務器IP

創建完成后,通過命令重啟mysql服務

service mysql restart

通過命令show master status查看狀態

MySQL主從復制的實現方法

slave從服務器的配置

同樣修改位于/etc/my.cnf目錄下的配置

#在[mysqld]中添加:
server-id=2relay-log=slave-relay-bin
relay-log-index=slave-relay-bin.index
#replicate-do-db=master


#server-id 服務器唯一標識,如果有多個從服務器,每個服務器的server-id不能重復,跟IP一樣是唯一標識,如果你沒設置server-id或者設置為0,則從服務器不會連接到主服務器。
#relay-log 啟動MySQL二進制日志,可以用來做數據備份和崩潰恢復,或主服務器掛掉了,將此從服務器作為其他從服務器的主服務器。
#replicate-do-db 指定同步的數據庫,如果復制多個數據庫,重復設置這個選項即可。若在master端不指定binlog-do-db,則在slave端可用replication-do-db來過濾。
#replicate-ignore-db 不需要同步的數據庫,如果有多個數據庫,重復設置這個選項即可。
#其中需要注意的是,replicate-do-db和replicate-ignore-db為互斥選項,一般只需要一個即可。

通過命令重啟mysql服務

service mysql restart

連接主數據庫

#連接master主服務器
mysql> change master to master_host='103.246.246.225',master_port=3306,master_user='masterbackup',master_password='123456',master_log_file='master-bin.000001',master_log_pos=120;#master_host對應主服務器的IP地址。
#master_port對應主服務器的端口。
#master_log_file對應show master status顯示的File列:master-bin.000001。
#master_log_pos對應show master status顯示的Position列:120。

啟用slave同步數據

#啟動slave數據同步
mysql> start slave;#停止slave數據同步(若有需要)
mysql> stop slave;

查看slave信息

通過命令show slave status\G;查看slave信息

MySQL主從復制的實現方法

Slave_IO_Running和Slave_SQL_Running都為yes,則表示同步成功。

測試

MySQL主從復制的實現方法

在隨便一張數據表中插入一筆數據

MySQL主從復制的實現方法

查看從數據庫相應表

MySQL主從復制的實現方法

可以查看到,從數據庫已成功同步相應數據!!

感謝各位的閱讀!關于MySQL主從復制的實現方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

娱乐| 本溪市| 遂昌县| 盘山县| 湖南省| 岳阳县| 汝城县| 许昌市| 屯留县| 山阳县| 西昌市| 绍兴县| 二连浩特市| 莫力| 广州市| 长汀县| 景宁| 乌海市| 陆丰市| 同心县| 乌兰察布市| 怀化市| 伽师县| 介休市| 仙居县| 黑河市| 巢湖市| 苍山县| 长宁区| 额尔古纳市| 苍南县| 太仓市| 深州市| 峨边| 宁南县| 邓州市| 临朐县| 博乐市| 化州市| 北宁市| 武鸣县|