从 mysqldump 提取单表
从 mysqldump 提取单表
# 1) 定位表片段(结构+数据以两个分隔注释为界)
grep -n "Table structure for table" all.sql | sed -n '/orders/p'
# 2) 抽取该表区间到文件(示例行号 1200-1580)
sed -n '1200,1580p' all.sql > orders_extract.sql
# 3) 恢复到临时库验证
mysql -uroot -p tmp_restore < orders_extract.sql
# 4) 确认后导出进生产(或直接重放)
mysqldump -uroot -p tmp_restore orders | mysql -uroot -p appdb| 区间边界 | "Table structure for table" 与 "Dumping data for table" 注释 |
|---|---|
| mydumper | 备份目录中每表独立文件,定位即用 |
| 验证 | 临时库先恢复再进生产 |
sed 行号法对文件重新生成极敏感;更稳的是用 awk 匹配表名边界(脚本化)。