MySQL全備份如何只恢復一個庫或者一個表?

在實際工作中抛姑,一個MySQL實例中可能有多個database赞厕。而我們備份時,通常采用完全備份定硝,將所有database都備份到一個文件中坑傅。

但是,偶爾會遇到只恢復一個database或者一個表的情況喷斋。怎么解決呢?科多大數(shù)據(jù)帶你來看看。

一蒜茴、利用全備恢復一個庫(database)的數(shù)據(jù)

案例:朋友在群里問星爪, MySQL全庫備份。如何只恢復一個庫?

1粉私、采用–one-database 選項顽腾。不建議使用該方式,經(jīng)常出現(xiàn)問題诺核。

# mysql -uroot -pxx -D db1 -o

2抄肖、從全備份文件中將需要的庫的建表語句和INSERT數(shù)據(jù)拿出來,然后再導入

# sed -n '/^-- Current Database: `db1`/,/^-- Current Database: `/p' all.dmp > db1.sql

# mysql -uroot -pxx -D db1

二窖杀、利用全備恢復一張表(table)的數(shù)據(jù)

生產(chǎn)中遇到開發(fā)同事更新表時未加上where條件漓摩,造稱 order_status 列所有數(shù)據(jù)都被更新為0.

通常,mysqldump對全庫進行備份入客」鼙校恢復時如果恢復全庫,太耗時間又沒有必要桌硫。所以夭咬,我們只恢復想要的表即可。

mysqldump備份中铆隘,既有表結(jié)構(gòu)卓舵,又有INSERT INTO語句包含數(shù)據(jù)。所以獲得者兩部分內(nèi)容即可膀钠。

1掏湾、獲得表結(jié)構(gòu)

# sed -e'/./{H;$!d;}' -e 'x;/CREATE TABLE `ecs_ugo_order_info`/!d;q' mysqldump_2017-05-23.sql

2、獲得INSERT INTO 語句托修,用于數(shù)據(jù)的恢復

# grep -i 'INSERT INTO `ecs_ugo_order_info`' mysqldump_2017-05-23.sql >data.sql &

3忘巧、根據(jù)得到的表結(jié)構(gòu)創(chuàng)建表,并導入數(shù)據(jù)

mysql -uroot -pxxx xx

4睦刃、拼接update語句

mysql> select concat('update xx.ecs_ugo_order_info set order_status=',order_status,' where order_id=',order_id,';') from ecs_ugo_order_info into outfile '/tmp/ecs_ugo_order_info_rercovery.sql';

結(jié)果如下:

1.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254778;

2.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254824;

3.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254870;

5砚嘴、在生產(chǎn)庫中將order_status恢復成正常值

# mysql -uroot -pxxx xx < /tmp/ecs_ugo_order_info_rercovery.sql

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子际长,更是在濱河造成了極大的恐慌耸采,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件工育,死亡現(xiàn)場離奇詭異虾宇,居然都是意外死亡,警方通過查閱死者的電腦和手機如绸,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進店門嘱朽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人怔接,你說我怎么就攤上這事搪泳。” “怎么了扼脐?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵岸军,是天一觀的道長。 經(jīng)常有香客問我瓦侮,道長艰赞,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任肚吏,我火速辦了婚禮方妖,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘须喂。我一直安慰自己吁断,他們只是感情好,可當我...
    茶點故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布坞生。 她就那樣靜靜地躺著仔役,像睡著了一般。 火紅的嫁衣襯著肌膚如雪是己。 梳的紋絲不亂的頭發(fā)上又兵,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天,我揣著相機與錄音卒废,去河邊找鬼沛厨。 笑死,一個胖子當著我的面吹牛摔认,可吹牛的內(nèi)容都是我干的逆皮。 我是一名探鬼主播,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼参袱,長吁一口氣:“原來是場噩夢啊……” “哼电谣!你這毒婦竟也來了秽梅?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤剿牺,失蹤者是張志新(化名)和其女友劉穎企垦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體晒来,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡钞诡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了湃崩。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片荧降。...
    茶點故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖攒读,靈堂內(nèi)的尸體忽然破棺而出誊抛,到底是詐尸還是另有隱情,我是刑警寧澤整陌,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站瞎领,受9級特大地震影響泌辫,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜九默,卻給世界環(huán)境...
    茶點故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一震放、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧驼修,春花似錦殿遂、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至耳峦,卻和暖如春恩静,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蹲坷。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工驶乾, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人循签。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓级乐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親县匠。 傳聞我的和親對象是個殘疾皇子风科,可洞房花燭夜當晚...
    茶點故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 在編寫shell腳本的時候,可能會遇到操作mysql數(shù)據(jù)庫的情況撒轮。下面介紹如何在shell腳本中操作mysql數(shù)據(jù)...
    ifcoder閱讀 2,587評論 0 2
  • MySQL 數(shù)據(jù)庫常用命令 1、MySQL常用命令 create database name; 創(chuàng)建數(shù)據(jù)庫 use...
    55lover閱讀 4,772評論 1 57
  • 1.1丐重、常用數(shù)據(jù)庫包括:Oracle腔召、MySQL、SQLServer扮惦、DB2臀蛛、SyBase等 1.2、Navica...
    NOX_5d2b閱讀 3,340評論 0 0
  • 米爾頓·弗里德曼在他的學術(shù)生涯中涉及經(jīng)濟學當中的許多領(lǐng)域崖蜜,他甚至多次參與到了非常重要的政策制定決策浊仆,并在公...
    小小杠桿閱讀 702評論 1 3
  • 女人要活得體面活得漂亮,是一定要獨立的豫领。經(jīng)濟獨立抡柿,精神獨立,人格獨立等恐。排在第一位的是經(jīng)濟獨立洲劣,經(jīng)濟是基礎(chǔ),決定上層...
    敏淇凝瑞旗袍閱讀 794評論 0 1