程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL MyISAM表結構的恢復

MySQL MyISAM表結構的恢復

編輯:MySQL綜合教程

MySQL MyISAM表結構的恢復   MySQL MyISAM表結構的恢復方法是怎樣的呢?這是很多人都提過的問題,下面就為您詳細介紹MySQL MyISAM表結構的恢復方法,供您參考。 MySQL MyISAM類型的表恢復相對比較簡單。 同樣先假定需要恢復的表的FRM文件為test_myisam.frm,表結構為 mysql> create table test_myisam       -> (A int(11) default NULL,       -> B varchar(30) default NULL,       -> C date default NULL) engine=myisam;   Query OK, 0 rows affected (0.05 sec)     恢復過程如下: 1. 直接將test_myisam.frm拷貝到正常數據庫對應的數據目錄下。這時測試 mysql> show tables;   +--------------+   | Tables_in_aa |   +--------------+   | test_innodb |   | test_myisam |   +--------------+   3 rows in set (0.00 sec)     mysql> desc test_myisam;   ERROR 1017 (HY000): Can't find file: 'test_myisam' (errno: 2)     發現只能通過show tables命令看見表名,但是表結構還是沒有恢復,desc命令報錯。 2. 在與test_myisam.frm同一目錄建立以下2個文件,文件內容可以為空: test_myisam.MYD test_myisam.MYI 3. 在MYSQL命令行使用MYSQL本身的數據表恢復命令repair命令恢復表,如下: mysql> repair table test_myisam USE_FRM;   +-----------------+--------+----------+----------+   | Table           | Op     | Msg_type | Msg_text |   +-----------------+--------+----------+----------+   | aa.test_myisam | repair | status   | OK       |   +-----------------+--------+----------+----------+   1 row in set (0.00 sec)     根據結果可以知道,恢復命令執行成功,下邊用desc命令測試下: mysql> desc test_myisam;   +-------+-------------+------+-----+---------+-------+   | Field | Type        | Null | Key | Default | Extra |   +-------+-------------+------+-----+---------+-------+   | A     | int(11)     | YES |     | NULL    |       |   | B     | varchar(30) | YES |     | NULL    |       |   | C     | date        | YES |     | NULL    |       |   +-------+-------------+------+-----+---------+-------+   3 rows in set (0.02 sec)     果然恢復成功了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved