SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 19.05.2010 11:57:19

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Автоматический repair таблиц

Стал у нас тут сервер падать, пока разбираемся что к чему всплыла задача - после перезагрузки автоматически проверять таблицы на целостность (ибо они corrupt-ятся). Подскажите как это сделать оптимально? Или чего покурить, общее направление

Сервер Win 2003, mysql 5.0

Да, и всем привет, давно к вам не заходил )

Отредактированно Shopen (19.05.2010 11:59:34)

Неактивен

 

#2 19.05.2010 12:23:51

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Автоматический repair таблиц

Попробуйте включить автоматическое восстановление:
http://dev.mysql.com/doc/refman/5.1/en/ … am-recover

Ну или myisamchk -rq над всей базой перед загрузкой службы.

Неактивен

 

#3 19.05.2010 13:35:46

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Автоматический repair таблиц

Спасибо, Паш

paulus написал:

Попробуйте включить автоматическое восстановление:
http://dev.mysql.com/doc/refman/5.1/en/ … am-recover

Я так понимаю, в my.ini в [mysqld] надо вписать myisam-recover=QUICK?


paulus написал:

Ну или myisamchk -rq над всей базой перед загрузкой службы.

Хе, вот бы еще знать как это сделать, т.е. как ДО старта mysql сделать рекавер, так чтобы служба ждала и не стартовала.


Я так понимаю еще вариант сделать init-файл init_file = init.sql в котором прописать все нужные REPAIR TABLE ...

Прошу простить за возможно глупые вопросы, я к администрированию отношения вообще никакого практически не имею, вот приходится въезжать неожиданно smile

Отредактированно Shopen (19.05.2010 13:37:00)

Неактивен

 

#4 19.05.2010 15:22:09

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Автоматический repair таблиц

У Вас же Windows? В качестве костылика, например, можно поставить службе
флаг не загружаться автоматически, и написать сценарий автозапуска, который
бы делал проверки, а потом запускал службу (net start MySQL).

Но, наверное, myisam-recover правильнее. Начните с QUICK,BACKUP,FORCE smile

Неактивен

 

#5 24.05.2010 13:50:41

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Автоматический repair таблиц

Включил myisam-recover=QUICK,BACKUP,FORCE пока полет нормальный, правда мы сервер разобрали-собрали и он перестал умирать, видать контакты запылились, будь они не ладны smile

А чем вариант с init_file с репайрами плох/хорош или так вообще нельзя делать?

Неактивен

 

#6 24.05.2010 17:25:07

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Автоматический repair таблиц

Ну, я бы, например, назвал неприятным тот факт, что этот файл реально исполняется
как initscript. Т.е. пока все команды в нем не отработают, MySQL не будет принимать
соединения.

Неактивен

 

#7 29.05.2010 21:46:22

Shopen
Гуру
Откуда: Москва
Зарегистрирован: 22.10.2007
Сообщений: 362

Re: Автоматический repair таблиц

paulus написал:

Ну, я бы, например, назвал неприятным тот факт, что этот файл реально исполняется
как initscript. Т.е. пока все команды в нем не отработают, MySQL не будет принимать
соединения.

А чем это плохо? Например чем этот способ хуже варианта с с бат-файлом, в котором делается myisamchk после чего стартуется служба mysql, по сути веть одно и тоже, только нативными средствами, так сказать...

Неактивен

 

#8 29.05.2010 22:39:22

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Автоматический repair таблиц

В случае с батником — ничем не хуже. В общем случае я бы боялся такой команды smile

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson