⒈mysqldump备份中导出单张表
很多时候我们需要从mysqldump备份文件中恢复出一张表,通常的做法可能是先把sql 文件恢复到一个测试数据库,然后再使用mysqldump导出一张表,再恢复到生产环境,这样,如果数据量不大这方法是可行的,但是你依然需要有一个测试机器或者临时创建一个库,不是很方便,可以利用awk/sed解决相关问题:
①在原数据库中使用show tables;
②利用sed或者awk,将数据导入文件中(注意表之间的排序)
# awk ‘/^-- Table structure for table `stat_map`/,/^-- Table structure for table `station`/{print}‘ testdb.sql>/usr/yzx_loadtest/recovered_stat_map.sql
or
#cat mydumpfile.sql | sed -n -e ‘/Table structure for table .test1./,/Table structure for table .test2./p‘ > /tmp/extracted_table.sql
③从.sql进行恢复
mysql -u root -p </tmp/extracted_table.sql
时间: 2024-12-05 00:10:17