A ciklikus biztonsági hétköznap
Ciklikus mentés naponta.
Az interneten is gyakran cikkeket, hogyan kell írni szkripteket automatikusan tartalék adatbázisok MSSQL. A technika, amelyben azt javasolja, hogy hozzon létre egy új fájlt minden nap.
I-hez kismértékű javulás a generációs szkriptek és archívumok hétköznap ciklikus felülírva velük. Script nem teljesen az enyém, és amely a különböző példák találhatók az interneten, de remélem, hogy ez egy lehetőség bemutatott hasznos lesz nemcsak nekem.
rendszeres script használják bekapirovaniya SQL Server:
DECLARE @pathName nvarchar (512)
SET @pathName = 'D: \ backup \ db_backup_' + konvertálása (varchar (8), getdate (), 112) + 'bak'
BACKUP DATABASE [MyDataBase] TO DISK = @pathName VALÓ noformat. INIT. NAME = N'db_backup”. SKIP. NOREWIND. NOUNLOAD. STAT = 10
Ez a szkript létrehoz egy biztonsági nevű fájlt db_backup_YYYYDDMM.bak ahol YYYYDDMM - ez az aktuális dátumot. A dátum a fájl neve lehetővé teszi számunkra, hogy hozzon létre egy biztonsági másolatot minden nap egy új fájlt. Kezdés és ellenőrizze, hogy a biztonsági mentés valóban létre egy ilyen kell, és akkor. Ez a szkript menti bármilyen nevű mappában schedule.sql tételezzük fel, hogy c: \ ütemezve feladatokat. Ugyanebben a mappában létre futtatható backup.bat, az alábbiak szerint:
Setlocal EnableExtensions EnableDelayedExpansion
For / F "zseton = 1 * Delims ==" %% i (WMIC Path Win32_LocalTime Get / érték ^ | Find "=" ") Do (
Ha a "% $ hétNapja%" == "0" Set $ hétNapja = 7
For / F "zseton =% $ hétNapja%" %% i ( "hétfő kedd szerda csütörtök péntek szombat vasárnap") régióról Set $ DayOfWeekName = %% i
Echo hónap. % $ MONTHNAME% (% $ Hónap% - az első hónap az évben)
Echo hétNapja. % $ DayOfWeekName% (% $ hétNapja% - az első nap a héten)
Echo negyedben. % $ Negyed%
Echo minute. % $ Minute%
Echo második. % $ Második%
sqlcmd -S SEVERNAME U felhasználónév -P jelszó -i schedule.sql
del D: \ Backup \ db_backup _% $ DayOfWeekName% .rar
"C: \ Program Files (x86) \ WinRAR \ Rar.exe" a -M2 D: \ Backup \ db_backup _% $ DayOfWeekName% .rar D: \ Backup \ db_backup _ * bak.
del D: \ Backup \ db_backup _ * bak.
Most tudjuk futtatni a futtatható fájl backup.bat ellenőrizni, hogy ez működni fog, ahogy van szükség. Az utolsó lépés az, hogy írják le menetrend feladatokat ablakok. Fuss Task Scheduler a Start menüből, vagy írja be a parancssorba taskschd.msc. A Windows különböző verzióit, máshogy néz ki, és arról, hogyan kell csinálni a feladatot megtalálható a Windows segítséget. A legfontosabb dolog -, hogy fut egy feladat, mint egy felhasználó megfelelő engedélyekkel a mappát használni. Ezekkel az intézkedésekkel, akkor is program és egyéb feladatokat. A szkript schedule.sql mentés előtt kiváltani a szükséges eljárásokat, újra indexelése vagy adatbázis tömörítés.
10. Nik (nikakoy) 43 16.06.10 13:36 Most a témában
Azóta végre.
A kiszolgáló nem terhelt a nap folyamán, egy ütemezett feladat megkezdése után 10 perccel. (Számított empirikusan, egy nagy mozgásteret).
A fájlok god_mesyats_data_MD és Year_Month_Date bekapiruyutsya fájlok MD, DDS, USR és az SQL biztonsági másolatot egy külön fájlba (mert tart egy tisztességes időben).
Technológia - a szerkezet a fájlok másolása, átnevezése és csomagolása az archívumban.
Backup fájlt átnevezi és archiválja.
A fájlnevek vannak kialakítva chas_minuty.rasshirenie.
bekapirovanie mint óránként nevében a fájlok nem becsapni, akkor az aktuális szerver idő.
Tulajdonképpen a VBS script
Const OverwriteExisting = TRUE
Állítsa objFSO = CreateObject ( "Scripting.FileSystemObject")
Állítsa WshHej = CreateObject ( "WScript.Shell")
L = LEN (CSTR (idő))
„Kialakulása új fájlneveket
ha L = 8, akkor
Newname = CStr (Mid (idő, 1,2) "_" Mid (idő, 4,2) "_" "Base_" ".bak")
NewNameMD = CStr (Mid (idő, 1,2) "_" Mid (idő, 4,2) "_" "Base_" ".MD")
NewNameDDS = CStr (Mid (idő, 1,2) "_" Mid (idő, 4,2) "_" "Base_" ".DDS")
NewNameUSR = CStr (Mid (idő, 1,2) "_" Mid (idő, 4,2) "_" "Base_" ".USR")
más
Newname = CStr (Mid (idő, 1,1) "_" Mid (idő, 3,2) "_" "Base_" ".bak")
NewNameMD = CStr (Mid (idő, 1,1) "_" Mid (idő, 3,2) "_" "Base_" ".MD")
NewNameDDS = CStr (Mid (idő, 1,1) "_" Mid (idő, 3,2) "_" "Base_" ".DDS")
NewNameUSR = CStr (Mid (idő, 1,1) "_" Mid (idő, 3,2) "_" "Base_" ".USR")
végén, ha
„C: \ BKP \ temp mappát a szerveren, hogy vissza
„N: \ Base \ útvonal az adatbázis könyvtárba
„Rar.exe fájl kerül a C: \ Program Files \ 1Cv77
„Files után a csomag eltávolított rar_om.
1 \ 1Cv77 \ RAR a \\ CetevoeImyaKudaPolozhitArhiv \ BKP $ \ Base_ " Mid (dátum, 9,2) "_" Mid (dátum, 4,2) "_" Mid (dátum, 1,2) "_MD C: \ BKP \ * -DW."
WshShell.Run runstr
objFSO.MoveFile "\\ Srv02 \ bkp $ \ Base_backup.bak", "\\ Srv02 \ bkp $" newname
RunStr = „C: \ Program
1 \ 1Cv77 \ RAR a \\ CetevoeImyaKudaPolozhitArhiv \ BKP $ \ Base_ " Mid (dátum, 9,2) "_" Mid (dátum, 4,2) "_" Mid (dátum, 1,2) ".rar \\ SetevoeImyaSQLservera \ bkp $" newname "-DW"
11. Nik (nikakoy) 43 16.06.10 13:42 Most a témában
Tud valaki jól jöhet.
Napi (1S jelenti) által végrehajtott a forgatókönyvet.
On Error Resume Next
dim ParamFile, BasePath, User, UserPassvord, Arhiv, RunString
Állítsa objShellApp = CreateObject ( "Shell.Application")
BasePath = "N: \ Base"
User = "UsVeR"
UserPassvord = "UsVeR_Pass"
Arhiv = CStr ( "N: \ Base \ InOut \ Base_" Mid (dátum, 9,2) "_" Mid (dátum, 4,2) "_" Mid (dátum, 1,2) ".zip")
ParamFile = CStr (BasePath "\ Arhiv.prm")
Állítsa FSO = CreateObject ( "Scripting.FileSystemObject")
„MsgBox paramfile, vbInformation
Set File = FSO.CreateTextFile (ParamFile)
file.WriteLine "[általános]"
file.WriteLine "Kilépés = 1"
file.WriteLine "UnloadData = 1"
file.WriteLine "[UnloadData]"
file.WriteLine "IncludeUserDef = 1"
file.WriteLine "UnloadToFile =" "" Arhiv „” „”
RunStr = "" "C: \ Program Files \ 1Cv77 \ BIN \ 1cv7s.exe" "Config / D" „” „” BasePath "" "/ N" használó "/ P" UserPassvord "/ @" "" paramFile „” „”
Állítsa WshHej = CreateObject ( "WScript.Shell")
WshShell.Run runstr
Ha err.number <> 0 Then
MsgBox "Chet nem nőnek együtt!", VbInformation
End If
12. Bogdan Vozniy (Baglandir) 20.09.11 13:09 Most a témában
Ezen kívül azt is hozzátenni, hogy nehézségek adódtak a takarítás log fájl is megoldható egy script.
13. Andrey Savenkov (Ichigo) 03.10.11 15:13 Most a témában
Egy jó forgatókönyv nagyon egyszerű!
Tettük, és felejtsd el mentést :) minden nap (éjjel) és automatikusan elindítja a mentés készül. Az emberi tényező ki (feledékenység).
16. Andrej Kuzmuk (skelelaz) 20.03.14 00:10 Most a témában
Bekaplyu bat-fájlt WinRAR naponta 3-szor. Rendben is. Rovására ciklikus - Inkább tiszta kézzel, és hagyd, hogy gyűjtsön annyi, hogy mennyi helyet a felesleges fájlokat. Néha szükség van archiválni hat hónappal ezelőtt, hogy vizsgálja meg.
Sozdanie15.06.10 15:17
Kód jelzett otkrytNe



