Начало > sadmin, Автомобили > Поправяне на повредена mysql таблица

Поправяне на повредена mysql таблица

2 октомври, 2009 Коментирай Go to comments

Понеже забелязах, че има доста питания за поправяне на повредена таблица в mysql база реших в тази публикация да напиша някои от начините които ползвам.

Обикновено когато таблицата е повредена излиза следното съобщение:

"… is marked as crashed and should be repaired …"

Първи начин:

myisamchk -r <DatabaseName>*.MYI

Втори начин:

repair table powredena_tablica_w_mysql

Ето набързо написах един прост script които предлага repair, optimize и check на таблиците в mysql:

#!/bin/sh
#Mysql Table Fixer v 0.75 |  Written by amri

#Variables

MUSER=$2
MPASS=$3
DBNAME=$4

Usage() {
echo "Usage: $0"
echo " --optimize mysqluser mysqlpass tablename"
echo " --repair mysqluser mysqlpass tablename"
echo " --check mysqluser mysqlpass tablename"
return
}

repair_mysql_table()
{
TABLENAMES=`mysql -u$MUSER -p$MPASS -D $DBNAME -e "SHOW TABLESG;"|grep 'Tables_in_'|sed -n 's/.*Tables_in_.*: ([_0-9A-Za-z]*).*/1/p'`
for TABLENAME in $TABLENAMES
do
mysql -u$MUSER -p$MPASS -D $DBNAME -e "$1 TABLE $TABLENAME;"
done
}

if [ $# -eq 0 ] ; then
Usage
exit 1
fi

case $1 in
--repair) repair_mysql_table "repair";;
--optimize) repair_mysql_table "optimize";;
--check) repair_mysql_table "check";;
--help) Usage; exit 1;;
*) Usage; exit 1;;
esac

Подобни публикации:

  1. Конструкции на SQL за поддръжка на таблици в MySQL
  2. Прост Bash скрипт за създаване на mysql потребител и база
  3. Конвертиране на mysql таблица от MyISAM към InnoDB
  4. Upgrade на Wordpress от shell.
  5. Редактиране на MySQL тип чрез alter table
  1. Все още няма коментар
  1. 0 trackbacks