Sql zaxira nusxasi. Microsoft SQL Server ma'lumotlar bazalarini zaxiralash

Bacula Enterprise Edition -ning keng funktsional imkoniyatlari, shu jumladan ma'lumotlar bazasining zaxira nusxalarini tez va oson yaratish imkonini beradi. Masalan, biz MS SQL Server zaxira nusxasini yaratadigan vosita haqida gapiramiz. Foydalanuvchi Windows SQL platformasida ishlatiladigan katta hajmdagi MS SQL ma'lumotlar bazalarining zaxira nusxalarini yaratish, uchinchi tomon dasturlari uchun arzonroq, ma'lumotlarni ma'lum vaqtgacha tiklash imkoniyati bilan MS SQL zaxira nusxasini yaratishi mumkin. tiklash) tarmoq va mahalliy haydovchiga.

MS SQL Server zaxira nusxalarini yaratish uchun Bacula Systems skripti zamonaviy, juda ishonchli arxitekturani joriy etish orqali erishilgan yuqori samaradorlik bilan ajralib turadi. Bundan tashqari, dasturiy ta'minot MS SQL Server zaxira nusxasini yaratishga, MS SQL zaxira nusxalarini yaratish uchun turli xil variantlardan foydalanishga imkon beradi.

MS SQL Bacula Systems zaxira skriptlari VSSdan mustaqil ishlaydi. Bu shuni anglatadiki, MS SQL zaxira vositasi zaxira nusxalarini yaratish uchun VSS lahzalarini ishlatmaydi. Shunday qilib, foydalanuvchi Bacula FileSet -da "VSS -ni yoqish = yo'q" quyidagi qiymatini o'rnatishi mumkin. MS SQL Server zaxira nusxalarini samarali yaratish va ularni ushbu yechim yordamida tiklash SQL Server uchun Microsoft API yordamida amalga oshiriladi. Bu Bacula Systems -ga Microsoft SQL Server -da mavjud bo'lgan xavfsizlik mexanizmlarini va autentifikatsiyaning barcha turlarini qo'llab -quvvatlash imkonini beradi.

MS SQL tranzaktsiyalar jurnalining zaxira nusxasi va MS SQL-ni o'z vaqtida tiklash: Bacula Enterprise Edition dasturi sizga ma'lum vaqtgacha MS SQL ma'lumotlar bloklarini yoki maxsus sozlamalarni tiklash imkonini beradi. To'liq va katta ro'yxatga olingan qutqarish modellarini qo'llash orqali siz MS SQL-ni PITR-ni tiklash orqali tiklashingiz yoki tizimni ma'lum holatga qaytarish uchun LSN-dan foydalanishingiz mumkin. MS SQL ma'lumotlar bazasining ma'lum bir holatini istalgan vaqtda, ikkinchisiga aniqlik bilan qaytarishingiz mumkin. MS SQL tranzaktsiyalar jurnalining zaxira nusxasi bo'lsa, tiklash paytida ma'lumotlar bazasining holati tanlangan turli xil zaxira nusxalaridan tiklanadi.

Funktsiyalar haqida umumiy ma'lumotBacula Enterprise yordamida MS SQL -ni avtomatik zaxiralash va tiklash

Bacula Systems Bacula Enterprise Edition bilan ishlash uchun MS SQL Server zaxira plaginini yaratdi. Bacula yordamida MS SQL Serverni zaxiralash quyidagi xususiyatlarga ega:

  • To'liq va differentsial MS SQL zaxiralarini qo'llab -quvvatlaydi
  • MS SQL qo'shimcha zaxira nusxalarini qo'llab -quvvatlash
  • MS SQL zaxira nusxasi tarmoq va mahalliy diskda
  • Rejalashtirilgan MS SQL zaxirasi
  • MS SQL Server ma'lumotlar bazasi darajasida zaxira nusxalarini yaratish
  • Ma'lumotlar bazasini zaxira nusxalarini yaratish tartibiga kiritish / chiqarib tashlash imkoniyati
  • Ma'lumotlar bazasining faqat o'qish uchun zaxira nusxalarini yaratishni qo'llab-quvvatlash
  • Diskda MS SQL zaxira nusxalarini tiklash
  • Zaxira oqimini to'g'ridan -to'g'ri saqlash xizmatiga yuborish
  • MS SQL-ni o'z vaqtida tiklash

MS SQL 2008, 2008 R2, 2012 va 2014 zaxira nusxalarini ko'rib chiqish va sozlash

Ushbu hujjat Bacula Enterprise Edition 8.4 va undan keyingi versiyalar uchun dasturiy ta'minotning oldingi versiyalarida qo'llab -quvvatlanmaydigan echimlarni taqdim etadi. MS SQL ma'lumotlar bazasi zaxirasi MS SQL 2003 R2, MS SQL 2008 R2, MS SQL 2012, MS SQL 2005, MS SQL 2008, MS SQL 2014 tomonidan sinovdan o'tkazildi va qo'llab -quvvatlandi.

MS SQL zaxira lug'ati 2008, 2008 R2, 2012 va 2014

  • MS SQL Microsoft SQL Server degan ma'noni anglatadi.
  • Tranzaktsiyalar jurnali Har qanday MS SQL Server ma'lumotlar bazasida tranzaktsiyalar jurnali mavjud bo'lib, u barcha operatsiyalar va bunday operatsiyalar davomida bajarilgan ma'lumotlar bazasi modifikatsiyasini qayd qiladi. Tranzaktsiyalar jurnali ma'lumotlar bazasining muhim elementi hisoblanadi. Tizim ishlamay qolganda, ma'lumotlar bazasini ish holatiga qaytarish uchun tranzaktsiyalar jurnali talab qilinishi mumkin. Qo'shimcha ma'lumot olish uchun qarang: https://msdn.microsoft.com/en-us/library/ms190925.aspx.
  • MS SQL Server ma'lumotlar bazasining differentsial zaxirasi. Differentsial zaxiralash oxirgi to'liq zaxiraga asoslangan. Differentsial zaxiralash paytida faqat oxirgi to'liq zaxiradan beri o'zgargan ma'lumotlar olinadi. Qo'shimcha ma'lumot olish uchun qarang: https://msdn.microsoft.com/en- us/library/ms175526.aspx.
  • MS SQL Server ma'lumotlar bazasining to'liq zaxirasi. Ma'lumotlar bazasini to'liq zaxiralash paytida ma'lumotlar bazasi zaxiralanadi. Zaxira nusxasi zaxiradan to'liq ma'lumotlar bazasini tiklash uchun tranzaktsiyalar jurnalining bir qismini o'z ichiga oladi. Ma'lumotlar bazasining to'liq zaxira nusxalari zaxiralash tugagandan so'ng ma'lumotlar bazasini o'z ichiga oladi. Qo'shimcha ma'lumotni https://msdn.microsoft.com/en- us/library/ms186289.aspx saytida topishingiz mumkin.
  • "Faqat nusxalash uchun" zaxiralash (CopyOnly). Faqat nusxa ko'chirish-bu an'anaviy SQL Server zaxiralarining oddiy ketma-ketligidan mustaqil bo'lgan MS SQL zaxiralari. Ba'zida ma'lumotlar bazasini zaxiralash va tiklash jarayoniga ta'sir qilmasdan, maxsus ehtiyojlar uchun zaxira nusxalarini yaratish foydalidir. Qo'shimcha ma'lumot olish uchun qarang: https://msdn.microsoft.com/en-us/library/ms191495.aspx.
  • VDI(Virtual Appliance Interface) - bu yaratishga imkon beradigan Microsoft texnologiyasi nomlangan quvur dasturlar o'rtasida.
  • standart niqoblar joker belgilar qatorini belgilaydi. Masalan, standart ishlab chiqarish * niqobi production1 va production2 ni o'z ichiga oladi.
  • chiziq
  • butun son.
  • LSN MS SQL Server tranzaktsiyalar jurnalidagi har bir yozuv yagona bitim ro'yxatga olish raqami (LSN) bilan aniqlanadi. Qo'shimcha ma'lumotni https://technet.microsoft.com/en-us/library/ms190411%28v=sql.105%29.aspx saytidan olishingiz mumkin.

MS SQL Server 2008, 2008 R2, 2012 va 2014 yil zaxiralash

MS SQL Server 2008, 2008 R2, 2012 va 2014 ma'lumotlar bazalarining to'liq zaxirasi

MS SQL ma'lumotlar bazasining to'liq zaxiralanishi paytida ma'lumotlar bazasi fayllari va tranzaktsiyalar jurnali saqlanadi, bu esa ommaviy axborot vositalari ishlamay qolganda MS SQL ma'lumotlar bazasini to'liq himoya qilish imkonini beradi. Agar bir yoki bir nechta fayllar shikastlangan bo'lsa, MS SQL ma'lumotlar bazasini zaxiradan tiklash barcha bajarilgan operatsiyalarni tiklaydi. Amaldagi barcha operatsiyalar ham qaytariladi. Ushbu rejimda master va mbdb ma'lumotlar bazalarining zaxira nusxalari yaratiladi.

MS SQL Server 2008, 2008 R2, 2012 va 2014 ma'lumotlar bazalarini differentsial zaxiralash

MS SQL Server ma'lumotlar bazasining differentsial zaxirasi MS SQL ma'lumotlar bazasining eng so'nggi to'liq zaxiralashiga asoslangan. MS SQL differentsial zaxira nusxasini yaratish jarayonida faqat MS SQL to'liq zaxirasidan so'ng o'zgargan ma'lumotlar yaratiladi. MS SQL differentsial zaxiralash funktsiyasi uchun zaxiralar ketma -ketligi juda muhim. Agar biron sababga ko'ra MS SQL havola qilingan to'liq zaxira mavjud bo'lmasa, MS SQL Server ma'lumotlar bazasining differentsial zaxiralarini ishlatib bo'lmaydi. Bacula MS SQL Backup bu muammoni hal qilish uchun maxsus texnikadan foydalanadi. Shuning uchun, qiyinchiliklar yuzaga kelganda, ma'lumotlar bazasining differentsial zaxiralash holati avtomatik ravishda to'liq zaxiraga ko'tarilishi mumkin.

MS SQL tranzaktsiyalar jurnalining zaxira nusxasi 2008, 2008 R2, 2012 va 2014

MS SQL zaxira nusxasini sozlash va ma'lumotlar bazasi konfiguratsiyasi

MS SQL ma'lumotlar bazasini zaxiradan tiklash

Siz zaxiradan MS SQL ma'lumotlar bazasini tiklash jarayonini boshlashning barcha standart usullaridan foydalanishingiz mumkin. Shu bilan birga, differentsial ma'lumotlar qayta tiklangan taqdirda, MS SQL ma'lumotlar bazasining oldingi zaxira nusxasi tiklanishiga ishonch hosil qilishingiz kerak. Bunday holda, agar siz uni konsolda ishlatsangiz, tiklash avtomatik ravishda amalga oshiriladi konsoli qutqaruv variantlari 5 yoki 12. yordamida. Yaratilgan fayl tuzilmasida to'liq ma'lumotlar bazasi yoki ma'lumotlar bazasi misollarining tiklanishini belgilashingiz kerak.

MS SQL ma'lumotlar bazasini zaxiradan tiklash variantlari

Bacula Enterprise Edition dasturi foydalanuvchilarga MS SQL -ni tiklashning turli xil variantlaridan va ma'lumotlar bazasini qaytarish usullaridan foydalanish imkoniyatini beradi. Eng ko'p ishlatiladigan qutqarish variantlari quyida tasvirlangan:

  • Qaerda parametr: Bacula Enterprise Edition bo'lsa, bu parametr ma'murga ma'lum bir joyga ma'lumotlar bazasini tiklashga imkon beradi.
  • Parametrni almashtirish: Bacula tiklash paytida joriy ma'lumotlar bazasi bilan qanday ishlashini aniqlash uchun ishlatiladi. Bacula MS SQL zaxirasi, shuningdek, qayta tiklashda yana bir nechta variantlardan foydalanish imkonini beradi, masalan:
  • Misol: MS SQL bir nechta misollardan foydalanganligi sababli, Baculaning MS SQL ma'lumotlar bazasi zaxirasi sizga qaysi misolni tiklashni tanlash imkonini beradi. Bu parametr ixtiyoriy, va agar u ko'rsatilmagan bo'lsa, tiklash zaxirani yaratishda ko'rsatilgan qiymatdan foydalanadi. Odatiy bo'lib, "MSSQLSERVER" nomli misol ishlatiladi.
  • Ma'lumotlar bazasi. Bu parametr qayta tiklanadigan ma'lumotlar bazasi nomini bildiradi va ma'lumotlar bazasi yaratilgan vaqtda o'rnatilgan qiymatdan foydalanadi. Bu parametr ixtiyoriy. Odatiy bo'lib, SQL Server ma'lumotlar bazalarini zaxiralash yangi ma'lumotlar bazasi nomini aniqlash uchun Where parametridan foydalanadi. Agar "Ma'lumotlar bazasi" va "Qayerda" parametrlariga haqiqiy ma'lumotlar bazasi nomi berilgan bo'lsa, ma'lumotlar bazasi parametri ishlatiladi.
  • Foydalanuvchi. MS SQL ma'lumotlar bazasi misoliga ulanish uchun ishlatiladigan foydalanuvchi nomi. Bu parametr ixtiyoriy, va agar u ko'rsatilmagan bo'lsa, tiklash zaxirani yaratishda ko'rsatilgan qiymatdan foydalanadi.
  • Parol MS SQL ma'lumotlar bazasi misoliga ulanish uchun ishlatiladigan parol. Bu parametr ixtiyoriy, va agar u ko'rsatilmagan bo'lsa, zaxira nusxasini yaratishda tiklash ko'rsatilgan qiymatdan foydalanadi.
  • Domen. MS SQL ma'lumotlar bazasi misoliga ulanish uchun ishlatiladigan domen. Bu parametr ixtiyoriy, va agar u ko'rsatilmagan bo'lsa, tiklash zaxirani yaratishda ko'rsatilgan qiymatdan foydalanadi.
  • Qayta tiklash. Bu parametr ma'lumotlar bazasi tiklanish vaqtida avvalgi holatiga qaytariladimi yoki yo'qligini aniqlash imkonini beradi. Odatiy bo'lib, ma'lumotlar bazasini tiklashda, u avvalgi holatiga qaytadi.
  • Stop_before_mark. STOPBEFOREMARK bilan shart = Bayroq oldidagi tranzaktsiyalar jurnalining yozuvi tiklash nuqtasi ekanligini ko'rsatish uchun ishlatiladi. Qayta tiklash sanasi va vaqti, LSN yoki mark_name bo'lishi mumkin.
  • Stop_at_mark. STOPATMARK bilan shart = Belgilangan operatsiya tiklanish nuqtasi ekanligini ko'rsatish uchun ishlatiladi. STOPATMARK bayroq oldinga siljiydi va belgilangan tranzaktsiyani takrorlashni boshlaydi. Qayta tiklash sanasi va vaqti, LSN yoki mark_name bo'lishi mumkin.
  • Stop_at = ... STOPAT BILAN = shart tiklash nuqtasi sana / vaqt ekanligini ko'rsatish uchun ishlatiladi.
  • Restrict_user. WITH RESTRICT_USER bandi tiklangan ma'lumotlar bazasiga kirishni cheklash uchun ishlatiladi. Standart - yo'q.

MS SQL-ni o'z vaqtida tiklash to'g'ridan-to'g'ri MS SQL zaxira plaginidan amalga oshirilishi mumkin. Bundan tashqari, qo'shimcha funktsiyalarni ishlatish uchun siz fayllarni mahalliy qayta tiklashingiz va Microsoft SQL Server Mangement Console -dan operatsiyalarni bajarishingiz mumkin.

LSN

Maxsus zaxira va tiklash hodisasi sodir bo'lgan jurnal yozuvining LSN raqamini quyidagi usullardan biri bilan ko'rish mumkin:

  • Bacula dasturi yordamida zaxira nusxasini yaratish vazifalari tavsifi ko'rsatilganda
  • Jurnal fayli nomidan
  • Msdb.backupset jadvalida
  • Msdb.backupfile jadvalida

MS SQL ma'lumotlar bazasining zaxira nusxasini yaratish vazifasini bajarayotganda, vazifaning tavsifi ko'rsatilganda, LSN raqamlari haqida quyidagi ma'lumotlar ko'rsatiladi:

Raqam Birinchi LSN bitim jurnalining oxirgi zaxirasining oxirgi LSN raqamiga mos keladi. Bu zaxira birinchi to'liq zaxira yoki oxirgi zaxira bo'lishi mumkin.

Raqam Oxirgi LSN oxirgi yozilgan tranzaktsiyaga to'g'ri keladi.

Tranzaktsiyalar jurnalining zaxira nusxasi (qo'shimcha) bo'lsa, zaxira nusxasini yaratish vazifasida ushbu ma'lumotlar bazasi bilan bog'langan fayl nomi shunday bo'ladi:

Sarlavhadagi raqam, bizning holatimizda 42000162001, oldingi ishning oxirgi LSN raqamiga mos keladi (to'liq yoki zaxira nusxasini yaratish uchun).

2 -rasm: Birinchi LSN, oxirgi LSN va LSN fayl nomlarida

2 -rasmdagi misolda ko'rsatilgandek, agar administrator MS SQL ma'lumotlar bazasini LSN 14 -soniga mos keladigan holatga qaytarishi kerak bo'lsa, quyidagi amallarni bajarish mumkin:

  • JBni tiklash menyusida 5 -variantdan foydalaning
  • Oxirgi "data.bak" to'liq zaxira faylini tanlang (LSN: 10).
  • "Log-10.trn" zaxira nusxasini tanlang.

Yoki, agar MS SQL Server -ning oxirgi to'liq zaxira nusxasi mavjud bo'lmasa, lekin oldingi to'liq zaxira nusxasi mavjud bo'lsa, u holda:

  • Qayta tiklash 3 -variantidan foydalaning, mos ish qiymatlarini tanlang
  • Ma'lumotlar bazasi katalogini tanlang " / @ mssql / db29187"
  • To'liq zaxira faylini tanlang "data.bak" (LSN: 2)
  • "Log-2.trn", "log-3.trn", "log-10.trn" zaxira nusxalarini tanlang.
  • Stop_at_mark parametrini "lsn: 14" ga o'rnating.
  • Zaxirani tiklash uchun vazifani bajaring

MS SQL tiklash skriptlari

Tavsif Qaerda Ma'lumotlar bazasi Misol
Fayllarni diskka tiklash Yo'l bu erda = c: / tmp
Asl ma'lumotlar bazasini tiklash qaerda = /
Yangi nom bilan tiklash Ism bu erda = newdb
Yangi nom bilan tiklash Ism ma'lumotlar bazasi = newdb
Yangi nom bilan tiklash va fayllarni ko'chirish Ism

1 -jadval: MS SQL tiklash stsenariylari

2.3.1 MS SQL ma'lumotlar bazasini asl nomi bilan tiklash

Ma'lumotlar bazasini asl nomi bilan tiklash uchun parametr Qaerda o'rnatilmasligi kerak (bo'sh qiymat) yoki "/" qiymati o'rnatilishi kerak va parametr O'zgartirish qiymat tayinlanishi kerak Har doim, yoki siz dastlab ma'lumotlar bazasini o'chirishingiz kerak.

MS SQL zaxirasini yangi nom bilan tiklash

MS SQL ma'lumotlar bazasining zaxira nusxasini yangi nom bilan tiklash uchun, avvalo, ma'lumotlar bazasi fayllarini diskka ko'chirish kerak bo'ladi. Bularning barchasi asl ma'lumotlar bazasi hali ham mavjudligiga bog'liq.

Agar asl ma'lumotlar bazasi endi mavjud bo'lmasa, u holda parametr qayerda yoki "Plugin Options" maydonida yangi ma'lumotlar bazasi nomi bo'lishi mumkin. Bacula MS SQL zaxirasi avtomatik ravishda yangi nomli ma'lumotlar bazasini yaratadi.

Agar asl ma'lumotlar bazasi hali ham zarur bo'lsa, bu erda faylni diskka ko'chirish uchun parametr ishlatiladi va yangi ma'lumotlar bazasi nomini Plugin Options menyusi yordamida ko'rsatish kerak bo'ladi. Qayta tiklash daraxtida layout.dat faylini tanlang.

Mening katalogimdan foydalanish

MS SQL ta'mirlash vazifasini bajaring:

Mening katalogimdan foydalanib, MS SQL ma'lumotlar bazasini tiklash vazifasini bajaring:

MS SQL -ni mahalliy diskka tiklash

Agar aniqlasangiz bu erda = c: / yo'l /, fayllar mahalliy diskda tiklanadi va MS SQL ma'lumotlar bazasi ma'muri ma'lumotlar bazasini tiklash uchun Microsoft SQL Server Mangement Consoli uchun TSQL protsessual kengaytmasidan foydalanishi mumkin. Ma'lumotlar bazasini tiklash uchun zarur bo'lgan SQL buyruqlari tavsifda keltirilgan Ish natijasi quyidagi rasmda ko'rsatilgandek.

Keling, istalmagan vaziyatni ko'rib chiqaylik. Ya'ni: negadir ma'lumotlar bazasi ishlamayapti. Bizda nima bor? To'liq nusxa, kecha bo'lgani kabi differentsial nusxa, lekin bugun ham ma'lumotlar bor, har soatda differentsial nusxa ko'chirish kerak edi? - Yo'q! U yerda Tranzaktsiyalar jurnali.
Tranzaktsiyalar jurnali - har bir operatsiyani bajargan barcha operatsiyalarni va ma'lumotlar bazasidagi barcha o'zgarishlarni qayd etuvchi jurnal. Bular. ma'lumotlar bazasi bilan har qanday harakatlar bosqichma -bosqich qayd qilinadi. Har bir yozuv tranzaktsiyaning bajarilganligi, bajarilganligi yoki bajarilmaganligi uchun DBMS tomonidan belgilanadi. Uning yordami bilan siz ma'lumotlar bazasining holatini nafaqat muvaffaqiyatsizlikka uchraganidan keyin, balki ma'lumotlar bilan kutilmagan harakatlar sodir bo'lganda ham tiklashingiz mumkin. Muayyan vaqtgacha orqaga qayting. Ma'lumotlar bazasida bo'lgani kabi, tranzaktsiyalar jurnalini zaxiralash kerak, to'liq, differentsial, bosqichma -bosqich. Tranzaksiya jurnalining bir qismini zaxiralar orasidagi vaqt oralig'ida muvaffaqiyatsizlikka uchraganidan keyin tiklash uchun, jurnalning oxirgi qismini zaxiralash kerak, bu aslida zaxiralashning yakuniy nuqtasi hisoblanadi. Muvaffaqiyatsizlikdan keyin, hisoblagich sifatida bajariladi.
Shunday qilib, muvaffaqiyatsizlikka uchraganidan keyin ma'lumotlar bazasini tiklash uchun bizga ma'lumotlar bazasining dolzarb to'liq nusxasi, ma'lumotlar bazasining differentsial nusxasi va tranzaktsiyalar jurnalining nusxasi kerak bo'ladi.

Ma'lumotlar bazasining o'zi uchun 3 ta qutqarish modeli mavjud - oddiy, to'liq va katta hajmli. Ko'rib chiqing:

  1. Oddiy model - faqat to'liq qisqartirish ishlatiladi. Farqi yo'q. zaxira nusxalari, shuningdek tranzaktsiyalar jurnalining zaxiralari. To'liq nusxalar iloji boricha tez -tez yaratilishi kerak. Faqat o'qish uchun mo'ljallangan ma'lumotlar bazalari bilan bog'liq.
  2. To'liq qutqarish modeli - barcha ma'lumotlarni zaxiralash va tiklash funktsiyalari mavjud bo'lgan eng keng tarqalgan model. Shaxsiy ma'lumotlar sahifalarini tiklashni qo'llab -quvvatlaydi. To'liq tranzaktsiyalar jurnali paydo bo'ladi va tranzaktsiyalar jurnali saqlanadi.
  3. Ommaviy jurnal - to'liq tiklash modelini to'ldirish uchun mo'ljallangan. Aksariyat operatsiyalar ro'yxatga olishni qo'llab -quvvatlamaydi, shuning uchun ma'lum vaqt ichida ma'lumotlar bazasini tiklashni qo'llab -quvvatlamaydi.

Keling, eng mos keladigan zaxira zanjirini ko'rib chiqaylik: To'liq zaxira - haftada bir marta, Differentsial zaxiralash - kuniga bir marta, Tranzaktsiyalar jurnalining zaxira nusxasi - soatiga bir marta.
Zaxira nusxalarini yaratish uchun bir nechta variant mavjud:

  • O'rnatilgan MS SQL vazifalar jadvalidan foydalanish
  • Transact-SQL-dan foydalanish
  • Sqlcmd va OS vazifalar jadvalini ishlatish
  • Qo'lda (bu bizga mos kelmaydi, chunki haqiqiy admin doimo chalkashib ketishi kerak)

Keling, birinchi variantni eng foydali variant sifatida ko'rib chiqaylik. Buning uchun Windows Server 2008 R2 Enterprise va MS SQL Server 2008 Eng ishlatiladi.

Aytaylik, bizda TECH ma'lumotlar bazasi bor:

Joba yaratish vositasiga o'tish:

Sichqonchaning uchta o'ng tugmachasini bosing va ustozni ishga chaqiring:
Biz "Har bir vazifani alohida bajarish" katagiga belgi qo'yamiz, axir biz faqat bitta amalni bajaramiz

Usta sallasiz, lekin asosiysi salla hajmida emas)) Istak turini tanlang, bizda - to'liq bandlov:

Ma'lum bo'lishicha, usta Ayub biroz yahudiy bo'lgani uchun yana so'radi:

"Qo'shimcha parametrlarni tanlashga arziydi, ey yosh paddavan!":
bu erda biz ma'lumotlar bazasini, zaxiraning saqlash muddatini, manzilni (lenta yoki disk), saqlash yo'lini va eng muhimi, vazifalarni rejalashtiruvchini tanlaymiz!

"O'zingiznikini tanlashda ma'lumotlar bazasi haqida unutmang. Quvvatingizni jamlang va ma'lumotlar bazasini tanlang":

"Siz juda tez vazifa yaratishga shoshyapsiz, quyida" Jadval - Ta'rif "deb nomlangan tugmani bosing.
Sobsno, vazifalarni rejalashtiruvchi, bu erda biz turni (takrorlash, bir marta va hokazo), kunni, vaqtni, boshlanish turini tanlaymiz:

Hammasi shu, yaratilgan. Ish ustasi salqin va yashil rangda. Biz parvarishlash rejalarida holatga qaraymiz:

Paranoid uchun, buni ko'zguda tan olishdan qo'rqmang, SQL Server Agentining ruhini ko'rib chiqishga arziydi - Job Activity Monitor, Ish ustasi hamma narsani batafsil ko'rsatib beradi:

Endi, belgilangan shartlar bajarilganda, ma'lumotlar bazasining to'liq zaxira nusxasini yaratish kerak. Xuddi shu printsip bo'yicha, differentsial va tranzaktsiyalar jurnalining zaxira nusxalari yaratiladi (bu kichik bandlar vazifalarni tanlash ro'yxatida "To'liq zaxira" ostida joylashgan).
MSSQL quloqlarini xohlaganingizcha aylantiring, ochmang

Keyingi maqola Transact-SQL va bir nechta misollar yordamida yaratiladi.

"Test _Recovery" ma'lumotlar bazasini holatga qaytaramiz " t 4ยป.

Ma'lumotlar bazasini "SQL Server Management Studio" yordamida "Full2_Test_Recovery.bak" to'liq zaxira nusxasidan tiklashni boshlaylik. ". Ma'lumotlar bazasini o'ng tugmasini bosing " Viktorina _ Qayta tiklash ", Paydo bo'lgan menyuda" -ni tanlang. Vazifalar ", keyin" Qayta tiklash ", keyin" Ma'lumotlar bazasi ".

Ko'rsatilgan oynada ""Ma'lumotlar bazasini tiklash" "Manba" bo'limida, "Qurilma" -ni tanlang. Keyingi "Qo'shish ", Yo'lni yozing" \\ vniz - tst - bkp 01. test. local \ Backup _ SQL \ Full 2_ Test _ Recovery. bak "," Ok "ni bosing. "Manzil" bo'limida tanlang "Testni tiklash" ma'lumotlar bazasi

"Ok" ni bosing

Baza muvaffaqiyatli tiklanadi.

Keling, Transact-SQL yordamida ma'lumotlar bazasini tiklashni ko'rib chiqaylik.

"Test_Recovery" ma'lumotlar bazasini o'ng tugmasini bosing, paydo bo'lgan menyuda "Yangi so'rov" ni tanlang:

Ko'rsatilgan oynada kiriting:

FOYDALANISH usta

Qayta tiklash Ma'lumotlar bazasi Test_Recovery

QANDAY DISK = "\\ vniz-tst-bkp01.test.local \ Backup_SQL \ Full2_Test_Recovery.bak"

BILAN O'zgartirish

Baza muvaffaqiyatli tiklanadi.

Bu misolda biz "REPLACE" parametridan foydalanganmiz:

Qayta tiklash odatda boshqa ma'lumotlar bazasini tasodifan ma'lumotlar bazasini qayta yozib olishining oldini oladi. Agar RESTORE bayonnomasida ko'rsatilgan ma'lumotlar bazasi joriy serverda mavjud bo'lsa va ko'rsatilgan ma'lumotlar bazasi uchun oilaviy GUID zaxira to'plamida yozilgan ma'lumotlar bazasi oilasi GUIDdan farq qilsa, u tiklanmaydi.

REPLACE varianti odatda tiklash operatsiyasi bilan bajariladigan bir nechta muhim tekshiruvlarni bekor qiladi. Quyidagi tekshiruvlar bekor qilinadi.

  • Boshqa ma'lumotlar bazasi uchun yaratilgan zaxiradan mavjud ma'lumotlar bazasi tiklanishini tekshiring.Qayta tiklash vaqtida REPLACE parametridan foydalanganda, zaxira to'plamida qaysi ma'lumotlar bazalari mavjud bo'lishidan qat'i nazar, mavjud ma'lumotlar bazasi bo'yicha ma'lumotlarni yozishingiz mumkin, hatto ko'rsatilgan ma'lumotlar nomi zaxira to'plamida yozilganidan farq qilsa ham. Bu ma'lumotlar bazasi ustidan tasodifan boshqa ma'lumotlar bazasini qayta yozilishiga olib kelishi mumkin.
  • Ma'lumotlar bazasida tiklanish holatini quyi jurnalga zaxiralanmagan va STOPAT opsiyasi bilan qo'llanilmagan to'liq yoki katta hajmli qutqaruv modeli yordamida tekshiring.Agar siz REPLACE opsiyasidan foydalansangiz, oxirgi ma'lumotlarning zaxira nusxasi hali saqlanmaganligi sababli, siz berilgan ma'lumotlarni yo'qotishingiz mumkin.
  • Mavjud fayllarni qayta yozish.

Ma'lumotlar bazasi ma'murlari zaxira nusxalarini yaratadigan va zaxira qiladiganlarga bo'linadi.

Kirish

Ushbu maqolada MS SQL Server 2008 R2 vositalaridan foydalangan holda 1C axborot xavfsizligining zaxira nusxasi tasvirlangan, nima uchun buni boshqacha emas, balki shunday qilish kerakligi tushuntirilgan va bir nechta afsonalarni tarqatib yuborilgan. Maqolada MS SQL hujjatlariga bir nechta havolalar mavjud, bu maqola keng qamrovli qo'llanmadan ko'ra, zaxira mexanizmlarining umumiy ko'rinishi. Ammo bu vazifaga birinchi marta duch kelganlar uchun oddiy vaziyatlarga taalluqli oddiy va bosqichma-bosqich ko'rsatmalar berilgan. Maqola ma'muriyat gurusi, gurusi uchun mo'ljallanmagan va shuning uchun hamma buni biladi, lekin o'quvchi MS SQL Serverni o'zi o'rnatishi va dushmanlik texnologiyasining bu mo''jizasini o'z tubida ma'lumotlar bazasini yaratishga majburlashi mumkin deb taxmin qilinadi. 1C ma'lumotlarini saqlashga majbur qila oladi.

Men TSQL BACKUP DATABASE buyrug'ini (va uning akasi BACKUP LOG) MS SQL Serverni DBMS sifatida ishlatadigan 1C ma'lumotlar bazalari uchun yagona zaxira vositasi deb hisoblayman. Nima uchun? Keling, qanday usullar borligini ko'rib chiqaylik:

Qanaqasiga Yaxshi Yomon Jami
Dt ga yuklash Juda ixcham format. Shakllanishi uchun ko'p vaqt kerak bo'ladi, eksklyuziv kirishni talab qiladi, ba'zi ahamiyatsiz ma'lumotlarni saqlamaydi (masalan, oldingi versiyalardagi foydalanuvchi sozlamalari), joylashtirish uchun uzoq vaqt kerak bo'ladi. Bu zaxiralash usuli emas, balki ma'lumotlarni bir muhitdan boshqasiga o'tkazish usuli. Tor kanallar uchun ideal.
Mdf va ldf fayllarini nusxalash Yangi boshlanuvchilar uchun juda aniq usul. Ma'lumotlar bazasi fayllarini qulflashdan ozod qilishni talab qiladi va agar bu ma'lumotlar bazasi oflaynda bo'lsa (kontekst menyusining oflayn buyrug'ini olish), uzilgan (uzilgan) yoki server shunchaki to'xtatilgan bo'lsa. Shubhasiz, foydalanuvchilar bu vaqtda ishlay olmaydi. Bu usuldan foydalanish mantiqan to'g'ri keladi, agar faqat avariya ro'y bergan bo'lsa, tuzalishga urinayotganda hech bo'lmaganda tiklanish boshlangan variantga qaytish mumkin.
OS yoki gipervizor yordamida zaxiralash Atrof -muhitni ishlab chiqish va sinovdan o'tkazish uchun qulay usul. Ma'lumotlarning yaxlitligi har doim ham do'stona emas. Resurs talab qiladigan usul. Rivojlanish uchun cheklangan darajada foydalanish mumkin. Oziq -ovqat muhitida bu amaliy ma'noga ega emas.
MS SQL yordamida zaxiralash Hech qanday to'xtash vaqti talab qilinmaydi. Agar siz oldindan xavotirda bo'lsangiz, ajralmas holatni o'zboshimchalik bilan tiklashga imkon beradi. To'liq avtomatlashtirilgan. Vaqtni tejash va boshqa resurslar. Juda ixcham format emas. Hamma ham bu usuldan kerakli darajada foydalanishni bilmaydi. Oziq -ovqat mahsulotlari uchun - asosiy vosita.

O'rnatilgan MS SQL vositalari zaxira nusxasini ishlatishda asosiy qiyinchiliklar ishlash tamoyillarini oddiy tushunmaslikdan kelib chiqadi. Bu qisman katta dangasalikdan, qisman "tayyor retseptlar" darajasida oddiy va tushunarli tushuntirishning yo'qligidan kelib chiqadi (hmm, aytaylik, men uchrashmaganman), hatto vaziyat mifologik tavsiyalar bilan yanada og'irlashadi ". "forumlarda kam. Men dangasalik bilan nima qilishni bilmayman, lekin zaxiralash asoslarini tushuntirishga harakat qilaman.

Biz nimani tejaymiz va nima uchun?

Uzoq vaqt oldin, uzoq galaktikada, muhandislik va buxgalteriya hisobining 1C: Enterprise 7.7 kabi mahsuloti bor edi. Ko'rinib turibdiki, 1C: Enterprise-ning birinchi versiyalari mashhur dbf fayl formatidan foydalanish uchun ishlab chiqilganligi sababli, uning SQL versiyasi MS SQL zaxira nusxasini to'liq va hatto har bir o'zgarish bilan hisoblash uchun ma'lumotlar bazasida etarli ma'lumotni saqlamagan. tuzilmada to'liq tiklash modelining ish sharoitlari buzilgan, shuning uchun zaxira tizimining asosiy funktsiyasini bajarishi uchun siz turli xil fokuslarga borishingiz kerak edi. Ammo 8 -versiya chiqqanidan so'ng, DBA -lar nihoyat dam olishga muvaffaq bo'lishdi. Standart zaxira vositalari to'liq va to'liq zaxira tizimini yaratishga imkon beradi. Faqat jurnal daftarchasi va shakllarning o'rnini belgilash (eski versiyalarda) kabi ba'zi mayda -chuydalar zaxiraga kiritilmagan, ammo bu ma'lumotlarning yo'qolishi tizimning funksionalligiga ta'sir qilmaydi, garchi zaxira nusxalarini yaratish to'g'ri va foydalidir. jurnal daftarchasi.

Nega bizga umuman zaxira kerak? HM. Bir qarashda, bu g'alati savol. Xo'sh, ehtimol, birinchi navbatda, tizimning nusxasini joylashtirish va ikkinchidan, tizim ishlamay qolganda tiklash mumkinmi? Men birinchisiga qo'shilaman, lekin ikkinchisi birinchi zaxira afsonasi.

Zaxiralash - bu tizimni xavfsiz saqlashning oxirgi qatori. Agar ma'lumotlar bazasi ma'muri mahsulot tizimini zaxira nusxalaridan tiklashi kerak bo'lsa, ishni tashkil qilishda ko'plab qo'pol xatolarga yo'l qo'yilgan bo'lishi mumkin. Siz zaxiralashni ma'lumotlarning yaxlitligini ta'minlashning asosiy usuli deb hisoblay olmaysiz, yo'q, bu yong'in o'chirish tizimiga yaqinroq. Yong'in o'chirish tizimi talab qilinadi. U sozlangan, sinovdan o'tgan va ishlashi kerak. Ammo, agar u ishlagan bo'lsa, bu o'z -o'zidan jiddiy oqibatlarga olib keladigan jiddiy favqulodda vaziyatdir.

Zaxira nusxasi faqat "tinch" maqsadlarda ishlatilishini ta'minlash uchun uning ishlashini ta'minlash uchun boshqa vositalardan foydalaning:

  • Serverlaringizni jismonan xavfsiz saqlang: yong'inlar, suv toshqinlari, elektr ta'minotining yomonligi, tozalagichlar, quruvchilar, meteoritlar va yovvoyi tabiat yaqinda sizning server xonangizni yo'q qilishni kutmoqda.
  • Axborot xavfsizligiga tahdidlar uchun javobgar.
  • Tizimga professional tarzda o'zgartirishlar kiriting va bu o'zgarishlar yomonlashuvga olib kelmasligiga oldindan imkon qadar ishonch hosil qiling. O'zgarishlarni kiritish rejasidan tashqari, "ishlar noto'g'ri ketsa nima qilish kerak" rejasi bo'lishi maqsadga muvofiqdir.
  • Baxtsiz hodisalar oqibatlarini keyinchalik tozalash o'rniga, tizimning mavjudligi va ishonchliligini oshirish uchun texnologiyalardan faol foydalaning. MS SQL uchun siz quyidagi xususiyatlarga e'tibor qaratishingiz kerak:
    • MS SQL klasterlaridan foydalanish (rostini aytsam, menimcha, bu DBA ni 24x7 talab qilmaydigan tizimlar bilan band qilishning eng qimmat va foydasiz usullaridan biri)
    • Ma'lumotlar bazasini aks ettirish (mavjudligi, ishlashi va xarajatlar talabiga qarab sinxron va asenkron)
    • Yuk tashish operatsiyalari jurnallari
    • 1C yordamida tarqatish (tarqatilgan ma'lumotlar bazalari)

Tizimning mavjudligi talablariga va ushbu maqsadlar uchun ajratilgan byudjetga qarab, to'xtash vaqtini va ishlamay qolish vaqtini 1-2 buyurtma kattaligiga qisqartiradigan echimlarni tanlash mumkin. Maxsus imkoniyatlar texnologiyalaridan qo'rqishning hojati yo'q: ular MS SQL haqida asosiy bilimlarga ega bo'lgan bir necha kun ichida o'rganishga etarlicha sodda.

Ammo, hamma narsaga qaramay, zaxira hali ham zarur. Bu boshqa qutqaruv uskunalari ishlamay qolganda foydalanishingiz mumkin bo'lgan zaxira parashyuti. Ammo, haqiqiy zaxira parashyuti kabi, buning uchun:

  • bu tizim oldindan to'g'ri va professional tarzda tuzilgan bo'lishi kerak,
  • tizimni ishlatadigan mutaxassis uni qo'llashda nazariy va amaliy ko'nikmalarga ega bo'lishi kerak (muntazam takomillashtirilishi),
  • tizim eng ishonchli va oddiy komponentlardan iborat bo'lishi kerak (bu bizning oxirgi umidimiz).

MS SQL ma'lumotlarini saqlash va qayta ishlash haqida asosiy ma'lumotlar

MS SQL -dagi ma'lumotlar, odatda, mdf yoki ndf kengaytmali ma'lumotlar fayllarida saqlanadi (bundan keyin FD - bu keng qo'llanilmaydigan qisqartma, bu maqolada yana bir nechta keng tarqalgan bo'lmagan qisqartmalar bo'ladi). Bu fayllardan tashqari, ldf kengaytmali fayllarda saqlanadigan tranzaksiya jurnallari (TT) ham mavjud. Boshlang'ich ma'murlar VT -larni mas'uliyatsizlik bilan qabul qilishlari, ham ishlash, ham saqlash ishonchliligi nuqtai nazaridan kam emas. Bu juda qo'pol xato. Aslida, aksincha, agar ishonchli ishlaydigan zaxira tizimi mavjud bo'lsa va siz tizimni qayta tiklash uchun ko'p vaqt ajrata olsangiz, ma'lumotlarni tez, lekin juda ishonchsiz RAID-0da saqlashingiz mumkin, lekin keyin VT bo'lishi kerak. alohida ishonchli va samarali resursda saqlanadi (garchi RAID-1da bo'lsa ham). Nega bunday? Keling, batafsil ko'rib chiqaylik. Men darhol buyurtma beraman, taqdimot biroz soddalashtirilgan, lekin dastlabki tushunish uchun etarli.

FD ma'lumotni 8 kilobaytlik sahifalarda saqlaydi (ular 64 kilobayt hajmda birlashtirilgan, lekin bu muhim emas). MS SQL kafolat bermaydi Ma'lumotni o'zgartirish buyrug'i bajarilgandan so'ng, bu o'zgarishlar FDga tushadi. Yo'q, faqat xotiradagi sahifa "saqlanishi kerak" deb belgilanadi. Agar serverda etarli resurslar bo'lsa, tez orada bu ma'lumotlar diskda bo'ladi. Bundan tashqari, server "optimistik" ishlaydi va agar bu o'zgarishlar tranzaktsiyada ro'y bersa, ular operatsiyani bajarishdan oldin diskka tushishi mumkin. Ya'ni, umumiy holatda, faol ish paytida, FDda tugallanmagan ma'lumotlar va tugallanmagan bitimlarning tarqoq bo'laklari bor, ular uchun ular bekor qilinishi yoki bajarilishi noma'lum. "CHECKPOINT" maxsus buyrug'i mavjud bo'lib, u serverga saqlanmagan barcha ma'lumotlarni "hozirda" diskka tozalashini aytadi, lekin bu buyruqning ko'lami juda aniq. 1C uni ishlatmasligini aytish kifoya (men buni uchratmaganman) va tushunish kerakki, ish paytida FD odatda yaxlit holatda emas.

Bu betartiblikni engish uchun bizga VT kerak. Unga quyidagi voqealar yozilgan:

  • Tranzaktsiyaning boshlanishi va uning identifikatori haqida ma'lumot.
  • Bitimni tuzish yoki bekor qilish faktlari to'g'risida ma'lumot.
  • FD ma'lumotlaridagi barcha o'zgarishlar haqida ma'lumot (taxminan aytganda, nima bo'lgan va nima bo'lgan).
  • FDning o'zi yoki ma'lumotlar bazasi tuzilishidagi o'zgarishlar to'g'risida ma'lumot (fayllarni ko'paytirish, fayllarni kamaytirish, sahifalarni ajratish va chiqarish, jadvallar va indekslarni yaratish va o'chirish)

Bu ma'lumotlarning barchasi bitim identifikatori ko'rsatgichi bilan yozilgan va bu operatsiyadan oldingi holatdan ushbu operatsiyadan keyingi holatga qanday o'tish kerakligini tushunish uchun etarli hajmda yozilgan (bundan mustasno-bu katta ro'yxatga olish) tiklash modeli).

Bu ma'lumot darhol diskka yozilishi muhim. Ma'lumot VTda qayd etilmaguncha, buyruq bajarilgan deb hisoblanmaydi. Oddiy vaziyatda, agar VT hajmi etarli hajmda bo'lsa va u juda bo'laklanmagan bo'lsa, yozuvlar unga kichik yozuvlarda ketma -ket yoziladi (8 kb ko'paytmasi shart emas). Faqat tiklash uchun haqiqatan ham zarur bo'lgan ma'lumotlar tranzaktsiyalar jurnaliga kiradi. Jumladan emas Qaysi so'rov matni o'zgartirishga olib kelgani, bu so'rovning bajarilish rejasi, uni qaysi foydalanuvchi ishga tushirgani va tiklash uchun kerak bo'lmagan boshqa ma'lumotlar haqida ma'lumot olinadi. So'rov orqali tranzaktsiyalar jurnalining ma'lumotlar tuzilishi haqida ba'zi fikrlar berilishi mumkin

Dan tanlang * fn_dblog (null, null)

Qattiq disklar o'qish va yozish buyruqlarining tartibsiz oqimiga qaraganda ketma -ket yozish bilan ancha samarali ishlaganligi sababli va SQL buyruqlari VTga yozish tugaguncha kutib turishi sababli quyidagi tavsiyanomalar paydo bo'ladi:

Agar eng kichik imkoniyat bo'lsa, ishlab chiqarish muhitida VTlar alohida (hamma narsadan) jismoniy muhitda bo'lishi kerak, tercihen ketma -ket yozish uchun minimal kirish vaqti va maksimal ishonchliligi bilan. Oddiy tizimlar uchun RAID-1 yaxshi.

Agar tranzaksiya bekor qilinsa, server avvalgi holatga kiritilgan barcha o'zgarishlarni qaytaradi. Shunung uchun

MS SQL Serverda tranzaktsiyani bekor qilish, odatda, operatsiya ma'lumotlarini o'zgartiradigan operatsiyalarning umumiy davomiyligi bilan taqqoslanadi. Iloji boricha tezroq tranzaktsiyalarni bekor qilmaslikka yoki bekor qilish to'g'risida qaror qabul qilmaslikka harakat qiling.

Agar server kutilmaganda biron sababga ko'ra ishlamay qolsa, qayta ishga tushirilgandan so'ng, FD -dagi qaysi ma'lumotlar ajralmas holatga mos kelmasligi tahlil qilinadi (yozilmagan, lekin tuzilgan operatsiyalar va yozilgan, lekin bekor qilingan tranzaktsiyalar) va bu ma'lumotlar tuzatiladi. Shuning uchun, agar siz, masalan, katta jadval indekslarini qayta tiklashni boshlagan bo'lsangiz va serverni qayta ishga tushirgan bo'lsangiz, uni qayta ishga tushirganingizda, bu tranzaktsiyani qaytarish uchun ko'p vaqt kerak bo'ladi va bu jarayonni to'xtatishning iloji yo'q. .

VT fayl oxiriga yetganda nima bo'ladi? Bu juda oddiy - agar boshida bo'sh joy bo'lsa, u faylning boshidagi bo'sh joyni bo'sh joyga yozishni boshlaydi. Loopback lentasi kabi. Agar boshida bo'sh joy bo'lmasa, server odatda tranzaktsiyalar jurnalining faylini kengaytirishga harakat qiladi, shu bilan birga server uchun ajratilgan yangi qism - bu yangi virtual tranzaksiya jurnali bo'lib, uning ko'p qismi jismoniy tranzaktsiya faylida bo'lishi mumkin. lekin bu zaxiraga taalluqli emas. Agar server faylni kengaytira olmasa (diskda bo'sh joy tugagan yoki JT -ni kengaytirish sozlamalari taqiqlangan), u holda 9002 xatosi bilan joriy operatsiya bekor qilinadi.

Afsus. Va har doim ZhTda joy bo'lishi uchun nima qilish kerak? Bu erda biz zaxira tizimi va tiklash modellariga kelamiz. Tranzaktsiyalarni bekor qilish va to'satdan yopilganda serverning to'g'ri holatini tiklash uchun, birinchi ochiq operatsiya boshlangan paytdan boshlab, yozuvlarni ZhT -da saqlash kerak. Bu minimal VTda yoziladi va saqlanadi majburiy... Ob -havo, server sozlamalari va admin istaklariga qaramay. Server bu ma'lumotlarning yo'qolishiga ruxsat bera olmaydi. Shuning uchun, agar siz bitta sessiyada tranzaktsiyani ochsangiz va boshqalarda har xil harakatlarni amalga oshirsangiz, tranzaktsiyalar jurnali kutilmaganda tugashi mumkin. Eng birinchi operatsiyani DBCC OPENTRAN buyrug'i bilan aniqlash mumkin. Ammo bu faqat kerakli minimal ma'lumot. Keyinchalik bog'liq tiklash modellari... SQL Serverda ulardan uchtasi bor:

  • Oddiy- faqat hayot uchun zarur bo'lgan qoldiq VT saqlanadi.
  • To'liq- butun VT oxirgi zaxiradan beri saqlanadi tranzaktsiyalar jurnali... E'tibor bering, to'liq zaxira qilingan paytdan boshlab emas!
  • Ommaviy qayd qilingan- operatsiyalarning bir qismi (odatda juda kichik qismi) juda ixcham formatda yoziladi (aslida ma'lumotlar faylining u yoki bu sahifasi o'zgartirilgani haqidagi yozuv). Qolganlari Full bilan bir xil.

Qayta tiklash modellari bilan bog'liq bir nechta afsonalar mavjud.

  • Oddiy disk quyi tizimiga yukni kamaytirishga imkon beradi... Bu unday emas. u ommaviy ravishda yozilganidek yozilgan, faqat ancha oldin bepul deb hisoblanadi.
  • Ommaviy jurnal disk quyi tizimidagi yukni kamaytiradi... 1C uchun bu deyarli emas. Aslida, daf bilan qo'shimcha raqsga tushmasdan, minimal daftarga tushishi mumkin bo'lgan bir nechta operatsiyalardan biri - ma'lumotlarni tushirishdan dt formatida yuklash va jadvallarni qayta tuzish.
  • Ommaviy qayd qilingan modeldan foydalanganda, ba'zi operatsiyalar tranzaktsiyalar jurnalining zaxira nusxasiga kiritilmagan va bu zaxira nusxasi holatini tiklashga imkon bermaydi. Bu mutlaqo to'g'ri emas. Agar operatsiya minimal qayd qilingan bo'lsa, u holda ma'lumotlar saqlangan sahifalar zaxiralanadi va tranzaktsiyalar jurnalini oxirigacha "ijro etish" mumkin bo'ladi (garchi o'z vaqtida ixtiyoriy nuqta minimal bo'lsa) yozilgan operatsiyalar).

1C ma'lumotlar bazasi uchun katta hajmli jurnalni ishlatish deyarli ma'nosiz, shuning uchun biz uni boshqa ko'rib chiqmaymiz. Ammo biz keyingi bo'limda To'liq va Oddiy o'rtasidagi tanlovni batafsil ko'rib chiqamiz.

  • Tranzaktsiyalar jurnalining tuzilishi
    • Qayta tiklash modellari va tranzaktsiyalar jurnalini boshqarish
    • Tranzaktsiyalar jurnalini boshqarish
  • Tranzaktsiyalar jurnalining zaxira nusxalarini ishlatish

Zaxira oddiy va to'liq tiklash modellarida qanday ishlaydi

Formalash turiga ko'ra zaxiralashning uch turi mavjud:

  • To'liq(To'liq)
  • Differentsial(Differentsial, differentsial)
  • Jurnal(Ushbu atama qanchalik tez ishlatilishini hisobga olgan holda, tranzaktsiyalar jurnalining zaxira nusxasi FCTCga qisqartiriladi)

Bu erda adashmang: to'liq tiklash modeli va to'liq zaxira - bu mutlaqo boshqacha narsalar. Ularni chalkashtirib yubormaslik uchun quyida men qutqaruv modeli uchun inglizcha va zaxira turlari uchun ruscha terminlardan foydalanaman.

To'liq va differentsial nusxalar oddiy va to'liq uchun bir xil ishlaydi. Simple -da tranzaktsiyalar jurnalining zaxira nusxasi umuman yo'q.

To'liq zaxira

Ma'lumotlar bazasi holatini ma'lum vaqtgacha tiklashga imkon beradi (zaxiralash boshlangan). Bu ma'lumotlar fayllarining ishlatilgan qismi va tranzaktsiyalar jurnalining zaxira nusxasi tuzilgan vaqtdagi faol qismining sahifa-sahifa nusxasidan iborat.

Differentsial zaxira

Oxirgi to'liq zaxiralashdan keyin o'zgargan ma'lumotlar sahifalarini saqlaydi. Qayta tiklashda siz birinchi navbatda to'liq zaxira nusxasini tiklashingiz kerak (NORECOVERY rejimida misollar quyida keltirilgan), so'ngra olingan "stub" ga keyingi differentsial nusxalarini qo'llashingiz mumkin, lekin, albatta, faqat keyingisidan oldin qilingan nusxalar. to'liq zaxira. Bu zaxirani saqlash uchun disk maydoni hajmini sezilarli darajada kamaytirishi mumkin.

Muhim fikrlar:

  • Differentsial nusxa oldingi to'liq zaxirasiz foydasiz. Shuning uchun ularni bir -biriga yaqin joyda saqlash maqsadga muvofiqdir.
  • Har bir keyingi differentsial zaxira nusxasi avvalgi to'liq zaxiralashdan so'ng qilingan oldingi differentsial zaxiraga kiritilgan barcha sahifalarni saqlaydi (garchi, ehtimol, har xil tarkibga ega bo'lsa). Shuning uchun, har bir keyingi differentsial nusxa avvalgisidan kattaroq bo'ladi, toki to'liq nusxa takrorlanmaguncha (agar bu buzilgan bo'lsa, bu faqat siqish algoritmlari bilan bog'liq)
  • Qayta tiklanish uchun bir lahzaga etarli oxirgi bu erda to'liq zaxira nusxasi va oxirgi bu vaqtda differentsial nusxa. Qayta tiklash uchun oraliq nusxalar kerak emas (garchi ular qachon tiklanishini tanlash uchun kerak bo'lishi mumkin)

RCWT

Ma'lum bir davr uchun VT nusxasini o'z ichiga oladi. Odatda, oldingi RCWT paytidan to hozirgi RCWT shakllanishigacha. RKZT holatni NORECOVERY rejimida tiklanganidan VT -ning qayta tiklangan nusxasi davriga kiruvchi har qanday vaqtgacha tiklashga imkon beradi, holatni tiklangan zaxira oralig'iga kiruvchi har qanday keyingi vaqtga qaytaradi. Standart parametrlarga ega zaxira nusxasini yaratishda, tranzaktsiyalar jurnalida bo'sh joy bo'shatiladi (oxirgi ochiq bitim paytigacha).

Shubhasiz, FCLT oddiy modelda mantiqqa to'g'ri kelmaydi (u holda LT faqat oxirgi yopilmagan bitimdan beri ma'lumotni o'z ichiga oladi).

RCWT -dan foydalanganda muhim tushuncha paydo bo'ladi - uzluksiz zanjir RKZHT... Bu zanjirning zaxira nusxalari yo'qolishi yoki ma'lumotlar bazasini oddiy va orqaga almashtirish orqali uzilishi mumkin.

E'tibor bering: agar uzluksiz zanjir bo'lmasa, RCST to'plami umuman foydasiz va oxirgi muvaffaqiyatli to'liq yoki differentsial zaxiralashning boshlanish vaqti bo'lishi kerak. ichida bu zanjirning davri.

Ko'pincha noto'g'ri tushunchalar va afsonalar:

  • "RCZT oldingi to'liq yoki differentsial zaxiradagi tranzaktsiyalar jurnali ma'lumotlarini o'z ichiga oladi." Yoq bu unday emas. FCWT oldingi FCWT va undan keyingi to'liq zaxira o'rtasidagi foydasiz ko'rinadigan ma'lumotlarni o'z ichiga oladi.
  • "To'liq yoki differentsial zaxira tranzaktsiyalar jurnalida joy bo'shatishi kerak." Yoq bu unday emas. To'liq va differentsial zaxiralar RKZHT zanjiriga tegmaydi.
  • VT vaqti -vaqti bilan qo'l bilan tozalanishi, kamaytirilishi, qisqarishi kerak. Yo'q, bu kerak emas va hatto aksincha - bu istalmagan. Agar VKlar FCLTlar o'rtasida chiqarilsa, tiklash uchun zarur bo'lgan FCLT zanjiri buziladi. Va faylning doimiy kamayishi / kengaytmasi uning jismoniy va mantiqiy bo'linishiga olib keladi.

Qanday qilib u oddiy ishlaydi

Aytaylik, 1000 Gb ma'lumotlar bazasi mavjud. Har kuni ma'lumotlar bazasi 2 Gbga o'sadi, 10 Gb eski ma'lumotlar esa o'zgaradi. Quyidagi zaxira nusxalari yaratildi

  • F1 ning to'liq nusxasi 1 fevral soat 0:00 dan (hajmi 1000 Gb, rasmning soddaligi uchun siqish hisobga olinmaydi)
    • Delta D1.1 nusxasi 2 fevral soat 0:00 dan (12 Gb hajmda)
    • Delta D1.2 nusxasi 3 fevral soat 0:00 dan (19 GB)
    • Delta D1.3 nusxasi 4 -fevral, 0:00 (hajmi 25 GB)
    • Delta D1.4 nusxasi 5 -fevral, 0:00 (31GB)
    • Delta nusxasi D1.5 6 fevral soat 0:00 dan (36 Gb)
    • Delta D1.6 nusxasi 7 -fevral, 0:00 (40 GB)
  • F2 to'liq nusxasi 8 fevral soat 0:00 dan (hajmi 1014 GB)
    • Delta D2.1 nusxasi 9 -fevral, 0:00 (12 GB hajm)
    • Delta D2.2 nusxasi 10 fevral 10:00:00 (19 GB)
    • Delta D2.3 nusxasi 11 fevral soat 0:00 dan (hajmi 25 GB)
    • Delta D2.4 nusxasi 12 fevral 12:00 AM (31GB)
    • Delta D2.5 nusxasi 13 -fevral, 0:00 (36 GB)
    • Delta D2.6 nusxasi 14 -fevral, 0:00 (40 GB)

Ushbu to'plam yordamida biz 1 fevraldan 14 fevralgacha bo'lgan kunlarning istalganida soat 0:00 da ma'lumotlarni qayta tiklashimiz mumkin. Buning uchun biz 1-7 fevral haftalari uchun F1 to'liq nusxasini yoki 8-14 fevral uchun F2 to'liq nusxasini olib, NORECOVERY rejimida tiklashimiz va keyin kerakli kunning differentsial nusxasini qo'llashimiz kerak.

Qanday qilib u to'liq ishlaydi

Aytaylik, bizda oldingi misolda bo'lgani kabi to'liq va differentsial zaxira nusxalari mavjud. Bunga qo'shimcha ravishda, quyidagi FCWTlar mavjud:

  • RCWT 1 31 yanvar soat 12:00 dan 2 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 2 2 fevral soat 12:00 dan 4 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 3 4 fevral soat 12:00 dan 6 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 4 6 fevral soat 12:00 dan 7 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 5 8 fevral kuni soat 12:00 dan 10 fevralda 12:00 gacha (taxminan 30 GB)
  • RCWT 6 10 fevral soat 12:00 dan 12 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 7 12 fevral soat 12:00 dan 14 fevral 12:00 gacha (taxminan 30 GB)
  • RCWT 8 14 fevral soat 12:00 dan 16 fevral 12:00 gacha (taxminan 30 GB)

Eslatma:

  1. FCTC hajmi taxminan doimiy bo'ladi.
  2. Biz zaxira nusxalarini differentsial yoki to'liq zaxira qilishdan ko'ra kamroq qilishimiz mumkin yoki biz tez -tez qila olamiz, shunda ular hajmi kichikroq bo'ladi.
  3. Endi biz tizim holatini 1 fevral kuni soat 0:00 dan boshlab, 16 fevral kuni soat 12:00 gacha bo'lgan vaqtda, istalgan nuqtaga tiklashimiz mumkin.

Oddiy holatda, tiklanish uchun bizga kerak:

  1. Qayta tiklashdan oldin oxirgi to'liq nusxa
  2. Qayta tiklashdan oldin oxirgi delta nusxasi
  3. Barcha RCSTlar, oxirgi differentsial nusxadan tortib to tiklanishigacha
  • F2 ning to'liq nusxasi 8 fevral soat 0:00 dan
  • Delta D2.2 nusxasi 10 fevral soat 0:00 dan
  • RCWT 6 10 yanvar soat 12:00 dan 12 fevral 12:00 gacha bo'lgan davr uchun

Birinchidan, F2, keyin D2.2, keyin RCWT 6 10 fevral 13:13:13 gacha tiklanadi. To'liq modelning muhim afzalligi shundaki, bizda tanlov bor - oxirgi to'liq yoki differentsial nusxadan foydalanish, yoki oxirgi nusxasini emas. Masalan, agar D2.2 nusxasi buzilganligi aniqlansa va biz 10 fevral 13:13:13 gacha bo'lgan vaqtni tiklashimiz kerak bo'lsa, unda oddiy model uchun bu faqat ma'lumotlarni qayta tiklashimiz mumkin. hozirda D2.1. Full - "DON" T PANIC "bilan bizda quyidagi imkoniyatlar mavjud:

  1. F2, keyin D2.1, keyin RKZHT 5, keyin RKZHT 6 ni 10 fevral 13:13:13 gacha tiklang.
  2. 10 fevral 13:13:13 gacha F2, keyin 4 RKZT, keyin 5 RKZT, keyin 6 RKZT 6 ni tiklang.
  3. Yoki odatda F1 -ni tiklang va barcha RCWT -larni 10 -fevral 13:13:13 gacha RCWT 6 -ga o'tkazing.

Ko'rib turganingizdek, to'liq model bizga ko'proq tanlov beradi.

Endi tasavvur qilaylik, biz juda ayyormiz. Muvaffaqiyatsizlikka bir necha kun qolganida (10 fevralda 13:13:13) biz muvaffaqiyatsizlik bo'lishini bilamiz. Biz ma'lumotlar bazasini qo'shni serverda to'liq zaxira nusxasidan tiklayapmiz, keyingi holatlarni differentsial nusxalari yoki FCLT bilan davom ettirish imkoniyatini qoldirib, ya'ni NORECOVERY rejimida qoldirdik. Va har safar, RKZHT tashkil etilgandan so'ng, biz uni NORECOVERY rejimida qoldirib, ushbu zaxira bazasiga qo'llaymiz. Voy-buy! Axir, ulkan ma'lumotlar bazasini tiklash o'rniga, ma'lumotlar bazasini tiklash uchun bizga atigi 10-15 daqiqa kerak bo'ladi! Tabriklaymiz, biz loglarni jo'natish mexanizmini qaytadan kashf qildik, bu uzilish vaqtini qisqartirish usullaridan biri. Agar siz ma'lumotni shu tarzda bir vaqtning o'zida bir necha marta, lekin doimiy ravishda o'tkazib tursangiz, siz aks ettirishga ega bo'lasiz va agar manba bazasi oyna bazasi yangilanishini kutayotgan bo'lsa, bu sinxron akslantirish, agar bo'lmasa - asenkron.

Yordamda yuqori darajadagi vositalar haqida ko'proq o'qishingiz mumkin:

  • Yuqori darajadagi mavjudlik (ma'lumotlar bazasi mexanizmi)
    • Yuqori mavjudlik echimlarini tushunish
    • Yuqori darajadagi mavjudlik. Hamkorlik va hamkorlik

Zaxiralashning boshqa jihatlari

Agar siz nazariya va qichishishdan zeriksangiz, zaxira sozlamalarini sinab ko'rsangiz, ushbu bo'limni xavfsiz o'tkazib yuborishingiz mumkin.

Fayl guruhlari

1C: Korxona, aslida, fayl guruhlari bilan ishlashni bilmaydi. Bitta fayl guruhi bor va bu hammasi. Aslida, dasturchi yoki MS SQL ma'lumotlar bazasi ma'muri ba'zi jadvallarni, indekslarni yoki hatto jadvallar va indekslarni alohida fayl guruhlariga (eng oddiy shaklda, alohida fayllarga) joylashtirishga qodir. Bu ba'zi ma'lumotlarga kirishni tezlashtirish uchun kerak (uni juda tez tashuvchilarga qo'yish orqali) yoki aksincha, uni arzonroq ma'lumotlarga joylashtirish uchun tezlikni qurbon qilish (masalan, kam ishlatiladigan, lekin katta hajmli ma'lumotlar). Fayl guruhlari bilan ishlashda ularning zaxira nusxalarini alohida -alohida qilish mumkin, siz ularni alohida -alohida tiklashingiz mumkin, lekin shuni yodda tutish kerakki, barcha fayl guruhlari RKZHTni siljitish orqali bir lahzaga "ushlanishi" kerak bo'ladi.

Ma'lumotlar fayllari

Agar ma'lumotlarni turli xil fayl guruhlariga joylashtirish odam tomonidan nazorat qilinsa, u holda fayllar guruhida bir nechta fayllar bo'lsa, MS SQL Server ulardagi ma'lumotlarni mustaqil ravishda suradi (fayllar teng hajmda bo'lsa ham, u bir tekisda harakat qiladi). Amaliy nuqtai nazardan, bu kirish -chiqish operatsiyalarini parallellashtirish uchun ishlatiladi. Va zaxiralash nuqtai nazaridan, yana bir nuqta bor. "Oldindan SQL 2008" davridagi juda katta ma'lumotlar bazalari uchun to'liq zaxira qilish uchun ulashgan oynani ajratish odatiy muammo edi va bu zaxira nusxasi uchun mo'ljallangan disk uni joylashtira olmasligi mumkin edi. Bu holda eng oson yo'li har bir faylning (yoki fayl guruhining) zaxira nusxasini o'z oynasida yaratish edi. Endi, zaxira siqishni faol tarqalishi bilan, bu muammo kamaydi, lekin siz baribir bu texnikani yodda tutishingiz mumkin.

Zaxira nusxalarini siqish

MS SQL Server 2008da super mega-ultra funktsiyasi mavjud. Bundan buyon, zaxira nusxalari yaratilganda siqilishi mumkin. Bu 1C ma'lumotlar bazasi zaxira hajmini 5-10 barobar kamaytiradi. Va shuni yodda tutingki, odatda, disk quyi tizimining ishlashi - bu DBMSning to'siqlari, bu nafaqat saqlash narxining pasayishiga, balki zaxiralashning tezlashishiga olib keladi (garchi protsessorlarga yuk ko'tarilsa -da, lekin odatda protsessor hajmi) DBMS serverida etarli).

Agar 2008 yilgi versiyada bu xususiyat faqat Enterprise nashri uchun bo'lsa (bu juda qimmat), keyin 2008 yilda R2 bu xususiyat Standart versiyasiga berilgan, bu juda yoqadi.

Siqish sozlamalari quyidagi misollarda yoritilmagan, lekin men uni o'chirish uchun aniq sabab bo'lmasa zaxira siqishni ishlatishni tavsiya qilaman.

Bitta zaxira fayli - ko'plab ichki fayllar

Aslida, zaxira nusxasi shunchaki fayl emas, bu juda zaxira nusxalarini saqlash mumkin bo'lgan juda murakkab konteyner. Bu yondashuv juda qadimiy tarixga ega (men buni shaxsan 6.5 -versiyadan beri kuzataman), lekin hozirda "muntazam" ma'lumotlar bazalari ma'murlari, ayniqsa 1C ma'lumotlar bazalari uchun "bitta zaxira - bitta fayl" yondashuvidan foydalanmaslikning jiddiy sababi yo'q. .... Umumiy rivojlanish uchun bitta faylga bir nechta zaxira nusxalarini qo'shish imkoniyatini o'rganish foydalidir, lekin, ehtimol, siz uni ishlatishingizga to'g'ri kelmaydi (yoki agar kerak bo'lsa, unda malakasiz ishlatilgan bo'lajak administratorning vayronalari orqali saralash. bu imkoniyat).

Ko'p oynali nusxalar

SQL Serverda yana bir ajoyib xususiyat bor. Siz zaxira nusxasini parallel ravishda bir nechta qabul qiluvchilarda yaratishingiz mumkin. Oddiy misol sifatida, siz bitta nusxani mahalliy diskka tashlashingiz va bir vaqtning o'zida tarmoq ulanishiga qo'shishingiz mumkin. Mahalliy nusxa ko'chirish qulay, chunki undan qutqarish ancha tezroq, masofadan nusxa olish, boshqa tomondan, asosiy ma'lumotlar bazasi serverining jismoniy yo'q qilinishiga toqat qiladi.

Zaxira tizimlariga misollar

Yetarli nazariya. Bu butun oshxona ishlayotganini amaliyot bilan isbotlash vaqti keldi.

Texnik xizmat ko'rsatish rejalaridan foydalanib, serverning odatiy zaxirasini sozlash

Bu bo'lim tushuntirishlar bilan tayyor retseptlar ko'rinishida qurilgan. Bu bo'lim rasmlar tufayli juda zerikarli va uzoq, shuning uchun uni o'tkazib yuborishingiz mumkin.

Xizmat rejasini yaratish ustasi yordamida

TSQL skriptlari yordamida serverlarning ko'payishini sozlash, ba'zi xususiyatlarga misollar

Darhol savol tug'iladi, yana nima kerak? Ko'rinib turibdiki, hamma narsa hozirgina o'rnatilgan va hamma narsa soat kabi ishlaydi? Nega har xil skriptlar bilan ovora bo'lasiz? Xizmat rejalari ruxsat bermaydi:

  • Ko'zgudagi ortiqcha narsalardan foydalaning
  • Server parametrlaridan farqli o'laroq siqishni sozlamalarini ishlating
  • Vujudga keladigan vaziyatlarga moslashuvchan javob berishga ruxsat bermaydi (xatolarni tuzatish imkoniyati yo'q)
  • Xavfsizlik sozlamalarini moslashuvchan ishlatishga ruxsat bermaydi
  • Xizmat rejalari ko'p sonli serverlarda (hatto, ehtimol, allaqachon 3-4) joylashtirilishi (va saqlanib qolishi) juda noqulay.

Quyida odatiy zaxira buyruqlari keltirilgan

To'liq zaxira

To'liq zaxira nusxasi mavjud faylni (agar mavjud bo'lsa) ustiga yozib qo'yadi va yozishdan oldin sahifa nazorat summasini tekshiradi. Zaxira nusxasini yaratishda, harakatning har bir foizi hisobga olinadi

DISK QILISH UCHUN ZAXIRA MA'LUMOT BAZASI = N "C: \ Backup \ mydb.bak" INIT, FORMAT, STATS = 1, CHECKSUM

Differentsial zaxira

Xuddi shunday - differentsial nusxa

DISK QILISH UCHUN ZAXIRA BATABASI = N "C: \ Backup \ mydb.diff" BILAN FARKLI, INIT, FORMAT, STATS = 1, CHECKSUM

RCWT

Tranzaksiya jurnalining zaxira nusxasi

DISKGA ZAXIRA KIRISH = N "C: \ Backup \ mydb.trn" INIT, FORMAT BILAN

Oynaning ortiqcha bo'lishi

Bir vaqtning o'zida bitta zaxira nusxasini emas, balki ikkitasini yaratish ko'pincha qulaydir. Masalan, serverda lokal ravishda yotish mumkin (u qo'lda bo'lishi kerak), ikkinchisi esa darhol salbiy ta'sirlardan himoyalangan jismonan uzoq omborga aylanadi:

DISK QILISH UCHUN MAXBUROT BAZASI = N "C: \ Backup \ mydb.bak", Oyna DISK = N "\\ safe-server \ backup \ mydb.bak" INIT, FORMAT bilan

Ko'pincha e'tibordan chetda qoladigan muhim nuqta: MSSQL-server nomidan jarayon boshlangan foydalanuvchi "\\ safe-server \ backup \" resursiga kirishi kerak, aks holda nusxa ko'chirish xato bilan tugaydi. Agar MSSQL Server tizim nomidan ishlayotgan bo'lsa, "server_name $" domenining foydalanuvchisiga ruxsat berilishi kerak, lekin maxsus yaratilgan foydalanuvchi nomidan MS SQL ishga tushirilishini to'g'ri sozlash yaxshiroqdir.

Agar siz "MIRROR TO" ni ko'rsatmasangiz, u 2 ta aks ettirilgan nusxa emas, balki almashish printsipiga ko'ra, 2 ta faylga bo'lingan bitta nusxa bo'ladi. Va ularning har biri alohida -alohida foydasiz bo'ladi.

sqlcmd -S DECLSERVER \ SQLGTD -E -Q "@s varchar (255) set @ s = 'E: \ backup \ GTD_' + convert (varchar (1), datepart (dw, getdate ())) + 'deb e'lon qiladi. bakning zaxira ma'lumotlar bazasi GTD diskda @@s bilan init, noformat, skip, nounload "

sqlcmd SQLCMD rejimida buyruq satridan Transact-SQL bayonotlarini, tizim protseduralarini va skript fayllarini kiritishga imkon beradi,

  • -S - server nomini belgilaydi; server [\ misol_ nomi];
  • DECLSERVER \ SQLGTD - server nomi / ma'lumotlar bazasi ishlayotgan misol nomi;
  • -E - SQL serveriga ulanish uchun foydalanuvchi nomi va parol o'rniga ishonchli ulanishni ishlatadi;
  • -"cmdline so'rovi" - dasturni ishga tushirganda sqlcmd so'rovni bajaradi, lekin bajarilgandan so'ng dasturdan chiqadi. Nuqtali vergul bilan ajratilgan bir nechta so'rovlarni bajarish mumkin. Yuqorida ko'rsatilgandek so'rovingizni tirnoq ichiga oling;
  • e'lon qilmoq - biz s o'zgaruvchini e'lon qilamiz, o'zgaruvchining nomi har doim @bilan boshlanadi, shuning uchun @s... Bizning holatda @s- bu zaxira nusxalarini saqlash uchun papka (disk);
  • varchar (n) - o'zgaruvchining turini belgilaydi @s uzun n qatorli qator sifatida, misolda 255 belgi;
  • o'rnatish - o'zgaruvchining qiymatini belgilaydi @s, misolda, bu E diskidagi zaxira papkasi E: \ zaxira \), keyin zaxira faylining nomi o'rnatiladi, bu erda funktsiyalar to'plami aylantirish (varchar (1), sana qismi (dw, getdate ())) Haftaning joriy kuni 1 belgidan iborat matn formatida qaytariladi. 1 , Seshanba - 2 va boshqalar) va kengaytma qo'shiladi bak... Chiqishda biz nomli faylni olamiz GTD_WeekDayNumber.bak;
  • zaxira - zaxira nusxasini yaratadi;
  • ma'lumotlar bazasi - butun ma'lumotlar bazasining zaxira nusxasi yaratilganligini ko'rsatadi;
  • GTD - bizning misolimizda SQL serveridagi ma'lumotlar bazasining nomi;
  • diskka - zaxira saqlash qurilmasi turini, qattiq disk fayli va ko'rsatilgan o'zgaruvchini ko'rsatadi @s, yaratiladigan faylning yo'li va nomi tayinlangan;
  • init, noformat, o'tkazib yuborish, yuklash bilan - sarlavhalarni qayta aniqlash bilan aylanada ma'lumotlarni qayta yozish zarurligini ko'rsatadi, bu bizga haftaning har kuni uchun 7 ta zaxira faylini aylanada qayta yozish imkonini beradi.

Agar kerak bo'lsa, boshqa funktsiyalarni ishlatishingiz mumkin, masalan, siqish, Transact-SQL so'rovlari va funktsiyalar yordamiga qarang.

Qadam 2. Matn faylining kengaytmasini .cmd ga o'zgartiring

Natijada biz faylni olamiz zaxira GTD.cmd... Yaratilgan ommaviy ish faylini MS SQL ma'lumotlar bazasi o'rnatilgan mashinadan ishga tushirish kerak.

Qadam 3. Biz bu jarayonni avtomatlashtiramiz

Keling, bu qadamni MS Windows Server 2008 misolida ko'rib chiqaylik: Server menejeri -> Konfiguratsiya -> Vazifalar rejalashtiruvchisi -> Vazifalar jadvali kutubxonasi.