Mysql存儲(chǔ)引擎MyISAM的常見問題(表損壞、無法訪問、磁盤空間不足)
本文為大家分享了解決Mysql存儲(chǔ)引擎MyISAM常見問題的方法,供大家參考,具體內(nèi)容如下
一、處理MyISAM存儲(chǔ)引擎的表損壞
在使用MySQL,可能會(huì)遇到過MyISAM存儲(chǔ)引擎的表損壞的情況。如以下情況:
.frm被鎖定不能修改
找不到.myi文件(索引文件)
意外結(jié)束記錄
文件被毀壞
從表處理器得到錯(cuò)誤nnn
解決辦法1:
使用MySQL自帶的myisamchk工具進(jìn)行修復(fù)
打開bin目錄,可以看到該工具
命令如下
myisamchk -r tablename
r代表recover
或
myisamchk -o tablename
-o參數(shù)代表–safe-recover 可以進(jìn)行更安全的修復(fù)
解決辦法2:
使用MySQL的CHECK table和repair table命令進(jìn)行修復(fù)
check table用來檢查表是否有損壞,repair table用來對(duì)壞表進(jìn)行修復(fù)。
二、MyISAM表過大,無法訪問問題
首先我們可以通過myisamchk命令來查看MyISAM表的情況。如下圖,我查看admin表
datefile length代表當(dāng)前文件大小
keyfile length代表索引文件大小
max datefile length 代表最大文件大小
max keyfile length 代表最大索引大小
可以通過如下命令來進(jìn)行擴(kuò)展數(shù)據(jù)文件大小
alter table table_name MAX_ROWS=88888888 AVG_ROW_LE=66666
三、數(shù)據(jù)目錄磁盤空間不足
1、針對(duì)MyISAM存儲(chǔ)引擎
可以將數(shù)據(jù)目錄和索引目錄存儲(chǔ)到不同的磁盤空間。
2、針對(duì)InnoDB存儲(chǔ)引擎
對(duì)于InnoDB存儲(chǔ)引擎的表,因?yàn)閿?shù)據(jù)文件和索引文件時(shí)存放在一起的。所以無法將他們分離。當(dāng)磁盤空間出現(xiàn)不足時(shí)候,可以增加一個(gè)新的數(shù)據(jù)文件,這個(gè)文件放在有充足空間的磁盤上。具體實(shí)現(xiàn)是通過InnoDB_data_file_path中增加此文件。
innodb_data_file_path=/home/mysql/data:10000M;/user/mysql/data:10000M:autoextend
參數(shù)修改之后,需要重啟服務(wù)器,才可以生效。
四、同一臺(tái)主機(jī)上安裝多個(gè)Mysql
除了每個(gè)Mysql安裝目錄不能相同外,還需要的是port和socket不能一樣。
mysql.sock就是客戶端連接與mysql間通信用的。socket文件,只能本機(jī)使用,遠(yuǎn)程連接要通過tcp/ip了。
以上就是Mysql存儲(chǔ)引擎MyISAM常見問題解析,謝謝大家的閱讀。
相關(guān)文章
MySQL慢查詢查找和調(diào)優(yōu)測(cè)試
MySQL慢查詢查找和調(diào)優(yōu)測(cè)試,接下來詳細(xì)介紹,需要了解的朋友可以參考下2013-01-01詳解MySQL插入和查詢數(shù)據(jù)的相關(guān)命令及語句使用
這篇文章主要介紹了MySQL插入和查詢數(shù)據(jù)的相關(guān)命令及語句使用,包括相關(guān)的PHP腳本操作方法講解也很詳細(xì),需要的朋友可以參考下2015-11-11詳解數(shù)據(jù)庫varchar與char有哪些區(qū)別
CHAR和VARCHAR是MySQL中兩種最重要的字符串類型,兩者的原理和區(qū)別也是面試中高頻問題,如果是你,會(huì)從哪幾個(gè)角度去回答這個(gè)問題呢?今天,我給大家總結(jié)了一下相關(guān)知識(shí)點(diǎn),感興趣的朋友一起看看吧2023-10-10Mysql報(bào)Table?'mysql.user'?doesn't?exist問題的解
這篇文章主要給大家介紹了關(guān)于Mysql報(bào)Table?'mysql.user'?doesn't?exist問題的解決方法,初學(xué)者可能會(huì)遇到這個(gè)問題,文中通過圖文將解決方法介紹的非常詳細(xì),需要的朋友可以參考下2022-05-05MySQL5.6.31 winx64.zip 安裝配置教程詳解
這篇文章主要介紹了MySQL5.6.31 winx64.zip 安裝配置教程詳解,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-02-02DBeaver連接mysql數(shù)據(jù)庫圖文教程(超詳細(xì))
本文主要介紹了DBeaver連接mysql數(shù)據(jù)庫圖文教程,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07Mysql計(jì)算字段長(zhǎng)度函數(shù)之CHAR_LENGTH函數(shù)
mysql中計(jì)算字符串長(zhǎng)度有兩個(gè)函數(shù)分別為char_length和length,char_length函數(shù)可以計(jì)算unicode字符,下面這篇文章主要給大家介紹了關(guān)于Mysql計(jì)算字段長(zhǎng)度函數(shù)之CHAR_LENGTH函數(shù)的相關(guān)資料,需要的朋友可以參考下2023-05-05