Kom ihåg mig?
Home Menu

Menu


Automatisk backup MySQL

Ämnesverktyg Visningsalternativ
Oläst 2011-11-23, 12:03 #1
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
Standard Automatisk backup MySQL

Hej!

Skulle någon vänlig skäl kunna hjälpa mig med hur man skulle kunna lösa ett skript eller cronjob som automatiskt backar upp min databas enligt följande kriterier:

1) Automatisk backup utav vald databas eller alla databaser

2) Automatisk FTP utav den backupen till en annan server

3) Automatisk radering utav backuper som är över en viss tid gammal, så att man inte bara fyller på och fyller på utan när en backup tillkommer så raderas den äldsta.

Hjärtligt tacksam för hjälp. Har googlat men inte riktigt kommit fram till någon helhetslösning. En automatisk backup skulle jag nog lösa, men FTP och automatisk delete har jag inte riktigt koll på hur man kan få in i samma cronjob.

//Björn
mrdelta är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 12:43 #2
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Clarence Clarence är inte uppkopplad
Administratör
 
Reg.datum: Jan 2003
Inlägg: 1 974
Citat:
Ursprungligen postat av mrdelta Visa inlägg
Hej!

Skulle någon vänlig skäl kunna hjälpa mig med hur man skulle kunna lösa ett skript eller cronjob som automatiskt backar upp min databas enligt följande kriterier:

1) Automatisk backup utav vald databas eller alla databaser

2) Automatisk FTP utav den backupen till en annan server

3) Automatisk radering utav backuper som är över en viss tid gammal, så att man inte bara fyller på och fyller på utan när en backup tillkommer så raderas den äldsta.

Hjärtligt tacksam för hjälp. Har googlat men inte riktigt kommit fram till någon helhetslösning. En automatisk backup skulle jag nog lösa, men FTP och automatisk delete har jag inte riktigt koll på hur man kan få in i samma cronjob.

//Björn
Har inget färdigt script jag kan dela av mig med, men väl lite ideer.

1.) MySQL-dump duger gott för det mesta. För databaser med bara innodb som tabelltyp finns det alternativ som är bättre dock.
2.) ncftpput gör detta väldigt enkelt. Annars scp om du har kontroll över båda burkarna.
3.) find-kommandot kanske räcker? T ex "find /database_backups -name '*.sql.tar.gzip' -and -mtime +7 | xargs rm" för att ta bort 7 dagar gamla filer (du ser filmönstret, hoppas jag)
Clarence är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 13:02 #3
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
http://sourceforge.net/projects/automysqlbackup/
hnn är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 13:18 #4
Halo Halo är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2006
Inlägg: 14
Halo Halo är inte uppkopplad
Nykomling
 
Reg.datum: Dec 2006
Inlägg: 14
Jag kör "Auto backup for MySQL", finns att köpa på http://www.swordsky.com/
Går ställa in hur ofta backup ska tas (kör själv var 3:e timme), och om den ska radera backupfiler som är äldre än nånting.
Vet dock inte om den kan FTP:a filerna, har själv inget behov av det så har inte kollat
Halo är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 19:10 #5
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
Jag tackar för tipsen. Någon betald lösning är inte aktuell, så viktigt är det inte.
Det borde gå att göra med cron på något sätt tycker jag.

Ser detta ut att vara rätt för att dumpa databasen?

15 2 * * * root mysqldump -u root -pPASSWORD --all-databases | gzip > /mnt/disk2/database_`data '+%m-%d-%Y'`.sql.gz

Om man inte vill dumpa samtliga databaser så är det bara att specificera namnet på den man vill ha istället för "all"?

Ska kolla upp ncftpput för ftp möjligheterna lite närmare.

Ditt tips angående automatisk delete skall testas. Tack!

Edit: Tror att jag hittade vad jag söker i och med MySQLDumper

Citat:
MySQLDumper är en PHP- och Perl-baserad applikation som används till att säkra MySQL-databaser. Du kan på ett enkelt sätt spara datan i en backupfil och - om erforderligt - återställa datan. Applikationen är speciellt lämpad för webbplatser som delar server med andra, där du ej har shell-åtkomst. MySQLDumper är ett open source projekt och publiceras under GNU-licensen.

Skicka säkringsfiler via FTP till upp till 3 olika servrar. Detta fungerar även i kombination med Multipart funktionen.

Automatisk filradering: ställ in dina egna regler för radering av gammla säkringar. Ange antalet säkringsfiler som du vill spara och låt MySQLDumper radera äldre filer automatiskt.

Perl Cronscript: alla funktioner hos applikationen har integrerats i ett Perlskript (crondump.pl) som kan startas via Cronjob. Om du kan utföra Perl på din server så kan du låta MySQLDumper ta automatiska och regelbundna säkringar av din databas vid definerade tidpunkter. På så sätt glömmer du ej att säkra din databas!

Senast redigerad av mrdelta den 2011-11-23 klockan 19:18
mrdelta är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 22:34 #6
KristianE KristianE är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: May 2008
Inlägg: 3 074
KristianE KristianE är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: May 2008
Inlägg: 3 074
Ett tips är att skapa en MySQL-user med de lägsta rättigheterna som krävs för att ta backup på databaserna.

Man vill ogärna använda root-kontot för såna saker..

Och givetvis scriptar du allt och kör bash-scriptet i cron.
KristianE är inte uppkopplad   Svara med citatSvara med citat
Oläst 2011-11-23, 22:48 #7
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
mrdelta mrdelta är inte uppkopplad
Nykomling
 
Reg.datum: Nov 2011
Inlägg: 9
Just nu körde jag på en user som har "All privilegies"...
men vilka är de lägsta rättigheter som krävs för att backa upp då?

Kan man ha flera användare till samma databas?

Just nu så ligger allt i ett perl-script som körs av cron.
mrdelta är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 14:30.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017