Skocz do zawartości
Davred

Backup Bazy Forum / PROBLEM

Polecane posty

Witajcie.

 

Wyczerpały mi się wszelkie pomysły, adminowi serwera tez więc postanowiłem uderzyć do siły wyższej.

 

Mój problem polega na tym iż w żaden sposób nie mogę zrobić backupa bazy danych, mojego forum na skrypcie vbulletin. Baza ma 255 Mb przy pobieraniu, ściąga zaledwie ok 30 mb zacina się na tabelach w bazie trochę zapakowanych, np, na tabelce z postami, czy userami. co byście poradzili, na serwerze mam DirectAdmina.

 

 

 

 

Jeżeli macie jakie pomysły żeby ściągnąć ładnie z dobrym kodowaniem bazę piszcie, spróbuje wszystkiego, ale jeżeli trzeba będzie to zrobić przez ssh czy jakos proszę piszcie tez komendy do putty, nie znam się na tym za bardzo więc liczę na wyrozumiałość.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys
mysqldump -uUZYTKOWNIK -pHASLO --opt BAZA | gzip -9 > BAZA.sql.gz

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

mysqldump -uUZYTKOWNIK -pHASLO --opt BAZA | gzip -9 > BAZA.sql.gz

 

zamist uzytkownik mam wpisac usera tak ?

 

 

 

 

 

czyli: mysqldump -udavred_forum -pmojehaslo --opt BAZA | gzip -9 > BAZA.sql.gz

 

 

 

 

i tak samo spacje i myslniki dawac  ? i gdzie mi sie ta baza zapisze?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość patrys

BAZA - to nazwa bazy.

BAZA.sql.gz - plik wynikowy spakowany gzipem, w katalogu w którym aktualnie się znajdujesz...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jak nie to niech admin udostępni ci pliki bazy danych z /var/lib/mysql/twoja_baza/ - przeniesiesz na nowy hosting i będzie działać :)

Testowałem takie coś na kilka sposób:

- produkcyjny linux i localhost windows - działało

- różne wersje mysql - też działało

 

 

Pamiętaj potem o poprawnych chmodach i chown dla przeniesionych plików.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

wchodze w putty, wpisuje login i pass do roota i wpisuje ta komendę, ale mi wywala mysqldunp command not found kurde, juz wątpię ze zrobię tego backupa panikować normalnie zaczynam ehh.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

przeniesiesz na nowy hosting i będzie działać :)

Szczególnie dla jakichkolwiek tabelek InnoDB... znakomicie wykrzaczy serwer.

A nawet i MyISAM - jeśli nie będzie zgodności zainstalowanych charsetów to też dosyć ciekawie się zcrashuje.

A jak zgodność charsetów jest - to nie jest problemem zrobić eksport&import :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Fiercio niz już nie rozumiem, czyli pomysł BlueMan odpada? a juz chciałem gadac z adminem i myślałem ze wkoncu bede mogł przenieść forum ehhh

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wg mnie pomysł BlueMana odpada. Jeśli masz jakąś tabelke InnoDb, to po jej przeniesieniu po prostu ją stracisz.

 

ale mi wywala mysqldunp command not found

niemożliwe żeby nie było mysqldumpa. Możliwe, że zrobiłeś jakąś literówke. 

 

Jeśli masz admina to poproś go o zrzut bazy. To będzie najpewniejsza opcja. I tak jak Patrys napisał - najlepiej w gzip jeśli ta baza ma tyle MB :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

wchodze w putty, wpisuje login i pass do roota i wpisuje ta komendę, ale mi wywala mysqldunp command not found kurde, juz wątpię ze zrobię tego backupa panikować normalnie zaczynam ehh.

 

 

whereis mysqldump

pewnie nie ma symlinka do bin i siedzi w katalogu bin mysql-a wink.gif

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wgraj na www skrypt MysqlDumper i nim zrób backup a pozniej normalnie sciagnij wykonany backup z serwera. Nie znam lepszego narzędzia do wykonywania i wgrywania kopii. Nie ma właściwie lepszego. Przy okazji rozwiązujesz problemy z kodowaniem.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jak nie to niech admin udostępni ci pliki bazy danych z /var/lib/mysql/twoja_baza/ - przeniesiesz na nowy hosting i będzie działać ;)

Testowałem takie coś na kilka sposób:

- produkcyjny linux i localhost windows - działało

- różne wersje mysql - też działało

 

 

Pamiętaj potem o poprawnych chmodach i chown dla przeniesionych plików.

 

Nigdy nie róbcie tak jak to opisano powyżej. Jeśli ktoś bardzo chce podmieniać MYD/MYI to tylko za pomocą mysqlhotcopy lub po ręcznym zrobieniu FLUSH i LOCK. Pomysł kopiowania plików bazy bez uprzedniego zrobienia LOCKa jest przerażający.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jakieś wyjaśnienie tego? Czy "nie bo nie (tupnięcie nóżką)".

 

Wystarczy logicznie pomyśleć, albo spojrzeć do manuala.

Każda tabela w myISAM to 2 pliki MYD (dane) i MYI (indeksy).

Teraz pomysł co się stanie jeśli nie zrobisz LOCKa a w międzyczasie poleci INSERT/UPDATE......

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Wystarczy logicznie pomyśleć, albo spojrzeć do manuala.

Każda tabela w myISAM to 2 pliki MYD (dane) i MYI (indeksy).

Teraz pomysł co się stanie jeśli nie zrobisz LOCKa a w międzyczasie poleci INSERT/UPDATE......

 

 

Myślę, że rozwiązaniem tego problemu jest po prostu zatrzymanie serwera mysql-a na czas skopiowania plików.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Myślę, że rozwiązaniem tego problemu jest po prostu zatrzymanie serwera mysql-a na czas skopiowania plików.

 

Jasne. To jest rozwiązanie wszystkich potencjalnych konfliktów zapisu. Wyłączenie usługi która może go spowodować.

Pytania kontrolne:

1) lepiej zrobić locka na jednej tabeli na czas potrzebny do zrzutu czy wyłączyć cały serwer bazy danych na czas zrzutu wszystkich tabel (czyli czasami na kilkanaście minut)?

2) lepiej wyczyścić query-cache tylko w celu zrobienia zrzutu tabeli niż zrobić locka?

3) lepiej wyrzucić zawartość wszystkich tabel z storage MEMORY tylko po to, by zrobić zrzut zamiast zrobić locka?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×