is_wm 287 Zgłoś post Napisano Marzec 19, 2009 Od kilku dni mam spory problem z dumpem mysql wszystkich baz. mysqldump --all-databases --force > /bac.sql Wszystko jest dobrze, do czasu... zgrania wszystkich baz. Po tym dump zaczyna ponownie otwierać wszystkie bazy (od A do Z), tyle, że w zrzucie umieszcza tylko wpisy typu USE baza itd. Robi to spore problemy w działaniu serwera (chodzi głównie o to, że do tej pory dump trwał 1,5h, a teraz po 3h serwer zaczyna okropnie mulić). Wersja z bzip2 działa tak samo. O co tu może chodzić? Może trzeba dodać jakiś parametr do tego polecenia (próbowałem np. --skip-opt + --quick ale to powodowało dodatkowe problemy w postaci timeoutów)? Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość patrys Zgłoś post Napisano Marzec 19, 2009 Hmm ja bym na początek polecał robić kopie poszczególnych baz danych. Sprawdź czy bazy są nie uszkodzone, zoptymalizuj je. Udostępnij ten post Link to postu Udostępnij na innych stronach
is_wm 287 Zgłoś post Napisano Marzec 19, 2009 Poszczególnych baz raczej nie zrobię, chyba potrzebny by był jakiś skrypt, żeby to w pętli zapuścić (baz jest ponad 3000). Choć to faktycznie nie byłby głupi pomysł, żeby zapuścić pętlę z folderów /var/lib/mysql - łatwiej byłoby przywracać ewentualnie pojedyncze bazy, choć trudniej już wszystkie... Optymalizacje i naprawy były robione (mysqlcheck --optimize --all-databases itd). Udostępnij ten post Link to postu Udostępnij na innych stronach
ahes 83 Zgłoś post Napisano Marzec 19, 2009 Od kilku dni mam spory problem z dumpem mysql wszystkich baz. mysqldump --all-databases --force > /bac.sql Wywal force i daj --lock-tables, a jesli masz same innodb to --single-transaction. Jak dalej nie gra to --log-error i sprawdz co mu nie pasi. I przeczytaj manuala, np. co znaczy force. I tak jak szepnął patrys lepiej bedzie po kolei bazy dumpowac: path="/db" for db in `mysql -Nse 'show databases'` do dump="${db}_`date '+%F'`.sql" remove="${db}_`date --date '7 days ago' '+%F'`.sql.gz" mysqldump -l $db > $path/$dump gzip $path/$dump if [ -f "$path/$remove" ] then rm -f -- "$path/$remove" fi done Udostępnij ten post Link to postu Udostępnij na innych stronach
is_wm 287 Zgłoś post Napisano Marzec 19, 2009 --force używałem, bo gdy wywalał błędy przy jednej bazie to cały zrzut (dla --all-databases) się kończył na błędzie - z force robił do końca, mimo błędów. Ale faktycznie, zrobiłem skrypt do zrzutów wszystkich baz i na razie śmiga bardzo ładnie Udostępnij ten post Link to postu Udostępnij na innych stronach