本篇文章主要介绍了"mysqldump恢复指定表",主要涉及到方面的内容,对于其他数据库感兴趣的同学可以参考一下:
如果mysql服务器上不能随意安装软件,当需要从全备份中恢复单个表,怎么办?1.mysqldump备份指定数据库,如ivr[sql] view plain co...
如果mysql服务器上不能随意安装软件,当需要从全备份中恢复单个表,怎么办?
1.mysqldump备份指定数据库,如ivr
[sql] view plain copy 在CODE上查看代码片派生到我的代码片
[mysql@bjmysql01]$ mysqldump -utelivr -p123456 -F -R --events --databases ivr |gzip >ivr_$(date +%F).sql.gz
2. 确认备份文件已经生成
[mysql@bjmysql01]$ ll ivr*
ivr_2014-01-25.sql.gz
3.模拟删除atuo表
[sql] view plain copy 在CODE上查看代码片派生到我的代码片
mysql> show tables;
+---------------+
| Tables_in_ivr |
+---------------+
| atuo |
| ivr |
+---------------+
2 rows in set (0.00 sec)
[sql] view plain copy 在CODE上查看代码片派生到我的代码片
mysql> select * from atuo;
+----+------+
| id | name |
+----+------+
| 1 | a |
| 2 | b |
| 4 | c |
+----+------+
3 rows in set (0.00 sec)
mysql> drop table atuo;
Query OK, 0 rows affected (0.01 sec)
[sql] view plain copy 在CODE上查看代码片派生到我的代码片
mysql> show tables;
+---------------+
| Tables_in_ivr |
+---------------+
| ivr |
+---------------+
1 row in set (0.00 sec)
4.从备份文件中找出需要恢复表的建表语句:
[sql] view plain copy 在CODE上查看代码片派生到我的代码片
[mysql@bjmysql01]$ gunzip -c ivr_2014-01-25.sql.gz |sed -e '/./{H;$!d;}' -e 'x;/CREATE TABLE `atuo`/!d;q'
DROP TABLE IF EXISTS `atuo`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `atuo` (
`id` int(11) NOT NULL AUTO_INCREMENT,