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

Переустановите MySQL, игнорируя все предыдущие вещи

Несколько дней назад я установил mysql-server на машину, а затем обнаружил, что он помещает файл данных в раздел, в котором почти нет места. Итак (потому что в БД не было ничего, о чем я заботился), я выключил его, связав символьную связь /var/lib/mysql в пустой каталог в другом разделе и попытался запустить его резервное копирование.

Коротко; MySQL сейчас не запускается. Кажется, выскочка думает, что работает (то есть если start mysql не зависает), но нет процесса mysqld. Я пробовал переустановить (apt-get purge mysql-server; apt-get insatll mysql-server), но он, кажется, что-то держит (во-первых, он не просит меня установить пароль root, как в первый раз), и он все равно не запускается.

Как мне выполнить чистую переустановку, которая полностью игнорирует все, что было сделано при последней установке?


О, и есть ли способ настроить файлы конфигурации до того, как apt-get запустит mysqld?

Я собираюсь сказать, что вы используете Ubuntu и у вас установлен AppArmor. Меня укусило именно это в конце прошлой недели, когда я переходил с машины под управлением 8.04 на новый хост под управлением 10.04.

Я решил отключить AppArmor, но в качестве теста попробуйте что-нибудь вроде: /etc/init.d/apparmor stop затем попробуйте снова запустить MySQL.

Вы также можете изменить конфигурацию каталогов, которыми AppArmor ограничивает MySQL, отредактировав /etc/apparmor.d/usr.sbin.mysqld.

Вы можете принудительно удалить все файлы, включая файлы конфигурации, с помощью команды:

$ sudo apt-get purge --force-yes mysql-server

Затем установите как обычно.

$ sudo apt-get install mysql-server