Mysql存储引擎MyISAM的常见问题(表损坏、无法访问、磁盘空间不足)

所属分类: 数据库 / Mysql 阅读数: 1614
收藏 0 赞 0 分享

本文为大家分享了解决Mysql存储引擎MyISAM常见问题的方法,供大家参考,具体内容如下

一、处理MyISAM存储引擎的表损坏

在使用MySQL,可能会遇到过MyISAM存储引擎的表损坏的情况。如以下情况:

.frm被锁定不能修改

找不到.myi文件(索引文件)

意外结束记录

文件被毁坏

从表处理器得到错误nnn

解决办法1:

使用MySQL自带的myisamchk工具进行修复
打开bin目录,可以看到该工具

这里写图片描述 

命令如下
myisamchk -r tablename
r代表recover

myisamchk -o tablename
-o参数代表–safe-recover 可以进行更安全的修复

解决办法2:
使用MySQL的CHECK table和repair table命令进行修复
check table用来检查表是否有损坏,repair table用来对坏表进行修复。

二、MyISAM表过大,无法访问问题

首先我们可以通过myisamchk命令来查看MyISAM表的情况。如下图,我查看admin表

这里写图片描述 

datefile length代表当前文件大小
keyfile length代表索引文件大小
max datefile length 代表最大文件大小
max keyfile length 代表最大索引大小
可以通过如下命令来进行扩展数据文件大小
alter table table_name MAX_ROWS=88888888 AVG_ROW_LE=66666

三、数据目录磁盘空间不足

1、针对MyISAM存储引擎

可以将数据目录和索引目录存储到不同的磁盘空间。

2、针对InnoDB存储引擎

对于InnoDB存储引擎的表,因为数据文件和索引文件时存放在一起的。所以无法将他们分离。当磁盘空间出现不足时候,可以增加一个新的数据文件,这个文件放在有充足空间的磁盘上。具体实现是通过InnoDB_data_file_path中增加此文件。
innodb_data_file_path=/home/mysql/data:10000M;/user/mysql/data:10000M:autoextend
参数修改之后,需要重启服务器,才可以生效。

四、同一台主机上安装多个Mysql

除了每个Mysql安装目录不能相同外,还需要的是port和socket不能一样。
mysql.sock就是客户端连接与mysql间通信用的。socket文件,只能本机使用,远程连接要通过tcp/ip了。

以上就是Mysql存储引擎MyISAM常见问题解析,谢谢大家的阅读。

更多精彩内容其他人还在看

mysql found_row()使用详解

在参考手册中对found_rows函数的描述是: it is desirable to know how many rows the statement would have returned without the LIMIT. 也就是说,它返回值是如果SQL语句没有加LI
收藏 0 赞 0 分享

很全面的MySQL处理重复数据代码

这篇文章主要为大家详细介绍了MySQL处理重复数据的实现代码,如何防止数据表出现重复数据及如何删除数据表中的重复数据,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

图文详解Ubuntu下安装配置Mysql教程

这篇文章主要以图文结合的方式详细为大家介绍了Ubuntu安装配置Mysql的实现步骤,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Ubuntu下mysql安装和操作图文教程

这篇文章主要为大家详细分享了Ubuntu下mysql安装和操作图文教程,喜欢的朋友可以参考一下
收藏 0 赞 0 分享

Linux/UNIX和Window平台上安装Mysql

这篇文章主要为大家详细介绍了Linux/UNIX和Window两个系统上采用命令安装Mysql的方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

忘记MySQL的root密码该怎么办

忘记密码总是一件令人头疼的事情,当我们忘记了MySQL的root密码该怎么办?本文给出解决方法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Mysql存储引擎MyISAM的常见问题(表损坏、无法访问、磁盘空间不足)

这篇文章主要介绍了Mysql存储引擎MyISAM的常见问题,针对表损坏、无法访问、磁盘空间不足等问题进行解决,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

VS2013连接MySQL5.6成功案例一枚

这篇文章主要为大家分享了VS2013连接MySQL5.6成功案例一枚,很有实用性,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Windows下mysql修改root密码的4种方法

这篇文章主要为大家详细介绍了windows下mysql修改root密码的4种方法,大家可以根据的自己的实际情况进行选择,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

mysql Sort aborted: Out of sort memory, consider increasing server sort buffer size的解决方法

这篇文章主要介绍了mysql Sort aborted: Out of sort memory, consider increasing server sort buffer size的解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多