MySQL实现MYISAM表批量压缩的方法
2016-04-19 00:00
621 查看
本文实例讲述了MySQL实现MYISAM表批量压缩的方法。分享给大家供大家参考,具体如下:
关于对MYISAM表的压缩,可以使用myisampack和myisamchk完成(myisampack完之后必须进行myisamchk才能使用压缩后的表,而且是只读的), 其详细地用法可以参考官方文档:
http://dev.mysql.com/doc/refman/5.1/zh/client-side-scripts.html。
这两个操作需要谨慎使用,在压缩之前需要确认mysqld已关闭或者要压缩的表不会有其他的sql操作;而且压缩过程会很占用cpu资源,建议在服务器空闲的状态进行。
下面是用于实现某数据库下表压缩的shell过程(值得注意的是,如果数据量大,建议分多次操作,因其会很耗时):
更多关于MySQL相关内容感兴趣的读者可查看本站专题:《MySQL事务操作技巧汇总》、《MySQL存储过程技巧大全》、《MySQL数据库锁相关技巧汇总》及《MySQL常用函数大汇总》
希望本文所述对大家MySQL数据库计有所帮助。
MySQL 加密/压缩函数
Mysql存储引擎InnoDB和Myisam的六大区别
mysql更改引擎(InnoDB,MyISAM)的方法
MySQL存储引擎MyISAM与InnoDB的9点区别
MYSQL中 TYPE=MyISAM 错误的解决方法
MySQL数据库MyISAM存储引擎转为Innodb的方法
MYSQL 浅谈MyISAM 存储引擎
关于对MYISAM表的压缩,可以使用myisampack和myisamchk完成(myisampack完之后必须进行myisamchk才能使用压缩后的表,而且是只读的), 其详细地用法可以参考官方文档:
http://dev.mysql.com/doc/refman/5.1/zh/client-side-scripts.html。
这两个操作需要谨慎使用,在压缩之前需要确认mysqld已关闭或者要压缩的表不会有其他的sql操作;而且压缩过程会很占用cpu资源,建议在服务器空闲的状态进行。
下面是用于实现某数据库下表压缩的shell过程(值得注意的是,如果数据量大,建议分多次操作,因其会很耗时):
#!/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 加密/压缩函数
Mysql存储引擎InnoDB和Myisam的六大区别
mysql更改引擎(InnoDB,MyISAM)的方法
MySQL存储引擎MyISAM与InnoDB的9点区别
MYSQL中 TYPE=MyISAM 错误的解决方法
MySQL数据库MyISAM存储引擎转为Innodb的方法
MYSQL 浅谈MyISAM 存储引擎
相关文章推荐
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- MySQL 备份和恢复策略
- mac下安装mysql(转载)
- mysql 修改编码 Linux/Mac/Unix/通用(杜绝修改后无法启动的情况!)
- MySQL数据的导出、导入(mysql内部命令:mysqldump、mysql)
- mysql数据行转列
- Linux下修改MySQL编码的方法
- MySQL Server 日志
- MySQL 安全事宜
- MySQL 备份与恢复