CyberTek - the future at the present!
Google

Script para salvar bancos de datos mysql

Publicado por: admin (set 21)

Hoxe eu presento unha base de datos accesible amplia automatizar aforro da base de datos mysql nosri, ademais do guión orixinal poden ser engadidos ao final de recuperación e compactación de bases de datos individuais en poucas liñas a copia nun servidor remoto e unha caixa de mensaxe no noso informe e-mail.

# / Bin / bash
# Shell script para backup de base de datos MySQL
# Para base de datos arquivos para backup Nysql / dir backup e despois incorporarse á súa
Script #. Podes saltar a partir dalgunhas bases de copia de seguridade tamén.
# Para máis información consulte (Información de Instalación)
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Última actualización: agosto - 2005
# -----------------------
# Este é un shell scripts libre baixo a licenza GNU GPL versión 2.0 ou superior
# Copyright (C) 2004, nixCraft proxecto 2005
# Feedback comentario / suxestións: http://cyberciti.biz/fb/
# -------------------------
# Este script fai parte da colección nixCraft script shell (NSSC)
# Http: / bash.cyberciti.biz / / Visita para máis información.
# Actualizado en outubro - 2007 por CyberTek - http://www.cybertek.it
# -------------------------

Meu_usuário = "Set-mysql-nome de usuario" USERNAME #
Minhasenha = "Set PASSWORD" PASSWORD #
Myhost = "localhost" # hostname

# Linux camiños bin, se este cambio non pode ser detectado automaticamente por Cal comando
MySQL = "$ (que MySQL)"
Mysqldump = "$ (Que mysqldump)"
Chown = "$ (Que chown)"
Chmod = "$ (Que chmod)"
GZIP = "$ (Que gzip)"

# Directorio Desta Backup, cambiar isto se ten someother local
DEST = "/ backup"

# Principais backup directorio onde serán gardados
MBD = "$ DEST / mysql"

# Get hostname
HOST = "$ hostname ()"

# Obter o formato de data dd-mm-yyyy
AGORA = $ (date "+% d -% m" -% Y ")"

# Arquivo para almacenar arquivos de copia de seguridade actual
FILE = ""
# Store lista de bases de datos
DBS = ""

# NON backup destes bancos de datos
Iggy = "proba"

[! - D $ MBD] & & mkdir - p $ MBD | |:

# Raíz Só pode acceder-lo!
Chown 0.0 - R $ DEST $
Chmod $ 0600 $ DEST

# Get toda a lista primeiro banco de datos
DBS = "$ ($ mysql-u meu_usuário-h $ myhost mypass p-BSE 'show $ bases de datos')"

por db en $ DBS
C
skipdb = - 1
if ["$ Iggy! =" "];
a continuación
for i in $ Iggy
C
["$ BD" = "$ i"] & & skipdb = | 1 |:
feito
fi

if ["$ skipdb" = "1"] then
FILE = "$ MBD / db $. $ HOST. NOW.gz $"
# Facer todo o traballo Inoni en tubos,
# Entra ao mysql usando mysqldump para base de datos mysql seleccionar
# E canaliza-lo para fóra gz arquivo no directorio de backup:)
- U $ $ myuser mysqldump - myhost h - $ p $ db mypass $ $ | GZIP - 9> $ FILE
fi

feito

# Copiar no servidor remoto
echo'******************* *******************'> Example_Backup / root / mybackup.txt
echo \>> / root / mybackup.txt
data>> / root mybackup.txt /
echo \>> / root / mybackup.txt
Detalles *********************''********************* echo>> / root / mybackup.txt
# Lembre que o comando scp non pode especificar o contrasinal, no caso de que teña desmarcada unha clave no sistema de destino
# Se non o fai
/ Backup scp mysql / root@example.dom *: / home / backup / example / mysql /
Oh-ls / backup / mysql />> / root mybackup.txt /
echo'************************************************ * '>> / root / mybackup.txt
# Envía un correo cos informes dos traballos executados
Mail-s "Exemplo example@example.dom <" Backup / root mybackup.txt /

# Eliminar despois de carga
rm-f / backup / mysql / *

Publicado en: desenvolvemento , mysql , scripts , consellos
  1. Gio said

    Ko, teño sido moi útil, moitas grazas!

Engadir un comentario

Spam protección por wp Captcha-Libre

Powered by CyberTek - Asistencia Remota