国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

MySQL主從配置 主從介紹 配置主和從 測試主從同步

2024-07-24 12:34:48
字體:
來源:轉載
供稿:網友
           MySQL主從介紹
 
        (兩臺機器數據同步)
 
        主:-->binlog
 
        從:-->relaylog
 
       主上有一個log dump線程,用來和從的I/O線程傳遞binlog
 
 從上有兩個線程,其中I/O線程用來同步主的binlog并生成relaylog,另外一個SQL線程用來把relaylog里面的sql語句落地(執行)
 
主從的應用場景:
 
(1)做數據的備份,(主:作讀寫數據,從:實時同步,當 主 宕機時,從 也可以即使提供服務 )
 
(2)也是做備份。(客戶從 從 這臺機器上讀取數據(但是不能再從上寫),減輕主的壓力)
 
準備工作
 
1.兩臺機器都裝上mysql,并且都開啟mysql的服務
 
配置主
 
主:192.1683.136.133      從:192.168.136.134
 
1.修改my.cnf,增加server-id=133和log_bin=canshenglinux1
 
2.修改完配置文件后,啟動或者重啟mysqld服務
 
重啟完后,我們可以發現在/data/mysql下生成了以在配置文件中定義log_bin=canshenglinux1為開頭的文件
 
這些文件很重要,不然不能實現主從
 
3.
 
把mysql庫備份并恢復成cansheng庫,作為測試數據(這個庫就是用來做主從)
 
 mysqldump -uroot -p123456 mysql > /tmp/mysql.sql
 
 mysql -uroot -p123456 -e “create database cansheng”
 
 mysql -uroot -p123456 cansheng < /tmp/mysql.sql
 
4.創建用作同步數據的用戶
 
(1)先進入到mysql
 
 (2)再創建同步數據的用戶
 
 grant replication slave on *.* to 'repl'@slave_ip identified by '123456';
 
5.鎖定一下表:
 
flush tables with read lock;
 
(為了同步前數據一致。)
 
show master status (查看一下position和file)
 
(退出mysql)
 
此時查看一下/data/mysql又是什么庫
 
(一般同步不要同步mysql庫,因為里面有很多用戶名和密碼)
 
6.備份一下所需要同步的庫:
 
mysqldump -uroot -p123456 zrlog > /tmp/zrlog.sql
 
配置從
 
1.查看my.cnf,配置server-id=134,要求和主不一樣
 
2.修改完配置文件后,啟動或者重啟mysqld服務
 
/etc/init.d/mysqld restart
 
3.把主上需要同步的庫復制過來:
 
scp 192.168.136.133:/tmp/*.sql /tmp/
 
臨時創建alias,方便使用命令:
 
alias 'mysql=/usr/local/mysql/bin/mysql'
 
alias 'mysqldump=/usr/local/mysql/bin/mysqldump'
 
4.進入mysql
 
創建相對應的庫:
 
create database cansheng;
 
create database zrlog;
 
create database mysql2;
 
5.數據恢復:
 
mysql -uroot cansheng < /tmp/mysql.sql
 
6.進入mysql
 
(1)stop slave;
 
(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;
 
(3)start slave;
 
(4)判定主從是否配置成功
 
show slave status/G
 
這樣是表示不成功配置成功的要出現兩個yes才成功。
 
不成功的因素:
 
(1)防火墻 systemctl  stop firewalld
 
 (2)selinux   -->關閉 sentenforce 0
 
(3)用戶名是否正確
 
{而我的因素是在配置主的時候指定用戶名和密碼錯誤了,從頭來了一次}
 
7.回到主,進到mysql解除table(表)的鎖定
 
unlock tables;
 
MySQL主從配置:主從介紹、配置主和從  、測試主從同步
 
至此完成主從配置:
 
測試主從同步
 
(只需要在主或者從,其中一個配置就可以了。這些參數默認是沒有配置的,沒有手動配置,那默認是同步所有的庫)
 
在從上配置盡量使用最后兩個,可以避免在忽略某個庫或者表時,當級聯查詢的時候避免出現數據丟失,不該忽略的也忽略了?。?br />  
測試主從是否成功,是否同步!
 
1.兩臺機器都進到mysql下,進到測試的數據庫:cansheng2
 
 此時清空主上的comment表;看看從上的comment表數據是否也清空,從而同步。
 
truncate table comment;
 
刪除表測試:
 
 我們不能再 從 這臺機器上執行mysql操作,不然這時我們的主從就斷開。
 
(因為此時我們的position已經改變)
 
如果此時我們的主從斷開了,應該重新執行
 
(1)stop slave;
 
(2)change master to master_host='192.168.136.133', master_user='repl', master_password='123456', master_log_fil_log_file='canshenglinux1.000002', master_log_pos=646207;
 
(3)start slave;
 
(4)判定主從是否配置成功
 
show slave status/G
 
這樣是表示不成功配置成功的要出現兩個yes才成功。

(編輯:武林網)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 株洲市| 洛隆县| 内江市| 友谊县| 扎鲁特旗| 南昌县| 南雄市| 平邑县| 翼城县| 辽阳县| 榆树市| 广昌县| 湘潭市| 虹口区| 溧阳市| 商城县| 巧家县| 彰化市| 贵港市| 乌拉特中旗| 邵阳县| 新邵县| 沙河市| 阜城县| 慈溪市| 柯坪县| 长泰县| 老河口市| 古丈县| 天门市| 南乐县| 泰兴市| 永泰县| 湟源县| 朝阳县| 铁岭市| 城固县| 常德市| 厦门市| 天等县| 新津县|