您好,登錄后才能下訂單哦!
怎么在MySQL中使用全庫備份數據恢復單表數據?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
提取建表語句
sed -e '/./{H;$!d;}' -e 'x;/CREATE TABLE `表名`/!d;q' mysqldump.sql(備份文件的文件名)
sed -e '/./{H;$!d;}' -e 'x;/CREATE TABLE `fdc_document`/!d;q' fdcsqlmysql-2018_11_30-03_00_01.sql DROP TABLE IF EXISTS `fdc_document`; /*!40101 SET @saved_cs_client = @@character_set_client */; /*!40101 SET character_set_client = utf8 */; CREATE TABLE `fdc_document` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '文檔ID', `uid` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '用戶ID', `name` char(40) NOT NULL DEFAULT '' COMMENT '標識', ... ... ... `entrust_rule` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT ' 經紀人點擊是否和用戶簽委托協議:1為有;0為沒有', `audit` tinyint(3) NOT NULL DEFAULT '0' COMMENT '審核:0為未審核;1為圖片已審核;2為描述已審核;3為圖片和描述都已審核', PRIMARY KEY (`id`), KEY `idx_area_house` (`partition`,`category_id`,`status`,`is_off`) USING BTREE, KEY `idx_model_house` (`model_id`,`status`,`is_off`) USING BTREE, KEY `idx_community_house` (`community_id`,`estate`,`status`,`is_off`) USING BTREE, KEY `idx_uid_house` (`uid`,`model_id`,`is_off`) USING BTREE, KEY `idx_pid_house` (`id`,`pid`,`status`,`is_off`) USING BTREE, KEY `is_video` (`is_video`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=211138 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */;
提取表數據
grep 'INSERT INTO表名' mysqldump.sql(備份文件的文件名) > table_data.sql
這里應該執行grep 'INSERT INTOfdc_document' fdcsqlmysql-2018_11_30-03_00_01.sql > document.sql
執行完后會得到文件document.sql,這就是需要的單獨的表文件,就可以正常恢復表數據了
建庫建表
先創建數據庫,再根據上面的SQL語句創建表fdc_document
導入表數據
MySQL [document]> souce /data/backup/mysql/document.sql
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。