Сьогодні я представляю зручну позицію для автоматизації даних Збереження nosri MySQL базу даних, на додаток до початкового сценарій може бути додано в кінці рятувальних і стиск окремих баз даних в кілька рядків копії на віддаленому сервері, а повідомлення в нашому доповіді, по електронній пошті.
#! / BIN / Bash
# Shell скрипт для резервного копіювання баз даних MySQL
# Для резервного копіювання баз даних Nysql файли / резервної рідше, а потім забрати Ваш
# Сценарій. Ви можете пропустити кілька баз даних з резервної копії теж.
# Для додаткової інформації див (інформація по встановленню):
# Http: / / www.cyberciti.biz/nixcraft/vivek/blogger/2005/01/mysql-backup-script.html
# Оновлено: Серпень - 2005
# -----------------------
# Це безкоштовний скрипт оболонки під GNU GPL версії 2.0 або вище
# Copyright (C) 2004, 2005 nixCraft проекту
# Зворотній зв'язок / зауваження / побажання: http://cyberciti.biz/fb/
# -------------------------
# Цей сценарій є частиною корпусу nixCraft скрипт збору (NSSC)
Відвідайте http://bash.cyberciti.biz/ # для одержання більш докладної інформації.
# Оновлене вересня - 2007 CyberTek - http://www.cybertek.it
# -------------------------
Myuser = "SET-MYSQL-ім'я користувача" # USERNAME
Mypass = "SET-пароль" # ПАРОЛЬ
MyHOST = "локальний" # хоста
# Linux бен шляху, змінити її, якщо вона не може бути виявлена за допомогою якого команда
MYSQL = "$ (який MySQL)"
Mysqldump = "$ (яка mysqldump)"
Chown = "$ (яка chown)"
Chmod = "$ (яка Chmod)"
GZIP = "$ (яка GZIP)"
# Backup Dest каталог, змінювати її, якщо у вас є someother розміщення
DEST = "/ резервного копіювання"
# Головна каталогу резервного копіювання, де будуть зберігатися
MBD = "$ DEST / MySQL"
# Отримати ім'я хоста
ПРИНИМАТЬСЯ = "$ (хоста)"
# Отримати дані в дд-мм-рррр форматі
ЗАРАЗ = "$ (ДАТА +"% D -% M -% Y ")"
# Файл для збереження резервної копії поточних файлів
Файла = ""
# Зберігайте список баз даних
DBS = ""
# НЕ BACKUP цих баз даних
IGGY = "тест"
[- D $ MBD] И І mkdir - P $ MBD | |:
# Тільки корінь є доступ!
Chown $ 0,0 - R $ DEST
$ Chmod 0600 $ DEST
# Отримати список всіх баз даних першого
DBS = "$ ($ MYSQL-у-ч myuser $ $ $ MyHOST-P-mypass BSE" шоу даних ') "
для БД в $ DBS
робити
skipdb = - 1
якщо [ "$ IGGY!" = ""];
тоді
Я в $ IGGY
робити
[ "$ Db" = = "$ I"] И І skipdb = 1 | |:
готово
FI
якщо [ "$ skipdb" = = "-1"], а потім
Файл = "$ MBD / $ DB. $ HOST. NOW.gz $"
# У всіх InOne роботи в трубі,
# Підключення до MySQL, використовуючи mysqldump для вибору бази даних MySQL
# І труба його до GZ файл резервної рідше:)
$ Mysqldump - $ U myuser - MyHOST H $ - $ P mypass $ DB | GZIP $ - 9> $ Фото
FI
готово
# Копіювання на віддалений сервер
Відлуння'******************* Example_Backup *******************'> / кореневої / mybackup.txt
Echo \>> / кореневої / mybackup.txt
дата>> / кореневої / mybackup.txt
Echo \>> / кореневої / mybackup.txt
'********************* Подробиці *********************' відлуння>> / корінь / mybackup.txt
# Пам'ятайте, що ПКПП команди ви не можете ввести пароль, якщо у вас є очищається одним з ключових на цільовій системі
# Інакше вам доведеться робити
SCP / копіювання / MySQL / * root@example.dom: / Головна / копіювання / пример / MySQL /
Ох-Ls / копіювання / MySQL />> / кореневої / mybackup.txt
Відлуння'************************************************ * '>> / кореневої / mybackup.txt
# Надіслати електронного листа з доповіддю про підсумки роботи, виконані
Mail-S "Приклад Backup" example@example.dom </ кореневої / mybackup.txt
# Видаляти після завантаження
RM-F / копіювання / MySQL / *



































