Назад | Перейти на главную страницу

У меня отключилось электричество. Теперь файл блокировки MySQL никуда не денется. Что ты предлагаешь?

Я занимаюсь внештатным ИТ-консультированием различных клиентов как в Торонто, Канада, так и по всему миру.

У клиента недавно произошел сбой питания. Теперь у них были различные проблемы с машиной Slackware 12.0.0, которая также действует как DNS-сервер.

Одна из проблем заключается в том, что они не могут войти в phpMyAdmin.

Я попытался остановить и перезапустить MySQL. Но даже когда MySQL остановлен, файл блокировки остается.

jasonspiro@cybertron:~$ sudo /etc/init.d/mysql stop 
Shutting down MySQL. SUCCESS! 
jasonspiro@cybertron:~$ sudo /etc/init.d/mysql stop
 ERROR! MySQL manager or server PID file could not be found!
jasonspiro@cybertron:~$ sudo /etc/init.d/mysql status
 ERROR! MySQL is not running, but lock exists
jasonspiro@cybertron:~$ ls -l /var/lock/subsys/mysql 
-rw-r--r-- 1 root root 0 2012-07-05 16:18 /var/lock/subsys/mysql

Почему хранится файл блокировки MySQL, несмотря на то, что MySQL не работает?

Могу ли я просто остановить MySQL, удалить файл блокировки и снова запустить MySQL?

Есть ли другие шаги, которые мне следует предпринять дальше, или ничего?

РЕДАКТИРОВАТЬ: Через некоторое время после того, как я задал этот вопрос, я заметил, что способ установки MySQL на этом компьютере кажется шатким. Также я узнал, что /etc/init.d/mysql Сценарий, который я нашел на этой машине, всегда создает файл блокировки при запуске MySQL и никогда не удаляет файл, когда останавливает MySQL. Так что этот вопрос для меня не имеет отношения. Спасибо, но мне больше не нужны ответы на этот вопрос.

Делать: ls -al /var/lock/subsys

Искать mysql.pid. Удалите это. Также удалите mysql.sock если он существует.

Если ничего не помогает, [как root] используйте updatedb ; locate <filename>. Это твой друг в подобных ситуациях.

Попробуйте перезапустить MySQL с помощью сценария инициализации. Если это не сработает, выполните восстановление до контрольной точки базы данных из приемлемой резервной копии базы данных.

Если резервных копий базы данных нет: сделайте клон этого диска с помощью dd СРОЧНО. Возможно, вам придется использовать некоторые жесткие процедуры восстановления. Даже если служба MySQL снова запустится, на всякий случай сохраните на время самую хорошую резервную копию.