>  기사  >  데이터 베이스  >  테이블을 일괄 확인하고 복구 및 최적화하는 방법

테이블을 일괄 확인하고 복구 및 최적화하는 방법

坏嘻嘻
坏嘻嘻원래의
2018-09-15 10:30:091342검색

本篇文章给大家带来的内容是关于如何批量检查表并进行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命令,此方法可以在检查表并自动修复损坏的表,不过该过程比较耗时。


위 내용은 테이블을 일괄 확인하고 복구 및 최적화하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.