2015-08-20 8 views
5

Moja baza danych pochodzi z kopii zapasowej niedziałającego serwera.Chcę używać bazy danych mysql z kopii zapasowej niedziałającego serwera na nowym komputerze

Moja baza danych to folder teachercenter, który znajdował się na serwerze i zawiera pliki dla każdej nazwy tabeli z rozszerzeniem *.frm.

skopiowane bazy danych z:

C:\Users\xxx\Downloads\wamp-saved\wamp\bin\mysql\mysql5.1.36\data\ 

i wkleić ten folder na komputerze tutaj:

C:\wamp\bin\mysql\mysql5.6.17\data 

Zdaję sobie sprawę, że te dwa MySQL były różne wersje, ale ja po prostu staramy się korzystaj z plików bazy danych.

Kiedy uruchamiam program PHPMyAdmin na nowym komputerze, pokazuje on bazę danych teachercenter na liście baz danych.

Ponadto, jeśli kliknę przycisk plus obok bazy danych teachercenter, mogę wyświetlić listę moich tabel bazy danych!

Ale jeśli kliknę samego teachercenter bazie danych, otrzymuję błąd:

No tables found in database.

Jak uzyskać mysql rozpoznać i pozwól mi działać (PHPMyAdmin) na bazie teachercenter na nowym komputerze?

Próbowałem uruchomić/uaktywnić wampmanager.exe, ale nie widzę, aby działał z jego menu.

+1

Zamiast bezpośrednio kopiować pliki FRM, wyeksportowałbym bazę danych do pliku .sql, a następnie zaimportowałam. Najprawdopodobniej ma to miejsce w przypadku typów baz danych; w szczególności frm jest dla myisam i nie działałby z innodb. – Shawn

+0

Niestety oryginalny serwer nie jest dostępny dla eksportu sql. Widzę, że nowszy serwer wampli domyślnie obsługuje innodb. Zrobiłem jednak nowy stół na nowym wampie i użyłem innodb. Ale kiedy spojrzałem na folder danych, miał on trzy pliki: db.opt, test @ 0020table @ 00201.frm i test @ 0020table @ 00201.ibd. – agershon

+0

Muszę uratować stoły, które mam. Czy mogę zainstalować stary mysql na moim serwerze, który używa myisam do przechowywania silnika? Czy mogę polecić serwerowi mysql wampirów, aby używał silnika myisam do przeglądania plików, które mam? – agershon

Odpowiedz

0

Ponieważ nie można mieć pewności, że format zapisu MyISAM jest zgodny wstecz, najbezpieczniejszym rozwiązaniem jest instalacja MySql 5.1.36, użycie mysqldump do wyeksportowania całej bazy danych do zwykłego kodu SQL, instalacji MySql 5.6.17, a następnie zaimportowania dane za pomocą SQL.

Co więcej, prawdopodobnie daje to lepsze wyniki, ponieważ indeksy są przebudowywane.

+0

PROBLEM ROZWIĄZANY JEST: Na: http://stackoverflow.com/questions/10934745/restore-tys-mysql-database-from-frm-files prosta odpowiedź na mój probelem jest następująca: "Tak Nie wystarczy skopiować pliki .frm do folderu databse, ale trzeba również skopiować pliki ib_log i ibdata do swojego folderu z danymi. " Skopiowałem plik ib_logfiles i ibdata do mojego folderu z danymi, a Voila! PHPMyAdmin był całkowicie zadowolony z bazy danych i tabel oraz mogłem wykonać eksport SQL rekordów tabeli. – agershon

1

problem jest rozwiązany:

w: stackoverflow.com/questions/10934745/... prostą odpowiedź na moje probelem podana jest w następujący sposób:. „Tak, to jest możliwe, nie wystarczy po prostu skopiować Pliki .frm do folderu bazy danych , ale musisz również skopiować pliki ib_log i ibdata do swojego folderu danych. " Skopiowałem plik ib_logfiles i ibdata do mojego folderu z danymi, a Voila! PHPMyAdmin był całkowicie zadowolony z bazy danych i jej tabel i mogłem wykonać eksport tabel SQL.

Podsumowanie: Aby skorzystać z bazy danych MySQL plików * .frm, których twój MySQL nie rozumie, po prostu skopiuj pliki ib_logfiles i ibdata z dowolnego miejsca, z którego pochodzą pliki .frm, i umieść te dwa pliki w folder danych obok bazy danych, której chcesz użyć. Gdy to zrobisz, silnik bazy danych MySQL rozpozna twoją bazę danych i będziesz mógł wykonywać wszystkie operacje PHPMyAdmin na twojej w pełni sprawnej bazie danych.