標籤:mil 準備 nts 修改 show star 命令 使用 總結
環境:Centos 6.9,Mysql 8.0
配置準備:1、為Centos配置好網路,使用遠程工具串連。
2、安裝mysql,途徑不限。(我使用rpm包安裝,安裝後要先啟動msyql服務,命令service mysqld start)
3、mysql安裝後的預設密碼在 /etc/my.cnf 中 log-error配置項所指向的log地址中 /var/log/mysqld.log
主從複製
好處:多節點效能變優,安全性更高,提高伺服器負載。
應用情境:Database Backup、讀寫分離
步驟: 首先。確定一個主節點master,其他為從節點slave。
1、配置主節點。建立使用者授予許可權;如果binlog沒開啟,開啟binlog日誌;
2、配置從節點。配置同步處理記錄;確定主節點的ip,連接埠,使用者;啟動從節點;
主節點(Master):
修改mysql設定檔,vim /etc/my.cnf 配置server-id的值,與從節點不能重複。
建立建立一個使用者。 create user ‘repl‘@‘192.168.110.%‘ identified by ‘Repl_123456‘;
在主伺服器賦予它 replication slave 許可權。grant replication slave on *.* to ‘repl‘@‘192.168.110.%‘;
mysql 日誌類型:
Error log 錯誤記錄檔
General query log普通查詢日誌
Slow query log 慢查詢日誌(記錄哪些查詢比較慢 )
Binary log二進位記錄檔(1、用於增量備份。2、主從)
查看是否已開啟binlog:show variable like ‘%log_bin%‘;
如果沒開啟,配置 :vim /etc/my.cnf加上 server-id=1(多台節點值不能重複)和 log_bin=/var/lib/mysql/mysql-bin 儲存退出 重啟mysql服務。
查看binlog日誌:在mysql中 show binlog events in ‘檔案名稱‘; 在系統中 mysqlbinlog 檔案名稱;
每次重新啟動mysql都會建立一個binlog。查看當前是哪個binlog檔案:show master status;
show msater logs;(查看所有記錄檔),reset master(清空所有記錄檔)
binlog日誌恢複資料
mysqlbinlog 檔案名稱 | mysql -u root -p
從節點(Slave):
修改mysql設定檔,vim /etc/my.cnf
配置server_id(不能與主節點重複)
配置同步處理記錄路徑relay-log=/var/lib/mysql/relay-bin
進入mysql執行
mysql> CHANGE MASTER TO -> MASTER_HOST=‘192.168.110.66‘, -> MASTER_USER=‘repl‘, -> MASTER_PASSWORD=‘Repl_123456‘, -> MASTER_LOG_FILE=‘binlog.000007‘, -> MASTER_LOG_POS=0;Query OK, 0 rows affected, 2 warnings (0.01 sec) mysql> START SLAVE;Query OK, 0 rows affected (0.00 sec)
show slave status\G;檢查是否已連結上主節點,根據裡面的錯誤資訊修改配置。確保master防火牆關閉,/var/lib/mysql/auto.cnf裡的uuid不重複。
如果出現Slave_Io_Running:yes但Slave_SQL_Running:No的情況執行
mysql> stop slave;
mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql> start slave;
配置成功!
mysql> slave stop;
mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql> slave start;
Mysql 主從複製總結