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

Переустановка mysql и старая база данных и пользователи появляются

Я установил mysql, mysql-server и mysql-devel через yum:

yum install mysql mysql-server mysql-devel

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

Я выдал следующие команды:

#To remove the packages: 
yum remove mysql mysql-server mysql-devel
#To remove the data
rm -rf /var/lib/mysql

Теперь, после того, как я снова установил mysql, mysql-server и mysql-devel, а затем запустил mysql, таблица mysql.user включает несколько пользователей root, а старые базы данных все еще доступны.

Я запустил следующее, пытаясь найти какие-либо файлы конфигурации или еще что-то для mysql, но безрезультатно:

find . -name \*.sql\*
whereis mysql
whereis sql
grep -hilr "old_database_name" *
grep -hilr "mysql" *

Что мне не хватает?

Пакеты не стирают каталог данных, /var/lib/mysql, когда пакеты удалены. Итак, что вам нужно сделать, это удалить пакеты, а затем:

mv /var/lib/mysql /var/lib/mysql.old

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

rm -rf /var/lib/mysql.old

Этот двухэтапный процесс также имеет то преимущество, что если вы случайно повторно запустите любую из этих команд, скажем, при просмотре истории командной строки, ни одна из них сама по себе не уничтожит производственные данные.