Oto kilka opcji:
mysqldump
Najłatwiejszym, gwarantowanym sposobem na zrobienie tego jest użycie mysqldump
. Zobacz strony podręcznika narzędzia tutaj:
http://dev.mysql.com/doc/refman/5.1 /pl/mysqldump.html
Zasadniczo zrzuca skrypty SQL wymagane do odbudowania zawartości bazy danych, w tym tworzenia tabel, wyzwalaczy i innych obiektów oraz wstawiania danych (wszystko można skonfigurować, więc jeśli masz już skonfigurowany schemat w innym miejscu, możesz po prostu zrzuć dane, na przykład).
Kopiowanie pojedynczych plików tabeli MyISAM
Jeśli masz dużą ilość danych i używasz silnika przechowywania MyISAM dla tabel, które chcesz skopiować, możesz po prostu zamknąć mysqld i skopiować pliki .frm, .myd i .myi z jednego folderu bazy danych do drugiego (nawet w innym systemie). To nie zadziała w przypadku tabel InnoDB i może, ale nie musi działać, w przypadku innych silników pamięci masowej (z którymi jestem mniej zaznajomiony).
mysqlhotcopy
Jeśli musisz zrzucić zawartość bazy danych gdy serwer bazy danych jest uruchomiony , możesz użyć mysqlhotcopy
(zauważ, że działa to tylko w przypadku tabel MyISAM i Archiwum):
http://dev.mysql.com/doc/refman/5.0 /pl/mysqlhotcopy.html
Kopiowanie całego folderu danych
Jeśli kopiujesz całą instalację bazy danych, więc wszystkie bazy danych i zawartość każdej bazy danych, możesz po prostu zamknąć mysqld, spakować cały katalog danych MySQL i skopiować go do katalogu danych nowego serwera.
To jedyny sposób (który znam) na kopiowanie plików InnoDB z jednej instancji do drugiej. Będzie to działać dobrze, jeśli przenosisz się między serwerami z tą samą rodziną systemów operacyjnych i tą samą wersją MySQL; może pracować nad przenoszeniem się między systemami operacyjnymi i/lub wersjami MySQL; z czubka głowy, nie wiem.