這篇文章給大家分享的是有關(guān)MySQL如何恢復(fù)slave上某幾張表的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了浦東免費建站歡迎大家使用!
主庫一直模擬插入數(shù)據(jù)
[root@node1 ~]# vi tt.sh
#!/bin/bash
for ((i=1;i<=1000;i++))
do
mysql -uroot -pESBecs00 -e "insert into test1 values($i,'chen$i')" hd
mysql -uroot -pESBecs00 -e "insert into test2 values($i,'chen$i')" hd
sleep 0.5
done
1.關(guān)閉slave 復(fù)制進程
mysql> stop slave;
Query OK, 0 rows affected (0.00 sec)
2.主庫備份需要恢復(fù)的表
[root@node1 ~]# mysqldump -uroot -pESBecs00 --master-data=2 hd test2 >test2.sql
[root@node1 ~]# more test2.sql
-- MySQL dump 10.13 Distrib 5.5.50, for Linux (i686)
--
-- Host: localhost Database: hd
-- ------------------------------------------------------
-- Server version 5.5.50-log
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Position to start replication or point-in-time recovery from
--
-- CHANGE MASTER TO MASTER_LOG_FILE='on.000001', MASTER_LOG_POS=38848; --一定要開啟master-data幾下備份點信息
--
-- Table structure for table `test2`
--
3.恢復(fù)從庫到指定的點
mysql> start slave until master_log_file='on.000001',master_log_pos=38848;
Query OK, 0 rows affected, 1 warning (0.00 sec)
------這一步主要是為了同步斷開slave到備份完表這一段時間內(nèi)其它表產(chǎn)生的數(shù)據(jù)
直到slq-thread為no,這期間的錯誤一律跳過即可,可用如下命令
stop slave;set global sql_slave_skip_counter=1;start slave;
4 在slave機器上導(dǎo)入備份文件
[root@node2 ~]# mysql -uroot -pESBecs00 hd
5開啟同步即可
(root@127.0.0.1) [gggg]> select * from test1
| 406 | chen406 |
+-----+---------+
406 rows in set (0.00 sec) ---數(shù)量一致,數(shù)據(jù)未丟失
感謝各位的閱讀!關(guān)于“Mysql如何恢復(fù)slave上某幾張表”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!