Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Baza Danych] Backup MySQL przy użyciu mysqldump


Bugniety

Rekomendowane odpowiedzi

Opublikowano
#2 Backup MySQL przy użyciu mysqldump
 
Po pierwsze primo gdy baza danych MySQL jest sprawna do wykonania backupu bazy służy polecenie mysqldump, które zapisuje bazę jak i jej zawartość w postaci zrzutu SQL do pliku tekstowego. Backup taki jest bezpieczny i nie uszkadza on struktury tabel jak i samych rekordów. Wykonuje się go jednym poleceniem. Można wykonać backup jednej konkretnej bazy lub wszystkich, a robi się to w sposób następujący:
 
A. Backup wszystkich baz danych:
 
mysqldump --all-databases -u root -p > backup.sql
 
Po wpisaniu poprawnego hasła użytkownika root backup wszystkich baz danych zostaje zapisany w pliku backup.sql w katalogu bieżącym.
 
B. Backup jednej bazy danych:
 
mysqldump -u root -p nazwa_bazy_danych > plik.sql
np.
mysqldump -u root -p player > player.sql
 
Po wpisaniu poprawnego hasła użytkownika root baza danych player zostanie zapisana w pliku player.sql.
 
C. Dla osób chcących wykorzystać powyższa metodę w skrypcie - aby wykonać skrypt który nie będzie nas pytał o hasło należy zastosować taka linię w skrypcie.
 
mysqldump -u root -pHasloRootMySQL nazwa_bazy_danych > plik.sql
np.
mysqldump -u root -pHasloRootMySQL player > player.sql
 
Proszę zwrócić uwagę iż po -p podajemy od razu hasło użytkownika root mysql bez wpisywania spacji. Inaczej wpisane hasło będzie traktowane jako nazwa bazy danych.
 
D. Odtwarzanie backupu z pliku *.sql - do odtworzenia takiego backupu służy polecenie mysql i stosuje się je w sposób następujący.
 
mysql -u root -pHasloRootMySQL < plik.sql
 
Proszę zwrócić uwagę iż po -p podajemy od razu hasło użytkownika root mysql bez wpisywania spacji. Inaczej wpisane hasło będzie traktowane jako nazwa bazy danych.
 
E. Technika backupu poprzez skopiowanie katalogu /var/db/mysql owszem działa ale psuje strukturę tabel co może wpływać na wydajność samej bazy danych oraz uszkodzenie w przyszłości tabeli wraz z utrata danych. Backup taki powinno się robić tylko i wyłącznie w przypadku kiedy nie można z jakiejś przyczyny uruchomić serwera MySQL. Jeśli już decydujecie się na backup poprzez kopie /var/db/mysql czego osobiście nie zalecam.
 
1. Zatrzymajcie najpierw mysql komendą:
/usr/local/etc/rc.d/mysql-server stop
2. zróbcie kopie plików z /var/db/mysql
3. Uruchomcie mysql
/usr/local/etc/rc.d/mysql-server start
 
A po odtworzeniu takiego backupu włączycie diagnostykę bazy danych. Służy do tego polecenie mysqlcheck:
 
mysqlcheck --all-databases -u root -p
 
Jednakże do backupu zalecam stosowanie się do punktów A B C i D.
 
Zakaz kopiowania mojego poradnika. Poradnik by Bugniety

Proszę o zamkniecie jednego tematu, lagnelo mi mpc

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...