重建或修復 MySQL 表或索引

WBOY
發布: 2023-09-03 10:57:02
轉載
901 人瀏覽過

重建或修复 MySQL 表或索引

表和索引的改變是指MySQL處理資料型別和字元集的方式。 CHECK TABLE、mysqlcheck 或 mysql_upgrade 報告必要的表修復或升級。

重建表格

重建表的方法有很多種。下面列出了其中一些方法-

  • 轉儲和重新載入方法

  • #ALTER TABLE 方法

  • 修復表方法

讓我們簡單了解它們-

轉儲和重新載入方法

如果由於不同版本的MySQL 版本在二進位(就地)升級或下載後無法處理表而需要重建表,則需要使用此轉儲和重新載入方法.

表可以透過轉儲和重新載入來重建。這可以透過使用“mysqldump”並建立轉儲檔案並允許 mysql 重新載入該檔案來完成。這可以使用以下命令來完成 -

mysqldump db_name t1 > dump.sql mysql db_name < dump.sql
登入後複製

如果必須在單一資料庫中重建所有表,則可以指定資料庫名稱而不使用任何表名稱。可以使用以下指令來完成 -

mysqldump db_name > dump.sql mysql db_name < dump.sql
登入後複製

如果所有資料庫中的所有資料表都必須重建,則必須使用「−−所有資料庫」選項。可以使用以下命令來完成 -

mysqldump --all-databases > dump.sql mysql < dump.sql
登入後複製

ALTER TABLE 方法

如果需要使用 ALTER TABLE 方法重建表,則可以使用「null」變更。可以使用 ALTER TABLE 語句來更改表,以便它可以使用儲存引擎。讓我們舉個例子:假設TblName是一個InnoDB表,下面的語句可以用來重建表-

ALTER TABLE TblName ENGINE = InnoDB;
登入後複製

REPAIR TABLE 方法

REPAIR TABLE 方法只適用於MyISAM、ARCHIVE 和CSV 表。如果表格檢查操作表示檔案已損壞或需要升級,則可以使用語句 REPAIR TABLE。讓我們舉個例子:為了修復 MyISAM 表,可以執行以下語句 -

REPAIR TABLE TblName;
登入後複製

mysqlcheck --repair 提供對 REPAIR TABLE 語句的命令列存取。這可能是修復表的更方便的方法,因為您可以使用 --databases 來修復資料庫中的特定表,或使用 --all-databases 選項來修復所有資料庫中的所有表。可以使用以下命令來完成 -

mysqlcheck −−repair −−databases db_name ... mysqlcheck −−repair −−all−databases
登入後複製

以上是重建或修復 MySQL 表或索引的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!