Zaimportuj lub przywróć bazy danych MySQL z katalogu var

2

Niedawno utworzyłem kopię zapasową całego dysku twardego laptopa za pomocą SuperDuper i ponownie zainstalowałem Snow Leopard. Ponieważ utworzyłem klon obrazu, mogłem przywrócić wszystkie moje pliki bez utraty danych. Idź klonowanie dysku twardego.

Jednak jedyną rzeczą, o której zapomniałem, było zrzucenie wszystkich moich baz danych MySQL. Eek. Ze względu na charakter pamięci MySQL nie mogę po prostu przeciągać i upuszczać baz danych i tabel - wszystkie dane są zablokowane na serwerze.

Po zamontowaniu sklonowanego obrazu mogę przejść do /Volumes/laptop/usr/local/mysql/var(ponieważ zainstalowałem MySQL /usr/local/mysql) i widzę wszystkie moje bazy danych wymienione jako katalogi z losowymi plikami w środku, co wydaje się obiecujące.

Co powinienem zrobić, aby przywrócić wszystkie bazy danych, które zapomniałem zrzucić? Czy istnieje sposób przywrócenia var/folderu do mojej nowej, świeżej instalacji MySQL i (mam nadzieję) utrzymania wszystkich użytkowników i uprawnień? Czy mogę po prostu skopiować ten katalog i wszystko działa?

Andrzej
źródło

Odpowiedzi:

2

Oświadczenie: Nie mogę zagwarantować, że to również zadziała dla ciebie, zrobiło to dla mnie.

Zrobiłem podobne przywracanie (jednak pod Windows), po prostu kopiując pliki (cały /usr/local/mysqlkatalog ... czy i tak nie powinno być /var/mysql?). Oczywiście musisz zatrzymać demona MySQL i zrestartować, jeśli skończysz.

Sprawdź także uprawnienia do plików, na wypadek gdyby coś się zmieniło.

Konstabl
źródło
Doskonały. Odmiana Twojego pomysłu zadziałała. Wszystkie dane MySQL były w środku /usr/local/mysql/var, więc skopiowałem oryginalny folder do mojej nowej instalacji (nie cały /usr/local/mysqlkatalog… tylko ten var) i upewniłem się, że użytkownik mysql może uzyskać do niego dostęp ( sudo chown -R mysql /usr/local/mysql/var). Najtrudniejsze było powiedzenie MySQL, aby na to spojrzał. Po uruchomieniu skryptu install_db ( /usr/local/mysql/bin/mysql_install_db --user=_mysql) wszystko działało idealnie. Niesamowity!
Andrew