很多時候我們需要從mysqldump備份檔案中恢復出一張表,通常的做法可能是先把sql 檔案恢復到乙個測試
資料庫,然後再使用
mysqldump 匯出一張表,再恢復到線上,這樣,如果資料量不大這方法是可行的,但是你依然需要有乙個測試機器或者臨時建立乙個庫,不是很方便,下面為大家介紹的方法,避免了上述問題的困擾:
1,使用 awk
可以先到原資料庫中使用 'show tables;' 檢視資料庫表的列表,注意,此列表已經按照字母排序 比如,
table1
table2
table3
然後使用awk 來過濾sql語句,假設你要恢復 table2 表,可以使用下面的語句
1
]# awk 『/^
-- table structure for table .table2./,/^-- table structure for table .table3./』 mydumpfile.sql > /tmp/recovered_table.sql
2,使用sed
方法和上面相同
假設你要恢復 table2 表,可以使用下面的語句
1
cat mydumpfile.sql | sed -n -e
'/table structure for table .test1./,/table structure for table .test2./p'
> /tmp/extracted_table.sql
然後就可以將過濾出來的 .sql檔案導入庫中就完成了恢復。
快速從mysqldump檔案中恢復乙個表
快速從較大的mysqldump檔案中恢復乙個表到資料庫中 1.先獲取目標表 md gas check record 在檔案中的位置 publish lf pro db 01 cat dbyy0717.sql grep drop drop table if exists md gas cardmete...
從mysqldump整庫備份檔案中恢復單錶
最近,系統更新出現了問題,比較緊急,需要對三張表進行回檔。由於我們都是採用mysqldump進行每天全備整庫,資料量比較大,乙個備份檔案大概有70g,需要從這個70g檔案中恢復三張表,真是蛋疼至極啊,搞了整整乙個下午,下面就介紹下具體操作。1 採用grep查詢 由於mysqldump檔案匯出的是in...
從mysqldump的備份檔案中恢復一張表
有時需從mysqldump備份檔案恢復一張表的資料,通常有兩種做法 1 將整個檔案匯入測試server中,再mysqldump匯出需要的表,再匯入線上server。如果庫的量很少,這樣倒是也不慢,可當庫的量有一定的級別了,就會很慢。很可能備份時使用了壓縮,再需要解壓縮的步驟。2 通過mysql sh...