Негізгі мазмұнға өту

Жергілікті қалтадағы сценарийдің резервтік көшірмелері Mysql



Мен Ispmanager-ды пайдаланудан толық бас тартуға шешім қабылдадым, өйткені ол ресурстарды алады және бір ғана нәрсе үшін - деректерді резервтеу үшін қолданылады. Бірақ бұл жеке түрде жасалуы мүмкін болғандықтан, панельді он серверге сақтау серверде мүлдем болмайды.

Сондықтан бірінші міндет - MySQL деректер қорының резервтік көшірмесін жасау. Дерекқорлар өлшемі кішкентай, сондықтан сақтық көшірмелердің қарапайым нұсқасы пайдаланылады - мұрағаттар жасау және нақты сервер қалтасына орналастыру.



Әрине, sftp резервтік көшірмесін басқа деректер орталығында (және қазірдің өзінде бар елде) басқа серверге жіберуге болады, бірақ менің сайттар айына бірнеше рет өзгергендіктен, әр екі күнде сақтық көшірмелерді жүктеу қиын емес мамандық бойынша. :)

Мен осы сәттен бастап Башта сценарий жазуға ешқандай тәжірибем жоқ еді. Бірақ әртүрлі сайттарда серверді басқару туралы mysql сақтық көшірмелерінің көптеген мысалдарын ескере отырып, оны түсіну қиын емес.



Mysqlbackup.sh скриптің өзі:

 #! / bin / bash # айнымалы мәндерін баптаңыз TMPDIR = «sqlfiles» BACKUPDIR = «/ storage» USER = «root» PASS = «xxx» TIMEY = $ (күн +% Y-% m-% d) # егер [!  -d «$ BACKUPDIR»];  онда mkdir -m 0700 «$ BACKUPDIR» fi # егер [!  -d «$ BACKUPDIR / $ TMPDIR»];  mkdir -m 0700 «$ BACKUPDIR / $ TMPDIR» # # mysql -s -r -e 'SHOW DATABASES' дерекқорындағы дерекқор үшін «$ BACKUPDIR / $ TMPDIR» CD көшірмесін сақтаңыз.  grep -v дерекқоры |  grep -v information_schema |  grep -v performance_schema |  grep -v mysql`;  mysqldump $ дерекқоры> $ database.sql жасаңыз # cd мұрағатын жасау «$ BACKUPDIR» tar -cjf дерекқорлары - «$ TIMEY» .tbz2 «$ TMPDIR» chmod 0600 дерекқорлары - «$ TIMEY» .tbz2 # Уақытша қалта rm - r $ TMPDIR echo «Дерекқор сақталады!»  шығу 1 

Mysql-мен жұмыс істеу тікелей түбірлік пайдаланушыдан орындалады, өйткені ол бірден барлық дерекқорларға қол жеткізе алады.

Дерекқор information_schema , mysql , performance_schema сақтық көшірмеден шығарылады. Содан кейін барлық дерекқорлар bzip2-архивіне орналастырылады және кейінірек қотарып алуға болатын белгілі бір қалтада сақталады.



Сценарийді күніне бір рет орындау тапсырмасы Cron жоспарлаушыда, мысалы, таңертең бірде жазылған.

  00 01 * * * sh ~ / mysqlbackup.sh 

Егер дұрыс электрондық пошта тәжі параметрлерінде орнатылған болса, онда сақталған дерекқорлар тізімде болатын пошта кеңсесіне есеп жіберіледі.

PS Сондай-ақ, сақтық көшірмелерді күніне бірнеше рет жасауға болады. Бұл әрекетті орындау үшін, файлды қайта жазу үшін, мұрағаттың атын құру уақытын көрсетуіңіз керек.



Сіз мақаланы қалай бағалайсыз?
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (Пікірлер жоқ)
Жүктелуде ...

” 4 Пікірлер « Жергілікті қалтадағы сценарийдің резервтік көшірмесін Mysql »

    1. Оң, босатылған уақыт. Бірақ, менің үйімнің түбірлік қалтасында .my.cnf файлын пайдаланғаным үшін ғана. Осы форматта тіркелген логин мен пароль бар:

        [клиент]
       user = түбірі
       пароль = 12345 

      Бұны бұрынғы лауазымға қосқан боларсыз. :)

Пікір қосу

Сіздің электронды поштаңыз жарияланбайды.