一、在兩台Ubuntu機器上安裝mysql
1.檢查系統中是否安裝了mysql
這個是已經安裝了的
沒有安裝的話執行上條指令
===============================
MySQL的一些簡單管理:
启动MySQL服务: sudo start mysql 停止MySQL服务: sudo stop mysql 修改 MySQL 的管理员密码: sudo mysqladmin -u root password newpassword
二、Master主伺服器上的設定(103.251.237.42)
1.編輯my.cnf (指令尋找檔案位置:find / -name my.cnf )
在[mysqld]中註釋掉bind-address = 127.0.0.1 不然mysql無法遠程
server-id = 1 中1 是可以自己定義的,但是需要保持它的唯一性,是伺服器的唯一識別
log_bin 启动MySQL二进制日志 binlog_do_db 指定记录二进制日志的数据库 binlog_ignore_db 指定不记录二进制日志的数据库。
註解掉binlog_do_db 和binlog_ignore_db ,則表示備份全部資料庫
完成這些之後,重啟下資料庫
2.登陸主伺服器mysql 建立從伺服器用到的帳戶和權限;
@之後IP可存取主伺服器,這裡值定從伺服器IP
新密碼為masterbackup的masterbackup 用戶,並賦予replication slave 權限
可以看到用戶masterbackup 已經新增
#3.查看主資料庫的狀態
記錄mysql-bin.000007 以及276,寫出下列指令待用;
change master to master_host='103.251.237.42',master_port=3306,master_user ='masterbackup',master_password='masterbackup',master_log_file='mysql-bin.000007',master_log_pos=276;
三、Slave從伺服器設定上的設定(103.251.237.45)
1.編輯伺服器設定上的設定(103.251.237.45)
1.編輯伺服器設定上的設定(103.251.237.45)1.編輯伺服器設定上的設定(103.251.237.45)
1.編輯伺服器設定值cnf(指令尋找檔案位置:find / -name my.cnf)
#在[mysqld]中
relay-log = slave- relay-bin
relay-log-index = slave-relay-bin.index暫時不清楚這是做什麼的。加入這兩條。
重啟mysql服務
登陸mysql,停止同步指令
執行用上面準備的指令; 登入Slave從伺服器,連接Master主伺服器:
查看Slave資訊;如圖兩句都為yes,則狀態正常
四、從主從伺服器測試結果
在主伺服器建立一個資料庫
================================================= ====================================================
因為以上是兩台新機器做的mysql主從配置;所以不需要從主伺服器匯入之前的資料到從伺服器;那麼如果主伺服器已經有了一部分數據,就需要增加從主伺服器匯入資料到從伺服器的操作;
1.執行以下命令鎖定資料庫以防止寫入資料;
# #這個指令是全域讀鎖定,執行指令之後所有函式庫所有表都會被鎖定為唯讀。一般都是用在資料庫線上備份,這個時候資料庫的寫入作業會被阻止,讀取作業可以順利進行;
#########2.退出mysql指令行,匯出資料庫到root檔案下並命名為all.sql;
#3.使用scp指令傳送資料庫檔案all.sql到從伺服器;
4.再次連接資料庫進入mysql指令查看master狀態,記錄file 和position 的值;
以上是mysql主從同步配置的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!