MySQL Slave_SQL_Running NO的解決方式

MySQL Slave要確定是否正在運作,在執行【mysql>show slave status;】時,底下2個必須為Yes
Slave_IO_Running: Yes
Slave_SQL_Running:Yes
但是,如果Slave_SQL_Running為NO時,要怎麼解決呢?

Slave_SQL_Running:NO 的解決方式1:

直接跳過一行造成停止的SQL指令
mysql> stop slave;
mysql> set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql> start slave;

Slave_SQL_Running:NO 的解決方式2:

直接指定Master記錄的File及Position到Slave
1. 先到slave主機停掉slave的運作。
mysql> stop slave;
2. 查看Master主機的File和Position的值。
mysql> show master status;
+——————+———–+————–+——————+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+——————+———–+————–+——————+
| mysql-bin.000118 | 199777882 | | |
+——————+———–+————–+——————+
1 row in set (0.00 sec)
3. 到slave主機手動設定。
mysql > change master to
>master_host=’master_ip’ ,
>master_user=’user’,
>master_password=’pwd’,
>master_port=3306,
>master_log_file=’mysql-bin.000118′,
>master_log_pos=199777882;
4. 最後啟動slave運作。
mysql> start slave;

留言

這個網誌中的熱門文章

c語言-關於#define用法

CMD常用網管指令

PHP 與 JavaScript 之間傳值利用 json