Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL的MyISAM存储引擎修复及修改最大文件大小

WBOY
Freigeben: 2016-06-07 17:40:05
Original
813 Leute haben es durchsucht

前两天生产库上出现了一个不大不小的故障,关于MySQL的存储引擎问题。这个故障所涉及到的是MySQL4.1.20的版本MyISAM存储引擎,一张1千多万的表。故障现象:在做

 前两天生产库上出现了一个不大不小的故障,关于MySQL 的存储引擎问题。

这个故障所涉及到的是MySQL 4.1.20的版本MyISAM存储引擎,一张1千多万的表。

故障现象:

在做简单的SELECT查询的时候没有问题,但是做连接查询或者其他复杂查询的时候就报错了:具体的错误代码由于时间的问题被遗忘了。在系统日志中记录的错误如下图:

从错误信息中可以猜到了大概:存储引擎出了问题。

进到相应的数据库目录下,服务器空间,香港服务器,查看一下数据文件大小,有4G大小,这就不奇怪了.

MySQL 4版本的数据库创建的表默认最大文件大小就是4G 也就是说那个表满了,无法在插入数据了。其实版本4是支持超过4G数据文件大小的,需要在创建表的时候加上这么一句话: MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000 。

执行myisamchk -dvv    表名字显示属性信息: 

然后更改表的最大文件大小

alter table  table_name  MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000;

执行这个修改时间比较长,大约在几个小时。

检查修改结果:

其中:Datafile length   4095052564  =4G

  Max datafile length  281474976710654  就远远超过G这个单位了。

MySQL 版本5默认已经支持 Max datafile length  281474976710654  就不用在创建表的时候添加MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000 参数了。

 

 

本文出自 “影子骑士” 博客,服务器空间,请务必保留此出处

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!