位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享Mysql存储引擎MyISAM的常见问题(表损坏、无法访问、磁盘空间不足)(mysql存储引擎面试题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql存储引擎myisam,mysql存储引擎的作用,mysql存储引擎myisam,mysql存储引擎的数据结构,mysql存储引擎的区别,mysql存储引擎myisam,mysql存储引擎myisam,mysql存储引擎myisam,内容如对您有帮助,希望把文章链接给更多的朋友!

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

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

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

.frm被锁定不能修改

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

意外结束记录

文件被毁坏

从表处理器得到错误nnn

解决办法1:

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

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

命令如下 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= AVG_ROW_LE=

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

1、针对MyISAM存储引擎

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

2、针对InnoDB存储引擎

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

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

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

本文链接地址:https://www.jiuchutong.com/biancheng/347232.html 转载请保留说明!

上一篇:忘记MySQL的root密码该怎么办

下一篇:VS2013连接MySQL5.6成功案例一枚(vs2019连接mysql)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络