Avui em presento una posició còmoda base de dades per automatitzar l'estalvi nosri base de dades mysql, a més del guió original es poden afegir al final del rescat i la compressió de cada un dels bases de dades en poques línies la còpia en un servidor remot i un quadre de missatge en el nostre informe correu electrònic.
#! / Bin / bash
# Shell script per còpia de seguretat de base de dades MySql
# Per Nysql arxius de còpia de seguretat de bases de dades a / de còpia de seguretat i, posteriorment, dir recollir el seu
# Script. Vostè pot saltar-se les poques bases de dades de còpia de seguretat també.
# Per a més informació si us plau vegeu (informació d'instal lació):
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Última actualització: agost - 2005
# -----------------------
# Aquest és un script de shell lliure sota llicència GNU GPL versió 2.0 o superior
# Copyright (C) 2004, 2005 nixCraft projecte
# Comentaris / comentaris / suggeriments: http://cyberciti.biz/fb/
# -------------------------
# Aquest script és part de l'script de shell nixCraft col lecció (NSSC)
Visita # http://bash.cyberciti.biz/ per a més informació.
Actualització # set - 2007 per CyberTek - http://www.cybertek.it
# -------------------------
Myuser = "SET-MYSQL nom d'usuari" # USUARI
Mypass = "SET PASSWORD" # CONTRASENYA
MyHOST = "localhost" # Nom de la màquina
# Linux bin camins, aquest canvi si no es pot automàticament a través de comandaments que
MYSQL = "$ (que mysql)"
Mysqldump = "$ (que mysqldump)"
Chown = "$ (que chown)"
Chmod = "$ (que chmod)"
GZIP = "$ (que gzip)"
# Directori de destinació de còpia de seguretat, aquest canvi si té someother ubicació
DEST = "/ backup"
# Inici del directori on s'emmagatzema la còpia de seguretat
MBD = "$ DEST / mysql"
# Obtenir el nom de host
Host = "$ (hostname)"
# Obtenir dades en dd-mm-aaaa format
ARA = "$ (date +"% d -% m -% I ")"
# Arxiu per guardar l'arxiu de còpia de seguretat actual
FILE = ""
# Llista de botigues de les bases de dades
DBS = ""
# NO BACKUP aquestes bases de dades
Iggy = "prova"
[- D $ DMO] & & mkdir - MBD $ p | |:
# Només root pot accedir a ell!
Chown $ 0,0 - R $ DEST
$ Chmod 0600 $ DEST
# Obtenir totes les dades primera llista
DBS = "$ ($ mysql-u-h myuser $ $ $ MyHOST-p-mypass EEB" mostra les bases de dades') "
per db a $ DBS
fer
skipdb = - 1
if [ "$ Iggy!" = ""];
aleshores
i en $ Iggy
fer
[ "$ Db" = = "$ i"] & & skipdb = 1 | |:
fet
fil
if [ "$ skipdb" = = "-1"] i, a continuació,
FILE = "$ MBD / $ db. $ Amfitrió. NOW.gz $"
# Tots InOne treball en la canonada,
# Connecta a mysql utilitzant mysqldump per seleccionar base de dades mysql
# I que la canonada a gz arxiu de còpia de seguretat en la dir:)
$ Mysqldump - $ u myuser - MyHOST h $ - $ p mypass $ db | $ GZIP - 9> $ FILE
fil
fet
# De còpies al servidor remot
echo'******************* Example_Backup *******************'> / root / mybackup.txt
echo \>> / root / mybackup.txt
data>> / root / mybackup.txt
echo \>> / root / mybackup.txt
'********************* Detalls *********************' echo>> / root / mybackup.txt
# Scp recordar que la comanda no es pot especificar la contrasenya en cas que s'han netejat un element clau en el sistema de destí
# En cas contrari haurà de fer
scp / backup / mysql / * root@example.dom: / home / backup / exemple / mysql /
oh-ls / backup / mysql />> / root / mybackup.txt
echo'************************************************ * '>> / root / mybackup.txt
# Envieu un correu electrònic amb l'informe del treball realitzat
mail-s "Exemple de còpia de seguretat" example@example.dom </ root / mybackup.txt
# Delete després de carregar
rm-f / backup / mysql / *



































