Dnes jsem představují pohodlnou polohu pro automatizaci databáze úspory nosri mysql databáze, v dodatku k původnímu skriptu mohou být přidány na konci roku na záchranu a komprese jednotlivých databází v několika řádků kopírování na vzdálený server a okna v naší zprávy e-mail.
#! / Bin / bash
# Shell skript na zálohování databáze MySQL
# Pro zálohování databází Nysql soubory / backup dir a později vyzvednout vaše
Script #. Můžete přeskočit několik databází ze zálohy příliš.
# Pro více info viz (Instalace info):
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Poslední aktualizace: srpen - 2005
# -----------------------
# Toto je svobodný shell skript pod GNU GPL verze 2.0 nebo vyšší
# Copyright (C) 2004, 2005 nixCraft projektu
# Ohlasy / připomínky / návrhy: http://cyberciti.biz/fb/
# -------------------------
# Tento skript je součástí nixCraft shell skript kolekce (NSSC)
Navštivte # http://bash.cyberciti.biz/ pro více informací.
# Aktualizováno Září - 2007 by CyberTek - http://www.cybertek.it
# -------------------------
Myuser = "SET-mysql-user-NAME" # USERNAME
Mypass = "-SET PASSWORD" # PASSWORD
MyHOST = "localhost" # Hostname
# Linux bin cest, měnit, pokud to není možné autodetected, přes který příkaz
MYSQL = "$ (což mysql)"
Mysqldump = "$ (což mysqldump)"
Chown = "$ (což chown)"
Chmod = "$ (což chmod)"
GZIP = "$ (což gzip)"
# Záložní Dest adresáře změnit, pokud máte someother umístění
DEST = "/ backup"
# Hlavní adresář zálohy, kde budou uloženy
MBD = "$ DEST / mysql"
# Get hostname
HOST = "$ (hostname)"
# Get údajů v dd-mm-rrrr formát
NOW = "$ (datum +"% d -% m -% Y ")"
# Soubor pro ukládání aktuální záložní soubor
FILE = ""
# Uchovávejte Seznam databází
DBS = ""
# DON'T BACKUP těchto databází
Iggy = "test"
[- D $ MBD] & & mkdir - p $ MBD | |:
# Pouze root může přístup je!
Chown $ 0,0 - R $ DEST
$ Chmod 0600 $ DEST
# Get všechny databáze seznam prvního
DBS = "$ ($ MYSQL-u myuser-h $ $ $ MyHOST-p-mypass BSE 'show databáze')"
za $ db v DBS
dělat
skipdb = - 1
if [ "$ iggy!" = ""];
pak
pro i in $ iggy
dělat
[ "$ Db" = = "$ i"] & & skipdb = 1 | |:
hotovo
fi
if [ "$ skipdb" = = "-1"]; potom
FILE = "$ MBD / $ db. $ HOST. NOW.gz $"
# Do všech InOne práci v potrubí,
# Připojení k MySQL pomocí mysqldump pro zvolení mysql databáze
# A pipe to na gz soubor zálohy dir:)
$ Mysqldump - $ u myuser - MyHOST h $ - $ p $ db mypass | GZIP $ - 9> $ FILE
fi
hotovo
# Kopírování na vzdálený server
echo'******************* Example_Backup *******************'> / root / mybackup.txt
echo \>> / root / mybackup.txt
datum>> / root / mybackup.txt
echo \>> / root / mybackup.txt
'********************* Detaily *********************' echo>> / root / mybackup.txt
# Pamatovat, že scp příkaz nelze zadat heslo, pokud jste schválila klíčový pro cílový systém
# Jinak budete muset dělat
scp / backup / mysql / * root@example.dom: / home / backup / example / mysql /
oh-ls / backup / mysql />> / root / mybackup.txt
echo'************************************************ * '>> / root / mybackup.txt
# Odeslat email se zprávou o provedené práci
mail-s "Příklad Zálohování" example@example.dom </ root / mybackup.txt
# Odstranit po nahrání
rm-f / backup / mysql / *



































