优化mysql数据表的shell脚本
来源:互联网 发布:voa在线收听软件 编辑:程序博客网 时间:2024/05/16 14:43
由于公司数据库中的数据量较大,定期对公司的mysql数据库中的数据表进行优化操作(关于optimize的描述如下所示),数据库中有300多张数据表,手工去操作显然不太现实,用脚本来执行效率还是很不错的,脚本如下:
mysql手册中关于 OPTIMIZE 的描述:
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
如果您已经删除了表的一大部分,或者如果您已经对含有可变长度行的表(含有VARCHAR, BLOB或TEXT列的表)进行了很多更改,则应使用
OPTIMIZE TABLE。被删除的记录被保持在链接清单中,后续的INSERT操作会重新使用旧的记录位置。您可以使用OPTIMIZE TABLE来重新
利用未使用的空间,并整理数据文件的碎片。
mysql手册中关于 OPTIMIZE 的描述:
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
如果您已经删除了表的一大部分,或者如果您已经对含有可变长度行的表(含有VARCHAR, BLOB或TEXT列的表)进行了很多更改,则应使用
OPTIMIZE TABLE。被删除的记录被保持在链接清单中,后续的INSERT操作会重新使用旧的记录位置。您可以使用OPTIMIZE TABLE来重新
利用未使用的空间,并整理数据文件的碎片。
使用方法:sh optimize.sh word
#!/bin/shtime_log=/opt/optimize_timesum=$#if [ "$sum" -eq 0 ]then echo "Error: no parameter chosed"exit 1fifor i in $*;do echo "optimize database $i starting ..." tables=$(/usr/bin/mysql $i -udevuser -pdevuser -e "show tables" | grep -v "Tables" > /opt/$i) tablelist=$(cat /opt/$i) echo "optimize database $i starting ................" >> $time_log echo "$i start at $(date +[%Y/%m/%d/%H:%M:%S])" >> $time_log for list in $tablelist do echo $list /usr/bin/mysql $i -utaobao -padmin -e "optimize table $list" done echo "$i end at $(date +[%Y/%m/%d/%H:%M:%S])" >> $time_log echo >> $time_logdone
- 优化mysql数据表的shell脚本
- Mysql数据表的优化
- Mysql数据表的优化
- mysql数据表按天轮转shell脚本实现
- optimize 优化mysql数据表
- Mysql数据表优化
- 优化内核参数的shell脚本
- shell脚本优化
- 【旧代码】mysql备份的shell脚本
- 两个shell备份mysql的脚本
- mysql 全部备份的shell脚本
- Ubuntu 上备份 MySQL 的Shell脚本
- 自动备份 MySQL 数据库的 shell 脚本
- 增量dump mysql的shell脚本
- 脚本分享-两个shell备份mysql的脚本
- mysql备份shell脚本
- Shell脚本链接Mysql
- shell脚本操作mysql
- 文件篇(一、fopen和open有什么区别? )
- 玩转Google开源C++单元测试框架Google Test系列(gtest)之一 - 初识gtest
- 如何理解并学习javascript中的面向对象(OOP)
- wxWidgets的体系结构
- 3G中的A-GPS移动定位技术
- 优化mysql数据表的shell脚本
- C++读取txt文件的方法
- shell启动脚本
- 防外挂的shell脚本
- 树
- asp.net 导出txt文件
- C#操作XML的完整例子——XmlDocument篇
- J2EE架构师之路
- 如何将maven项目打包成可执行的jar