Baza danych mysql

Zombie
vps, mysql
Kawunaa177
Kawunaa177

Witam mam takie pytanie czy da się zrobić coś takiego ze automatycznie np co godzinę będzie się robił zapis/rzut bazy danych w danej lokalizacji np /home/zapisy/ na vpsie każdy oddzielnie ? :) Posiadam serwer pod grę i chciałbym zabezpieczyć się przed dziwnymi zmianami mojej bazy danych przez niektóre exploity/cheaty do gier

Glupikocz
Glupikocz

Na pewno się jakoś da ale pewnie nie za darmo

bopke
bopke Moderator forum.lvlup.pro

oczywiście, że się da

kopia: mysqldump -u  -p  > plik.sql
odzyskiwanie: mysql -u  -p  < plik.sql

np

mysqldump -u bopke -pMojeHaslo baza_danych > zrzut.sql

Jeżeli chcesz, żeby miały date w nazwie, to utwórz skrypt

#!/bin/bash
mysqldump -u bopke -pMojeHaslo baza_danych > /home/zapisy/zrzut`date '+%Y-%m-%d_%H:%M'`.sql
Kawunaa177
Kawunaa177

Dziękuje :) a to robi rzut co godzinę ?

Timo
Timo Moderator forum.lvlup.pro

Jeśli chcesz, aby robiło co godzinę, stwórz podany skrypt i dodaj do crontaba poniższą linijkę, za pomocą komendy crontab -e

0 * * * * /path/do/skryptu.sh >/dev/null 2>&1
Tibijski
Tibijski

Albo ja nie potrafię tego zrobić albo coś tu jest nie tak, utworzyłem ten skrypt, dodałem do crontaba ale zadziałał tylko raz jak go wywołałem, a tak to nie ma żadnej reakcji - nie tworzy tych kopii co 1h. Pomógłby ktoś? 😃

Timo
Timo Moderator forum.lvlup.pro

Napiszesz w jaki sposób dodałeś? Zrób też screena z terminalu po wpisaniu crontab -e

Tibijski
Tibijski

No to tak, utworzyłem sobie ścieżkę. Utworzyłem .sh. Nadałem mu permisje itd. Tu jest mój crontab. edit Właśnie po dodaniu tego zobaczyłem jedną niezgodność - czy brak .sh może być przyczyną tego?

Timo
Timo Moderator forum.lvlup.pro

W zadaniu cron jedynie wskazujesz ścieżkę, musisz zmienić /home/zapisy na /home/zapisy/zapisy.sh, aby wykonał się skrypt.

Tibijski
Tibijski

A no to czyli tak, jak napisałem wyżej. Dzięki wielkie :D

Tibijski
Tibijski

Nie czaję kompletnie, wcześniej działało - po reinstalacji systemu przestało działać, nie czaję czemu. Crontab Sh

KMatuszak
KMatuszak Weteran

Nadałeś odpowiednie uprawnienia na skrypt?

Tibijski
Tibijski

Wszystkie możliwe XD

Tibijski
Tibijski

Up Zna ktoś jakiś inny sposób na auto backupy?

kotyk
kotyk Regularny

Ogólnie skrypt jest w /home/zapisy ?

FairGames
FairGames

Robisz skrypt bash z mysqldump, ustawiasz chmod, ustawiasz crontab co X czasu. Gotowe 😉

Tibijski
Tibijski

Tak

Tibijski
Tibijski

Problem w tym, że tak właśnie zrobiłem, a to nie chce działać. Wcześniej działało, po reinstalacji systemu nie.

FairGames
FairGames

Plik bash #!/bin/bash mysqldump --host localhost --user użytkownik -p"haslo" nazwabazy > /lokalizacja/plik.sql Crontab 0 * * * * /lokalizacja/skrypt.sh > /dev/null

KMatuszak
KMatuszak Weteran

Czy skrypt ma odpowiednie kodowanie znaku końca linii? Jak odpalasz skrypt ręcznie to działa?

Tibijski
Tibijski

tak

system
system

Ten temat został automatycznie zamknięty 32 dni po ostatnim wpisie. Tworzenie nowych odpowiedzi nie jest już możliwe.