Windows Server: skript pro automatickou zálohu MySQL databáze a obsahu adresářů na FTP

MyEgo.cz

home foto blogy mywindows.cz kontakt

Windows Server: skript pro automatickou zálohu MySQL databáze a obsahu adresářů na FTP

PHP 28.10.14

Ideální hosting pro větší projekty, které nepotřebují vlastní dedikovaný server, je dle mého VPS s Windows. Snadno se administruje, nabízí vysoký výkon (v případě cloudu téměř neomezený), a spustíte na něm vše - od IIS, přes Apache, MySQL po SQL Server 2014.

Za pomoci jen integrovaných Windows nástrojů (Command line a ftp.exe) a 7Zipu je na takovémto serveru snadné napsat zálohování na externí FTP.

Osobně používám skript, který v pravidelném intervalu (X hodin) udělá kompletní dump MySQL databáze, nahraje jej zašifrovaný na FTP server, a jak lokálně tak na FTP serveru smaže staré zálohy, aby tam bylo místo pro nové. Podobně pracuji s adresáři, zazipují se, zašifrují, a nahrají na FTP server, se smazáním těch nejstarších.

Slouží mi pro to pár jednoduchých BAT souborů. Zálohu MySQL jsem převzal a upravil z Redolive.com.

Budu rád, pokud tyto zálohovací skripty použijete, když mi dáte vědět.

Skripty počítají s formátem data "xx dd. mm. yyyy" (česká instalace Windows Server 2012 R2), pokud máte na serveru jinak nastavené národní prostředí, skripty pracující s datumem upravte. Samozřejmě je potřeba nastavit [hodnoty v hranatých závorkách]. Na FTP skript předpokládá existenci adresářů /db a /media.

[config.bat] Konfigurační soubor

 

[mysqlbackup.bat] Záloha MySQL databáze

 

[mediabackup.bat] Záloha obsahu adresářů

 

[ftpdelete.bat] Automatické smazání starých souborů na FTP

 

Komentáře

  1. 1 Pavel Máca 28.10.14, 12:48:27

    Nepřemýšlel jste o využití PowerShell? Přece jen větší možnosti, 64bit běh a integrace s Windows.

  2. 2 Jiří Adámek 08.02.15, 23:28:35

    Jediný přínos vidím ve skriptu pro zálohování MySQL. Zbytek je naprosto zbytečný, když existuje Cobian Backup, který je zadarmo a umí snad vše, co si dokáže člověk představit.

  3. 3 Radek Hulán 17.02.15, 22:28:47

    [2] existují zjevně lidé, co nechtějí instalovat, aktualizovat a konfigurovat freewarové utilitky s potencionálními bugy, když to jde řešit v rámci Windows..

  4. 4 Honza Suomec 16.04.15, 15:15:00

    [3] Myslím, že ve Windowsech těch bugů bude víc. Ale taky jsem programátor a rád si občas napíšu něco, co už udělali jiní. Konec konců, proč nevymýšlet vymyšlené, může to být lepší :-)

  5. 5 Jan Sukničkář 07.05.15, 22:46:13

    používám sqlcmd.exe -S server/data -U sa -P password -Q "backup database mojeneco to disk="c:\zaloha_%date%.bak" with name =N"zaloha_neco""
    Naplánuji v plánovači úloh. Tak proč to dělat složitě... :-)