mysql下表的修复与优化
在很多的linux生产服务器里很多时候用数据库是mysql,在数据库里算是轻量级的数据库,但是长期以来的使用往往会出现一些问题,一般的状况是无法读取表,此时我们就要来修复表、优化表,减小磁盘使用量,以方便数据库的备份。
在用root用户进入mysql中,进入表所在的库
REPAIR TABLE `table_name` 修复表
OPTIMIZE TABLE `table_name` 优化表
REPAIR TABLE 的作用是用于修复表,而OPTIMIZE TABLE 用于回收闲置的数据库空间,当表上的数据行被删除时,所占据的磁盘空间并没有立即被回收,使用了OPTIMIZE TABLE命令后这些空间将被回收,并且对磁盘上的数据行进行重排。其中OPTIMIZE TABLE在很多时候不一定要运行,只要在批量删除后,或者做一个定期,比如一周一次或者一个月一次这样对表进行优化,以减小表数据占据磁盘空间。当然在修复的过程中还要注意mysql表文件table_name.frm的文件属性,因为有的时候在编译版的mysql没有init.d中的启动脚本时,都是用mysql下bin目录下的mysqld_safe工具启动的,有的时候如果没有指定启动用户或启动的用户不是mysql软件所用的用户启动,mysql的表文件都会有问题,会出现无法读取文件等等一系列的问题,如此,在有的时候我们还要用chown修改mysql表文件的权限以实现修复。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341