MYSQL教程MySQL实现MYISAM表批量压缩的方法

前端之家收集整理的这篇文章主要介绍了MYSQL教程MySQL实现MYISAM表批量压缩的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

MysqL教程MysqL实现MYISAM表批量压缩的方法》要点:
本文介绍了MysqL教程MysqL实现MYISAM表批量压缩的方法,希望对您有用。如果有疑问,可以联系我们。

本文实例讲述了MysqL实现MYISAM表批量压缩的方法.分享给大家供大家参考,具体如下:MysqL应用

关于对MYISAM表的压缩,可以使用myisampack和myisamchk完成(myisampack完之后必须进行myisamchk才能使用压缩后的表,而且是只读的),其详细地用法可以参考官方文档:
http://dev.MysqL.com/doc/refman/5.1/zh/client-side-scripts.html.MysqL应用

这两个操作需要谨慎使用,在压缩之前需要确认MysqLd已关闭或者要压缩的表不会有其他的sql操作;而且压缩过程会很占用cpu资源,建议在服务器空闲的状态进行.MysqL应用

下面是用于实现某数据库下表压缩的shell过程(值得注意的是,如果数据量大,建议分多次操作,因其会很耗时):MysqL应用

#!/bin/bash
data_dir="/data/MysqL/my_dbname/"
filelist=`ls $data_dir`
echo "MYISAMPACK BEGIN."
for filename in $filelist
do
  idx=`expr match "$filename" ".*.MYI"`
  if [[ $idx>0 ]]
  then
    /usr/bin/myisampack $data_dir$filename
  fi
done
echo "MYISAMPACK End. MYISAMCHK BEGIN."
for filename in $filelist
do
  idx=`expr match "$filename" ".*.MYI"`
  if [[ $idx>0 ]]
  then
    /usr/bin/myisamchk -r -o -f --sort-index --analyze $data_dir$filename
  fi
done
echo "MYISAMCHK END."

更多关于MysqL相关内容感兴趣的读者可查看本站专题:《MysqL事务操作技巧汇总》、《MysqL存储过程技巧大全》、《MysqL数据库锁相关技巧汇总》及《MysqL常用函数大汇总》MysqL应用

希望本文所述对大家MysqL数据库计有所帮助.MysqL应用

猜你在找的MySQL相关文章