Начало Вход/Регистрация Помощ Tazi stranica s latinski bukwi
Области
 Новини
 Актуална тема
 Linux портали
 Какво е Линукс?
 Въпроси-отговори
 Форуми
   •Трудова борса
   •Конкурс
 Статии
 Дистрибуции
   •Поръчка на CD
 Made In BG
 Файлове
 Връзки
 Галерия
 Конференции
Настройки
 Външен вид
 Предложения
 Направи си сам
И още ...
 За нас
 Линукс за българи ЕООД
 Линк към нас
 Предложения

Подкрепяно от:
TelePoint - Място за хора със свободни идеи

SiteGround

initLab

Adsys Group

SAP Bulgaria

Въпроси отговори
Въпрос: data and sql backup
[Търси: ]

ВНИМАНИЕ: Използвайте форумите на сайта за дa зададете вашите въпроси.

Към началото |Добави въпрос |Отговори
 
Въпрос
От: Innocente (radi __@__ haskovo< dot >com) Дата: 12/03/2003
Здравейте,
 Тъй като не сам много компетентен в тази област ще се опитам
да формулирам въпроса си така че да ме разберете.

 Не знам каде се записват база данните от mysql ще изпозлвам
ще използвам нереална папка "sql/x"

Въпросът ми е следния:
 Как може ежедневно машината да прави backup на информацията
 като копира информацията от "sql/x" в папка
 /home/backup/sql/$date, като $date e датата в която е
 извършен backup-a, и същата процедура за информацията да се
 извърши за информацията която се намира /home/data и трябва
да бъде записана в /home/backup/data/$date

Възможно ли е това да стане, и ако може как?
Благодаря!



Отговор #1
От: Дядо Мец Дата: 12/04/2003
ОК разбрахме те ;)
 Къде MySQL записва данните си зависи най-вече от
 дистрибуцията, която ползваш, но това в случая е без
 значение, тъй като за архивиране на бази данни се прави dump
 на базата в sql формат. Архивирането на самите файлове също
е възможно но не е препоръчителния вариант. 
 За dump на база данни MySQL разполага със собствен клиент,
наречен mysqldump ;)
В общи линии синтаксиса е както следва:

mysqldump -h$host -u$user -p$password --all-databases \
--opt > /path/to/$date.sql

За повече подробности man mysqldump.
 За архивиране на файлове най-често се използва tar. Отново в
общи линии синтаксиса е такъв:

tar cPzf /path/to/$date.tar.gz /path/to/files/*

Всичко това може да си опишеш в bash скрипт, който да викаш
с cron и така да автоматизираш архивирането. 
 Колкото до това името на архивния файл да бъде datestamp, то
 можеш в скрипта да зададеш стойност на променливата $date
така:

date=`date +%Y%m%d`

 В случая datestamp ще бъде във формат YYYYMMDD. Отново за
повече информация man date.

И накрая искам да ти обърна внимание на следното:
 Не е никак удачно да архивираш информация на същия дял, на
 който е самата информация. Ако гръмне hard-а заминават и
 данните и архива. Най-малко архивирай на друг дял от диска,
 още по-добре на друг hard диск и при първа възможност
 копирай на външен носител (ZIP, CD-R, CD-RW, whatever). А
най-добре да архивираш направо на външен носител.

А, и още нещо - внимавай с правата на bash скрипта тъй като
 паролата за четене от базите данни е в прав текст. И си
 създай нов потребител на MySQL с права само за четене на
базите, които ще архивираш.


<< X forwarding prez ssh (2 ) | За Каунтър Страйк,бавно меню! (1 ) >>

 
© 2011-... Асоциация "Линукс за българи"
© 2007-2010 Линукс за българи ЕООД
© 1999-2006 Slavej Karadjov
Ако искате да препечатате или цитирате информация от този сайт прочетете първо това
Външния вид е направен от MOMCHE
Code Version: 1.0.8 H (Revision: 23-09-2011)
 
Изпълнението отне: 0 wallclock secs ( 0.07 usr + 0.01 sys = 0.08 CPU)