最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL數(shù)據(jù)庫表修復(fù) MyISAM

 更新時間:2014年06月29日 14:02:18   投稿:mdxy-dxy  
這篇文章主要介紹了MySQL數(shù)據(jù)庫表修復(fù) MyISAM ,需要的朋友可以參考下

一:MySQL中MyISAM表損壞原因總結(jié):

1、 服務(wù)器突然斷電導(dǎo)致數(shù)據(jù)文件損壞;強制關(guān)機,沒有先關(guān)閉mysql 服務(wù);mysqld 進程在寫表時被殺掉。
2、 磁盤損壞。
3、 服務(wù)器死機。
4、 mysql 本身的bug 。

二:MySQL中MyISAM表損壞的癥狀總結(jié):

1 、查詢數(shù)據(jù)時報出錯誤:Incorrect key file for table: '...'. Try to repair it
2 、查詢不能在表中找到行或返回不完全的數(shù)據(jù)。
3 、Error: Table '...' is marked as crashed and should be repaired 。
4 、打開表失?。?Can't open file: ‘×××.MYI' (errno: 145) 。

三:MySQL中MyISAM表損壞的預(yù)防:

1 、定期檢查MyISAM 表。可以使用myisamchk,也可以使用mysqlcheck,還可以使用check table。
2 、在做過大量的更新或刪除操作后,使用mysqlcheck或者optimize table來優(yōu)化表,這樣既減少了文件碎片,又減少了表損壞的概率。 3 、關(guān)閉服務(wù)器前,先關(guān)閉mysqld (正常關(guān)閉服務(wù),不要使用kill -9 來殺進程)。
4 、使用ups 電源,避免出現(xiàn)突然斷電的情況。
5 、使用最新的穩(wěn)定發(fā)布版mysql ,減少mysql 本身的bug 導(dǎo)致表損壞。
6 、對磁盤做raid ,減少磁盤出錯并提高性能。
7 、數(shù)據(jù)庫服務(wù)器最好只跑mysqld 和必要的其他服務(wù),不要跑其他業(yè)務(wù)服務(wù),這樣減少死機導(dǎo)致表損壞的可能。

四:MySQL中MyISAM表損壞的修復(fù)總結(jié):

1 、如果mysqld已經(jīng)宕掉,且無法啟動,那么可以通過mysiamchk工具來進行修復(fù)。此工具在mysqld服務(wù)沒有啟動時才可以使用。該工具可以檢查并分析修復(fù)MyISAM表。
2 、如果mysqld仍在運行,或者可以重新啟動,那么可以通過mysqlcheck工具來進行修復(fù)。或者直接通過mysql的內(nèi)置修復(fù)SQL語句來修復(fù):CHECK TABLE,REPAIR TABLE ,ANALYSE TABLE,OPTIMIZE TABLE。這兩種方法可以同樣達到對表的修復(fù)作用。 以上兩種方式各有應(yīng)用場景。

MySQL數(shù)據(jù)表損壞的巧妙修復(fù) 修復(fù)mysql表之前首先要知道是哪個表出了問題

可以用root登錄后在information_schema里查找有問題的表名

select TABLE_SCHEMA as DB_DBNAME,TABLE_NAME from INFORMATION_SCHEMA.tables where engine is null;

可以通過事件查看器里是否有

應(yīng)用程序日志--類型為"錯誤"--事件來源為"Mysql"的錯誤日志,大概內(nèi)容為

1 xxxxx: Table '.xxxx' is marked as crashed and should be repaired

或者直接在phpmyadmin中查看有哪些表出了問題比如顯示“使用中”

如果查到問題表后,可以使用一下命令來修復(fù)mysql數(shù)據(jù)庫中的MYISAM表

1、check, repair

例如abc的test表有問題

復(fù)制代碼 代碼如下:

# mysql -u root -p 'abc';   //登錄mysql控制臺,并進入abc數(shù)據(jù)庫
mysql> check table test;  //如果有問題Msg_type里會有warning或error。沒有問題的話出現(xiàn)的結(jié)果Status是OK
mysql> repair table test;  // 修復(fù)test表(多個表名用“逗號”隔開)
mysql> check table test; // 再次檢查確認(rèn)是否修復(fù)成功

2. myisamchk, isamchk

其中myisamchk適用于MYISAM類型的數(shù)據(jù)表,而isamchk適用于ISAM類型的MySQL數(shù)據(jù)表。這兩條命令的主要參數(shù)相同,一般新的系統(tǒng)都使用MYISAM作為缺省的數(shù)據(jù)表類型,這里以myisamchk為例子進行說明。當(dāng)發(fā)現(xiàn)某個數(shù)據(jù)表出現(xiàn)問題時可以使用:

myisamchk tablename.MYI

進行檢測,如果需要修復(fù)的話,可以使用:

myisamchk -of tablename.MYI

關(guān)于myisamchk的詳細參數(shù)說明,可以參見它的使用幫助。需要注意的時在進行修改時必須確保MySQL服務(wù)器沒有訪問這個MySQL數(shù)據(jù)表,保險的情況下是最好在進行檢測時把MySQL服務(wù)器Shutdown掉。

mysqladmin -uroot -p shutdown

另外可以把下面的命令放在你的rc.local里面啟動MySQL服務(wù)器前:

[ -x /tmp/MySQL.sock ] && /pathtochk/myisamchk -of /DATA_DIR/*/*.MYI

其中的/tmp/MySQL.sock是MySQL監(jiān)聽的Sock文件位置,對于使用RPM安裝的用戶應(yīng)該是/var/lib/MySQL/MySQL.sock,對于使用源碼安裝則是/tmp/MySQL.sock可以根據(jù)自己的實際情況進行變更,而pathtochk則是myisamchk所在的位置,DATA_DIR是你的MySQL數(shù)據(jù)庫存放的位置。

需要注意的時,如果你打算把這條命令放在你的rc.local里面,必須確認(rèn)在執(zhí)行這條指令時MySQL服務(wù)器必須沒有啟動!

3、檢測修復(fù)所有數(shù)據(jù)庫(表)

復(fù)制代碼 代碼如下:

MySQLcheck -A -o -r -p
mysqlcheck --all-databases -r

相關(guān)文章

  • Linux下mysql 5.7 部署及遠程訪問配置

    Linux下mysql 5.7 部署及遠程訪問配置

    這篇文章主要為大家詳細介紹了Linux下mysql 5.7 部署及遠程訪問的配置方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • MySQL主從同步中的server-id示例詳解

    MySQL主從同步中的server-id示例詳解

    這篇文章主要給大家介紹了關(guān)于MySQL主從同步中server-id的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學(xué)習(xí)或者使用MySQL具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • SQL基礎(chǔ)的查詢語句

    SQL基礎(chǔ)的查詢語句

    這篇文章主要給大家分享的是SQL基礎(chǔ)的查詢語句,SQL語句中,查詢是使用最多的操作,SQL不僅能夠查詢表中的數(shù)據(jù),還可以返回算術(shù)運算、表達式的結(jié)果等,接下來就一起了解一下基本的查詢語句,需要的朋友可以參考一下
    2021-11-11
  • mysql臨時表用法分析【查詢結(jié)果可存在臨時表中】

    mysql臨時表用法分析【查詢結(jié)果可存在臨時表中】

    這篇文章主要介紹了mysql臨時表用法,結(jié)合實例形式分析了MySQL將查詢結(jié)果存儲在臨時表中的相關(guān)操作技巧,需要的朋友可以參考下
    2019-08-08
  • Mysql 自定義隨機字符串的實現(xiàn)方法

    Mysql 自定義隨機字符串的實現(xiàn)方法

    前段時間接了一個項目,需要用到隨機字符串,但是mysql的庫函數(shù)沒有直接提供,需要我們自己實現(xiàn)此功能,下面小編給大家介紹下Mysql 自定義隨機字符串的實現(xiàn)方法,需要的朋友參考下吧
    2016-08-08
  • mysql空間函數(shù)計算坐標(biāo)距離方式

    mysql空間函數(shù)計算坐標(biāo)距離方式

    文章介紹了如何使用MySQL的空間函數(shù)`st_distance`和`st_distance_sphere`計算兩點之間的距離,并對比了兩種方法的準(zhǔn)確性,`st_distance`函數(shù)計算的是兩點間的度數(shù),需要乘以111195轉(zhuǎn)換為米,但因每度長度不一致會有誤差
    2025-02-02
  • Mysql中STR_TO_DATE函數(shù)使用(字符串轉(zhuǎn)為日期/時間值)

    Mysql中STR_TO_DATE函數(shù)使用(字符串轉(zhuǎn)為日期/時間值)

    這篇文章主要給大家介紹了關(guān)于Mysql中STR_TO_DATE函數(shù)使用的相關(guān)資料,STR_TO_DATE函數(shù)的主要功能是字符串轉(zhuǎn)為日期/時間值,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • mysql 的indexof函數(shù)用法說明

    mysql 的indexof函數(shù)用法說明

    這篇文章主要介紹了mysql 的indexof函數(shù)用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Windows7下Python3.4使用MySQL數(shù)據(jù)庫

    Windows7下Python3.4使用MySQL數(shù)據(jù)庫

    這篇文章主要為大家詳細介紹了Windows7下Python3.4使用MySQL數(shù)據(jù)庫,MySQL Community Server的安裝步驟,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-07-07
  • SQL常用的四個排序函數(shù)梳理

    SQL常用的四個排序函數(shù)梳理

    這篇文章主要介紹了SQL常用的四個排序函數(shù)梳理,四個排序函數(shù)分別是SQL?Server排序中經(jīng)常用到的ROW_NUMBER()、RANK()、DENSE_RANK()、NTILE()、下文簡單分享,需要的小伙伴可以參考一下
    2022-07-07

最新評論

玉龙| 鹤壁市| 武威市| 汽车| 宁海县| 玉树县| 黄浦区| 齐河县| 元阳县| 武川县| 太康县| 盐津县| 加查县| 崇义县| 土默特右旗| 房产| 石楼县| 沽源县| 临江市| 中阳县| 宝山区| 清徐县| 呼伦贝尔市| 大冶市| 民县| 东平县| 岱山县| 北安市| 吉林市| 潼关县| 弥勒县| 旌德县| 读书| 龙山县| 河间市| 江达县| 鹤庆县| 太仓市| 玉树县| 灯塔市| 玉溪市|