विंडोज के लिए दैनिक बैकअप एटलसियन JIRA और संगम



उद्देश्य:


मैं एक आरक्षण करूँगा जो मुझे विंडोज के लिए करने की आवश्यकता थी और मैं समझता हूं कि लिनक्स के लिए सब कुछ आसान और तेज हो गया है। इसके अलावा, यदि आप एक प्रशासक हैं, तो यह विषय आपके लिए रूचिकर नहीं है और आप कुछ भी नया नहीं सीखेंगे। लेकिन आप लिखित को तैयार और सिद्ध समाधान के रूप में उपयोग कर सकते हैं।


सबसे पहले, आइए चर को परिभाषित करते हैं:
::   Attachments  JIRA  Confluence set attachments="C:\Program Files\Atlassian\Application Data\JIRA\data" ::,     backups set backup_folder=D:\Backups\Atlassian\JIRA\daily_backups ::   mysqldump.exe set mysqldump_path="C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqldump.exe" ::  MySQL set dbuser=root ::   MySQL set dbpass=<change password> ::  ,     (JIRA  Confluence) set dbname=jiradb 


प्रत्येक बैकअप में एक विशिष्ट नाम होना चाहिए, आप इसे उत्पन्न करने के लिए वर्ष, माह, दिन और समय अंतराल का उपयोग कर सकते हैं।
 For /f "tokens=2-4 delims=/ " %%a in ('date /t') do (set dt=%%c-%%a-%%b) For /f "tokens=1-4 delims=:." %%a in ('echo %time%') do (set tm=%%a%%b%%c%%d) set backupdate=%1%dt%_%tm% set date_folder=%1%dt% 


आप अपने नाम के अनुसार अपना नाम समायोजित कर सकते हैं, मेरे मामले में प्रारूप यह है: [db name] .YYYY-MM-DD2tt

मैंने चर date_folder सेट किया है ताकि YYYY-MM-DD फ़ोल्डर हर दिन बनाया जाए और इसमें बैकअप जोड़े जाएं।

तदनुसार, यदि कोई निर्देशिका नहीं है, तो इसे बनाएं:
 if exist %backup_folder%\%date_folder% GOTO NODIR mkdir %backup_folder%\%date_folder% :NODIR 


इसके बाद, हम mysqldump, 7zip का उपयोग करके आर्काइव और संग्रहीत फ़ाइल को हटाने के लिए डेटाबेस का सामान्य बैकअप करते हैं।
 %mysqldump_path% --user=%dbuser% --password=%dbpass% --databases %dbname% > "%backup_folder%\%date_folder%\%dbname%.%backupdate%.sql" "zip\7za.exe" a -tzip "%backup_folder%\%date_folder%\%dbname%.%backupdate%.zip" "%backup_folder%\%date_folder%\*.sql" del "%backup_folder%\%date_folder%\*.sql" 


संलग्नक के साथ फ़ोल्डर को संग्रहीत करना न भूलें:
 "zip\7za.exe" a -tzip %backup_folder%\%date_folder%\attachments.%backupdate%.zip %attachments% 


और हमारे लिए जो कुछ भी है वह पुरानी निर्देशिकाओं (14 दिनों से अधिक) को हटाना है।
 forfiles -p %backup_folder% -s -d -14 -c "cmd /c if @isdir == TRUE rd /s /q @path" 


हमारे लिए जो कुछ भी है वह इस टास्क फाइल को विंडोज टास्क शेडयूलर को फीड करना है और यह निर्दिष्ट करना है कि कार्य हर दिन काम करता है।

PS यदि कार्य काम नहीं करता है, तो जांचें कि एक चेकमार्क है कि कार्य को तब भी निष्पादित किया जाना चाहिए जब उपयोगकर्ता जिस ओर से कार्य लॉन्च किया गया है वह लॉग इन नहीं है, और यह कि उपयोगकर्ता ने अनुमतियाँ लिखी हैं। इसके अलावा, यह बताना न भूलें कि कार्य उस निर्देशिका में निष्पादित किया जाना चाहिए जिसमें स्क्रिप्ट निहित है। (कार्यों के लिए, यह एक वैकल्पिक पैरामीटर है, लेकिन इसके बिना, कार्य ने काम किया, लेकिन स्क्रिप्ट नहीं चली।)

PPS यदि किसी को स्क्रिप्ट उपयोगी लगी, तो आप इसे यहाँ डाउनलोड कर सकते हैं: डाउनलोड करें

Source: https://habr.com/ru/post/In131893/


All Articles