Титла: кажете някоя програма за архивиране Публикувано от: wasil2007 в Feb 22, 2007, 11:42 Кажете някоя програма за архивиране под линукс на определна папка в определен час.
да има възможност архивирането да се извършва на основния компютър и на друк ком от мрежата --------------------------------------- проблема ми е следния имам база данни искам през определно време да се архивира - да се запазва резервно копие на същия комп и на друг комп. Титла: кажете някоя програма за архивиране Публикувано от: Hapkoc в Feb 22, 2007, 11:54 Базата данни ако не е текстово файлче, а RDBMS (като MySQL или PostgreSQL), е добре да се архивира с инструментите на съответната база (примерно mysql_dump и pg_dump).
След това с tar + gz + ssh + rsync + cron можеш да направиш това, което искаш. Кажи по-подробно каква е крайната цел на задачата, за да можем да ти помогнем. Така много неясно и малко далеч от целта... Титла: кажете някоя програма за архивиране Публикувано от: neter в Feb 22, 2007, 12:37 Аз програма не знам, но ето скрипт, който използвам за архивиране. Понеже архивирам много папки, използвам няколко скрипта, но на теб са ти достатъчни тези три, които ще ти покажа след малко. Понагласил съм ги, но все пак твоите пътища е възможно да са различни. Като начало, направи си една папка /usr/local/backup и сложи скриптовете там, като след това направиш файловете изпълними.
Ето го първия. Този го кръсти conf.pl
В този файл ще описваш настройките за архивиране. Нагласил съм $just_back_up = 0; $delete_source = 0; за да имаш едновременно копие в компютъра, от който се изпълнява скрипта и копие на някой ftp сървър. Следващият скрипт го кръсти arh_mysql.pl
По този скрипт имаш работа само по четирите реда горе, за да зададеш коя папка ще се архивира и имена на файловете. Третият (последен) скрипт го кръсти както искаш. Аз за примера ще го кръстя arhivirane
Този скрипт ще изпълнява архивирането. Тъй като искаш да се изпълнява на всеки час, то трябва да добавиш в crontab-а следния ред: 45 * * * * /usr/local/backup/arhivirane По този начин на всеки час (1:45, 2:45, 3:45 и т.н.), скриптът ще се изпълнява и ще архивира. Заради дадените кодове, поста ми стана доста дълъг и обясненията ми са що годе постни, така че ако имаш някакъв проблем или нещо не ти е ясно - кажи и ще ти обясня по-добре ![]() edit: Тези скриптове ще правят архиви, които ще се трупат с времето (т.е. първото денонощие ще станат 24, след второто вече ще имаш 48 файла и т.н.), така че е хубаво да сложиш едно скриптче и за чистене на старите архиви. Ето един пример
Сложи го и него в /usr/local/backup (сложи го и на отдалечения сървър, където пращаш копие от архивите), направи го изпълним, кръсти го backup_cleaner и добави този ред в crontab-a 45 1 * * * /usr/local/backup/backup_cleaner По този начин, всеки ден в 1:45, ще се изтриват всички архиви, които са по-стари от 2 дена. Титла: кажете някоя програма за архивиране Публикувано от: wasil2007 в Feb 22, 2007, 15:12 много ти благодаря това ще ми сърши добра работа
Титла: кажете някоя програма за архивиране Публикувано от: growchie в Feb 22, 2007, 15:50 Май съм срещал в подобни скриптове, че SQL-а трябва да се спира преди архивиране и да се пуска след това.
http://linux-bg.org/cgi-bin....3636577 Тази статия ме вдъхнови за моите скриптове. Титла: кажете някоя програма за архивиране Публикувано от: neter в May 09, 2007, 19:02 Не е задължително SQL сървъра да е спрян по време на архивирането. Нека кажем, че е препоръчително. Но има ситуации, в които редовното спиране на SQL сървъра може да доведе до по-голяма вреда, отколкото един счупен архив. Човек си преценя сам за себе си. Ако няма лошо сървъра да бъде спиран по време на архивирането, то достатъчно е да се добавят два реда за целта във файла (в случая) arhivirane. Например:
Ако някой ден се видя в малко повече поредни свободни минути, ще драсна една статия, в която ще опиша нещата подробно и ще разгледам няколко ситуации. Титла: кажете някоя програма за архивиране Публикувано от: NikDaPhreak в May 09, 2007, 21:29 Не е нужно да се спира MySQL за създаване на копие от базата му. Има една програмка - mysqlhotcopy, която го прави "на живо". Има и вариант, който аз ползвам - казваш на MySQL-а да си запише cache-а на диска и да заключи базата. Копираш файловете с базата и после я отключваш. Работи безотказно.
Have Phun! NikDaPhreak |