您好,登錄后才能下訂單哦!
17mysql復(fù)制
=================
使用mysql復(fù)制的好處
避免主庫(kù)故障后無(wú)法對(duì)外提供服務(wù)
避免主庫(kù)備份時(shí)的鎖定,同步后備份再叢庫(kù)上進(jìn)行
保持多份數(shù)據(jù)副本,避免丟失數(shù)據(jù)
叢庫(kù)提供讀功能,分散主庫(kù)壓力
基本原理:
主庫(kù)叢庫(kù)經(jīng)過(guò)初始化保證數(shù)據(jù)相同后主庫(kù)通過(guò)二進(jìn)制日志保持對(duì)數(shù)據(jù)庫(kù)變化的跟蹤
從庫(kù)根據(jù)相同的日志重演主庫(kù)中數(shù)據(jù)的變化
---------
配置:
第一步:
授權(quán)從庫(kù)可以連接主庫(kù)并進(jìn)行更新
這個(gè)可以在主庫(kù)上進(jìn)行,方法是創(chuàng)建一個(gè)從庫(kù)的賬戶(hù)也可以使用grant replication
grant replication slave on *.* to repadmin@slave identified by 'xxxxx';
第二步:
從主庫(kù)復(fù)制到從庫(kù),實(shí)際上就是初始化,保證兩邊一致
第三步:
配置主庫(kù),給主庫(kù)一個(gè)復(fù)制id編號(hào),主從的id號(hào)都必須是唯一的
同時(shí)需要設(shè)定主庫(kù)使用二進(jìn)制日志文件
server-id=1
log-bin=binary_log
第四步:
關(guān)機(jī)并重啟主庫(kù),使新的設(shè)置生效
第五步:
登錄從庫(kù),給定從庫(kù)一個(gè)復(fù)制id編號(hào)并修改其他參數(shù)
server-id=2
master-host=master
master-user=repadmin
master-password=xxxxx
第六步:
修改完從庫(kù)后重啟從庫(kù)和服務(wù)器,使其生效
從庫(kù)將在數(shù)據(jù)目錄中創(chuàng)建master.info文件,記錄有關(guān)復(fù)制的信息
-------------
管理復(fù)制過(guò)程
change master命令
change master to
master_host='master_name',
master_user='slave_name',
master_password='slave_password',
master_port='prot_number',
master_log_file='binlog_filename',
master_connect_rettry='value',
relay_log_file='relaylog_filename',
relay_log_pos='value';
各個(gè)參數(shù)含義:
master_host 主服務(wù)器主機(jī)名
master_user 連接主服務(wù)器時(shí)使用的用戶(hù)名
master_password 連接主庫(kù)使用的密碼
master_port 連接主庫(kù)使用的端口
master_log_file 復(fù)制開(kāi)始時(shí)讀取的主庫(kù)的二進(jìn)制日志文件名
master_log_pos 復(fù)制開(kāi)始時(shí)讀取的主庫(kù)的二進(jìn)制日志文件的位置
master_connect_rettry 連接操作之間等待的秒數(shù)
relay_log_file 開(kāi)始復(fù)制時(shí)執(zhí)行的從庫(kù)中繼日志名
relay_log_pos= 開(kāi)始復(fù)制時(shí)執(zhí)行的從庫(kù)中繼日志位置
--------
purge master命令
刪除主庫(kù)上的熱進(jìn)制日志
purge master logs to binary-log
purge master logs before date
例:
mysql>purge master logs to bin_log.999;
mysql>purge master logs to now();
-------
start slave命令
開(kāi)始恢復(fù)復(fù)制
show slave status可以監(jiān)督從庫(kù)的活動(dòng)
---------
stop slave命令
終止或者結(jié)束復(fù)制
show slave status提供的信息
connect_regry 試圖連接主庫(kù)的次數(shù)
read_master_log_pos 主庫(kù)二進(jìn)制日志的位置
relay_log_file 當(dāng)前中繼日志文件
relay_log_pos 當(dāng)前中繼日志文件位置
relay_log_space 所有中繼文件的大小
----------
show slave hosts命令
server_id 從庫(kù)的復(fù)制id
master_id 主庫(kù)的復(fù)制id
host 從庫(kù)的主機(jī)名
port 從庫(kù)的連接端口
----------
show processlist
state 包含有關(guān)服務(wù)器正在處理內(nèi)容的信息
db 線程數(shù)據(jù)庫(kù)
command 線程執(zhí)行的當(dāng)前語(yǔ)句
time 線程執(zhí)行的時(shí)間
----------
load data from master
從庫(kù)從主庫(kù)中獲取數(shù)據(jù)
但是有有些限制,
-----------
show binlog events
顯示日志事件
log_name 二進(jìn)制文件名
pos 日志中事件的位置
event_type 事件類(lèi)型
------------
show master status
file 二進(jìn)制更新日志文件名
position 在主庫(kù)正在寫(xiě)的二進(jìn)制日志中的當(dāng)前位置
binlog_do_db 二進(jìn)制更新日志中記錄的數(shù)據(jù)庫(kù)列表
binlog_ignore_db 二進(jìn)制更新日志中忽略和沒(méi)有記錄的數(shù)據(jù)庫(kù)列表
免責(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)容。