mysql 碎片率_MySQL表碎片整理

这是一个用于优化MySQL数据库中表碎片的Shell脚本。通过连接到数据库并执行ALTER TABLE语句,将表引擎切换为InnoDB,从而完成碎片整理。脚本在'employees'数据库中的多个表上运行,包括'departments', 'dept_emp', 'dept_manager', 'employees', 'salaries', 't1', 'titles'和'ttt'。" 106577822,9556524,深入理解ES6:新增语法与内置对象扩展,"['前端', 'javascript', 'es6', '数组解构', '对象解构']
摘要由CSDN通过智能技术生成

# cat optimize_table.sh

#!/bin/sh

socket=/tmp/mysql3306.sock

time=`date +"%Y-%m-%d"`

SQL="select concat(d.TABLE_SCHEMA,'.',d.TABLE_NAME) from information_schema.TABLES d where d.TABLE_SCHEMA = 'employees'"

optimize_table_name=$(/usr/local/mysql/bin/mysql -S $socket -e "$SQL"|grep -v "TABLE_NAME")

echo "Begin Optimize Table at: "`date +"%Y-%m-%d %H:%M:%S"`>/tmp/optimize_table_$time.log

for table_list in $optimize_table_name

do

echo `date +"%Y-%m-%d %H:%M:%S"` "alter table $table_list engine=innodb ...">>/tmp/optimize_table_$time.log

/usr/local/mysql/bin/mysql -S $socket -e "alter table $table_list engine=innoDB"

done

echo "End Optimize Table at: "`date +"%Y-%m-%d %H:%M:%S"`>>/tmp/optimize_table_$time.log

输出内容

# cat optimize_table_2018-08-30.log

Begin Optimize Table at: 2018-08-30 08:43:21

2018-08-30 08:43:21 alter table employees.departments engine=innodb ...

2018-08-30 08:43:21 alter table employees.dept_emp engine=innodb ...

2018-08-30 08:43:27 alter table employees.dept_manager engine=innodb ...

2018-08-30 08:43:27 alter table employees.employees engine=innodb ...

2018-08-30 08:43:32 alter table employees.salaries engine=innodb ...

2018-08-30 08:44:02 alter table employees.t1 engine=innodb ...

2018-08-30 08:44:17 alter table employees.titles engine=innodb ...

2018-08-30 08:44:28 alter table employees.ttt engine=innodb ...

End Optimize Table at: 2018-08-30 08:44:28

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值