MySQL实现批量检查表并进行repair与optimize的方法

摘要:
更多对MySQL相关内容感兴趣的读者,请查看我们网站的专题:“MySQL事务操作技巧总结”、“MySQL存储过程技巧总结”,“MySQL数据库锁定相关技巧总结”和“MySQL常用功能总结”。我希望本文将帮助您设计MySQL数据库。

这篇文章主要介绍了MySQL实现批量检查表并进行repair与optimize的方法,结合实例形式分析了MySQL批量修复与优化表的相关技巧,需要的朋友可以参考下

本文实例讲述了MySQL实现批量检查表并进行repair与optimize的方法。分享给大家供大家参考,具体如下:

以下是shell的参考代码:

#!/bin/bash
host_name=192.168.0.123
user_name=xiaomo
user_pwd=my_pwd 
database=my_db_name
need_optmize_table=true
tables=$(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "show tables")
for table_name in $tables
do
 check_result=$(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "check table $table_name" | awk '{ print $4 }')
 if [ "$check_result" = "OK" ]
 then
  echo "It's no need to repair table $table_name"
 else
  echo $(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "repair table $table_name")
 fi
 # 优化表,可提高性能
 if [ $need_optmize_table = true ]
 then
  echo $(mysql -h$host_name -u$user_name -p$user_pwd $database -A -Bse "optimize table $table_name")
 fi
done

也可以使用mysqlcheck命令,此方法可以在检查表并自动修复损坏的表,不过该过程比较耗时。

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

希望本文所述对大家MySQL数据库计有所帮助。

免责声明:文章转载自《MySQL实现批量检查表并进行repair与optimize的方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇CAS导致的ABA问题及解决:时间戳原子引用AtomicReference、AtomicStampedReference2.抽取代码(BaseActivity)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

mysql 导出表结构和表数据 mysqldump用法

命令行下具体用法如下: mysqldump -u用戶名 -p密码-d数据库名表名 > 脚本名; 导出整个数据库结构和数据mysqldump -h localhost -uroot -p123456database > dump.sql 导出单个数据表结构和数据mysqldump -h localhost -uroot -p123456 data...

Mysql 10053 SocketException 你的主机中的软件中止了一个已建立的连接。

问题:存数据库失败 错误信息: Mysql 1053 SocketException 你的主机中的软件中止了一个已建立的连接。 解决方法:修改数据库最大数据传输量【max_allowed_packet】 1:查询【max_allowed_packet】:show variables like '%max_allowed_packet%';   结果只有10...

product of大数据平台搭建------CM 和CDH安装

一、安装说明       CM是由cloudera公司提供的大数据组件自动部署和监控管理工具,相应的和CDH是cloudera公司在开源的hadoop社区版的基础上做了商业化的封装的大数据平台。        采用离线安装模式,虽然在线安装比较简单,但是速度感人,原因大家都懂,这里我使用的各软件版本信息为: 操作系统:CentOS6.8 CDH版本:5.7...

mysql导出导入sql文件方法(linux)

一、导入导出.sql文件for Linux: 1、从mysql中导出数据库test: 在终端运行:mysqldump -h localhost -u root -p test > /home/chuzj/daochu.sql 其中localhost是服务器名字 test是数据库名字,其后可以直接跟表名 2、将daochu.sql 导入到mysql数...

(十三)MySQL锁机制

1.常见问题 MySQL支持的锁有哪些?有哪些使用场景? 什么是读写锁?什么是排他锁? 行锁是什么?有哪些分类,原理是什么? 死锁是如何产生的? 如何解决死锁? 2.锁的分类 从锁的粒度上分MySQL支持的锁 表级锁 行级锁(InnoDB) 页级锁(BDB) 从锁的操作上可以分为 读锁 写锁 从实现方式上分 乐观锁 悲观锁 使...

数据库SQL优化大总结之 百万级数据库优化方案(转载)

网上关于SQL优化的教程很多,但是比较杂乱。近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请大家纠正补充。 这篇文章我花费了大量的时间查找资料、修改、排版,希望大家阅读之后,感觉好的话推荐给更多的人,让更多的人看到、纠正以及补充。   一、百万级数据库优化方案 1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 o...