婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > mysql表物理文件被誤刪的解決方法

mysql表物理文件被誤刪的解決方法

熱門標(biāo)簽:神行者百貨商場(chǎng)地圖標(biāo)注 外呼系統(tǒng)線路經(jīng)常出問(wèn)題嗎 地圖標(biāo)注百度競(jìng)價(jià) 外呼系統(tǒng)怎樣才能不封號(hào) 地圖標(biāo)注什么軟件好用 安陽(yáng)手機(jī)自動(dòng)外呼系統(tǒng)原理是什么 如何辦理400客服電話 西藏地圖標(biāo)注改進(jìn)點(diǎn) 地圖標(biāo)注專員入駐

前言

      1、該方法只介紹了如何救回這個(gè)表名(數(shù)據(jù)不恢復(fù)) 如果想要恢復(fù)原來(lái)數(shù)據(jù) 直接用extundelete把文件恢復(fù)后放回去即可

      2、并且是適用于平時(shí)沒(méi)有全備的情況下  如果有全備 直接那全備的frm和idb文件放回去 就可以了

      3、該方法同樣適用于數(shù)據(jù)表遷移(只遷移一個(gè)表)  因?yàn)閐iscard再import的速度 遠(yuǎn)比先dump再恢復(fù)的速度要快得多

建議: 平時(shí)備份一下表結(jié)構(gòu)是非常重要的

-- 如果你直接刪除了mysql的表文件 (.frm .idb)  在mysql5.6 可能你就悲劇了  可能再也用不回這個(gè)表名了

例子如下

-- 全在datadir目錄下操作

-- 直接刪除了表 tracking20160501的物理文件

rm -rf tracking20160501.*       
-- 刪除了表tracking20160501的frm文件和idb文件

-- 此時(shí)在數(shù)據(jù)庫(kù)已經(jīng)看不到該表

mysql> show tables;                            
-- 查看數(shù)據(jù)庫(kù)表

-- 但若想再創(chuàng)建該表或刪除該表  也許就悲劇了

mysql> create table tracking20160501(id int);
ERROR 1050 (42S01): Table 'tracking20160501' already exists            
-- 明明已經(jīng)看不到該表了 卻顯示表已存在
mysql> drop table tracking20160501;
ERROR 1051 (42S02): Unknown table 'kdnet_analyze.tracking20160501'    
-- 悲劇了吧 創(chuàng)建不到也刪不到。。

-- 查看一下現(xiàn)在的物理文件情況

ls tracking20160501.*
tracking20160501.ibd               
 -- 之前刪除了的表空間文件 他自己又創(chuàng)建了個(gè)出來(lái) 可能是剛剛的create table命令導(dǎo)致的 這里不用理

原因: 由于直接刪除了表的物理文件 但mysql的信息庫(kù) information_schema 或 mysql 庫(kù)對(duì)該表的信息還存在(具體記在哪里 還沒(méi)找出來(lái)) 導(dǎo)致mysql還認(rèn)為該表存在 所以創(chuàng)建不了 刪除表時(shí)由于又找不到對(duì)應(yīng)的物理文件 所以也刪除不了  這樣!! 難道這個(gè)表名就無(wú)法再用了嗎? 

有解決方法 如下

-- 找其他表(最好是表結(jié)構(gòu)一樣的) 這里找的表叫ip_taobao 先復(fù)制這個(gè)表的.frm(表結(jié)構(gòu))文件 改名為誤刪的表名

cp -a ip_taobao.frm tracking20160501.frm            
-- 這里為了保持mysql文件的擁有人和所屬組 所以使用-a參數(shù)

-- 如果下面的操作有什么奇葩問(wèn)題 可以重啟一下數(shù)據(jù)庫(kù)
-- 在mysql里 使用discard space命令 廢棄誤刪表的表空間文件

alter table tracking20160501 discard tablespace;

-- 再?gòu)?fù)制ip_taobao表的表空間文件 改名為誤刪的表名

cp -a ip_taobao.ibd tracking20160501.ibd            -- 同樣使用-a 保持擁有人和所屬組

-- 在mysql里 使用import space命令 導(dǎo)入新的表空間文件

mysql> alter table tracking20160501 import tablespace;       -- 導(dǎo)入時(shí)間可能會(huì)長(zhǎng)點(diǎn)
Query OK, 0 rows affected, 5 warnings (7 min 36.94 sec)

-- 現(xiàn)在可以正常查詢、刪除和創(chuàng)建回這個(gè)表了

mysql> select * from tracking20160501 limit 1
mysql> drop table tracking20160501;
mysql> create table tracking20160501(id int);

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作能帶來(lái)一定的幫助,如果有疑問(wèn)大家可以留言交流。

您可能感興趣的文章:
  • MySQL數(shù)據(jù)誤刪除的快速解決方法(MySQL閃回工具)
  • mysql 找回誤刪表的數(shù)據(jù)方法(必看)
  • 關(guān)于mysql數(shù)據(jù)庫(kù)誤刪除后的數(shù)據(jù)恢復(fù)操作說(shuō)明
  • mysql誤刪root用戶恢復(fù)方法
  • mysql 誤刪除ibdata1之后的恢復(fù)方法
  • mysql誤刪root用戶或者忘記root密碼解決方法
  • Mysql誤刪數(shù)據(jù)解決方案及kill語(yǔ)句原理

標(biāo)簽:張掖 貴港 AXB 衡水 酒泉 阜陽(yáng) 雞西 萍鄉(xiāng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《mysql表物理文件被誤刪的解決方法》,本文關(guān)鍵詞  mysql,表,物理,文件,被,誤刪,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《mysql表物理文件被誤刪的解決方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于mysql表物理文件被誤刪的解決方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 吴忠市| 扶余县| 洛浦县| 宁波市| 卢氏县| 西青区| 台山市| 涞水县| 海城市| 鄂尔多斯市| 高雄市| 会宁县| 温泉县| 塔城市| 乌海市| 安仁县| 普安县| 洛南县| 台江县| 麻阳| 尖扎县| 阿图什市| 睢宁县| 嘉祥县| 胶南市| 南华县| 昌宁县| 兴和县| 郯城县| 桂林市| 周至县| 商城县| 金川县| 门头沟区| 宁海县| 西和县| 蓝田县| 大埔县| 巢湖市| 芒康县| 靖边县|