SQL Server ပြန်လည်ရယူခြင်းမုဒ်တွင် ဒေတာဘေ့စ်ရှိပါသလား။ သက်သေပြချက် 10 ခုကို ယခုပဲ ရယူလိုက်ပါ။ လွယ်ကူသောပြင်ဆင်မှုမှ အဆင့်မြင့်ပြုပြင်ခြင်းအထိ အဆင့်ဆင့်ဖြေရှင်းနည်းများ။
1. နားလည်မှု SQL Server ဒေတာဘေ့စ်ပြန်လည်ရယူရေးမုဒ်
1.1 Recovery Mode မှာ ဘာလဲ။ SQL Server
အခါ SQL Server ဒေတာဘေ့စ်သည် "In Recovery" အခြေအနေကိုပြသသည်၊ ၎င်းကိုဆိုလိုသည်။ SQL Server ဒေတာဘေ့စ်တစ်သမတ်တည်းရှိစေရန်အတွက် ပျက်စီးမှုပြန်လည်ရယူခြင်း သို့မဟုတ် ငွေပေးငွေယူပြန်လည်ရယူခြင်းကို လုပ်ဆောင်နေပါသည်။ ဤအလိုအလျောက် လုပ်ငန်းစဉ်သည် ကျူးလွန်ထားသော အရောင်းအ၀ယ်များကို ပြန်ဖွင့်ပြီး ကတိက၀တ်မပြုထားသော လုပ်ဆောင်ချက်များကို ပြန်လှည့်ခြင်းဖြင့် ဒေတာခိုင်မာမှုကို ထိန်းသိမ်းပေးပါသည်။
ပြန်လည်ရယူခြင်းမုဒ်သည် ပုံမှန်အားဖြင့် မမျှော်လင့်ထားသော ပိတ်မှုများ၊ ပါဝါချို့ယွင်းမှု သို့မဟုတ် ဒေတာဘေ့စ်ပြန်လည်ရယူစဉ်အတွင်း ဖြစ်ပေါ်သည်။ ၎င်းသည် ပုံမှန်အကာအကွယ် ယန္တရားတစ်ခုဖြစ်သော်လည်း ပြဿနာများ ပေါ်ပေါက်လာသည့်အခါတွင် ဖြစ်သည်။ SQL Server ပြန်လည်ရယူခြင်းတွင် ဒေတာဘေ့စ်သည် ပုံမှန်မဟုတ်သောကြာချိန် သို့မဟုတ် ပိတ်နေပုံပေါ်သည်။
1.2 ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်း၏ အဆင့်သုံးဆင့်
SQL Server ပြန်လည်ထူထောင်ရေးတွင် ကွဲပြားသော အဆင့်သုံးဆင့်ရှိသည်။
1.2.1 ဆန်းစစ်ခြင်းအဆင့်
SQL Server ညစ်ပတ်သောစာမျက်နှာများနှင့် အသက်ဝင်သော ငွေပေးငွေယူများကို ခွဲခြားသတ်မှတ်ရန် နောက်ဆုံးစစ်ဆေးရေးဂိတ်မှ ငွေပေးငွေယူမှတ်တမ်းကို စကန်ဖတ်ပါ။ ပြန်လည်ရယူရန် လိုအပ်သည်များကို ခြေရာခံရန် ၎င်းသည် Dirty Page Table (DPT) နှင့် Active Transaction Table (ATT) ကို ဖန်တီးပေးပါသည်။
1.2.2 အဆင့်ကို ပြန်လုပ်ပါ (ရှေ့သို့ လှည့်ပါ)
စနစ်သည် ပျက်စီးမှုမဖြစ်ပွားမီ ဒစ်ခ်သို့ စာရေးမထားသော ကတိပြုထားသော ငွေလွှဲမှုအားလုံးကို ပြန်ဖွင့်သည်။ ၎င်းသည် ကတိပြုထားသောပြောင်းလဲမှုအားလုံးကို ဒေတာဘေ့စ်ဖိုင်များတွင် မှန်ကန်စွာအသုံးချကြောင်း သေချာစေပါသည်။
1.2.3 အဆင့်ကို နောက်ပြန်ဆုတ်ခြင်း (ပြန်လှည့်ခြင်း)
ဒေတာဘေ့စ်တစ်သမတ်တည်းဖြစ်တည်မှုကို ထိန်းသိမ်းရန် ကတိက၀တ်မပြုသော ငွေပေးငွေယူများကို ပြန်လှည့်ပါသည်။ ပြီးသည်နှင့်၊ ပုံမှန်လုပ်ဆောင်မှုများအတွက် ဒေတာဘေ့စ်ကို ရနိုင်မည်ဖြစ်သည်။
1.3 အဖြစ်များသော လက္ခဏာများနှင့် မှားယွင်းသော မက်ဆေ့ချ်များ
ဘယ်အချိန်မှာသင့်ရဲ့ SQL Server db သည် ပြန်လည်ထူထောင်ရေးတွင် ရှိနေသည်၊ ပုံမှန်အားဖြင့် တွေ့ရလိမ့်မည်-
- တွင် “(In Recovery)” ကိုပြသထားသည့် ဒေတာဘေ့စ်အမည် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- “ဒေတာဘေ့စ်ကို ပြန်လည်ရယူနေသည်” မက်ဆေ့ချ်များဖြင့် အကောင့်ဝင်ရန် ပျက်ကွက်မှုများ
- ပြန်လည်ရယူခြင်း တိုးတက်မှု ရာခိုင်နှုန်းများကို ပြသသည့် အမှားမှတ်တမ်းများ
- မေးမြန်းသည့်အခါ “ပြန်ယူခြင်း” ကိုပြသသည့် ဒေတာဘေ့စ်အခြေအနေ
2. Root အကြောင်းရင်းများ SQL Server Recovery Mode ပြဿနာများ
2.1 မပြည့်စုံသော ပြန်လည်ရယူခြင်း လုပ်ဆောင်ချက်များ
အဖြစ်အများဆုံးအကြောင်းရင်းမှာ backup ဖိုင်များစွာမှ restore လုပ်သည့်အခါတွင် ဖြစ်ပွားလေ့ရှိသည်- နော့် နောက်ဆုံးတစ်ခုမပါဘဲရွေးချယ်မှု ပြန်လည်ရယူခြင်းနှင့်အတူ အမိန့်။ ဤအရာသည် ဒေတာဘေ့စ်တွင် နောက်ထပ် ပြန်လည်ရယူသည့် လုပ်ဆောင်ချက်များကို စောင့်မျှော်နေမည်ဖြစ်သည်။
2.2 ငွေပေးငွေယူ မှတ်တမ်း ပြဿနာများ
ကြီးမားသော ငွေပေးငွေယူ မှတ်တမ်းဖိုင်များ သို့မဟုတ် အလွန်အကျွံ Virtual Log Files (VLFs) သည် ပြန်လည်ရယူရန် သိသိသာသာ နှေးကွေးသည်။ MS SQL သည် ထောင်ပေါင်းများစွာသော VLF များဖြင့် ပြန်လည်ရယူသောအခါ၊ လုပ်ငန်းစဉ်ပြီးမြောက်ရန် နာရီ သို့မဟုတ် ရက်များစွာ ကြာနိုင်သည်။
2.3 စနစ်ဆိုင်ရာ ပြဿနာများ
ဟာ့ဒ်ဝဲ ချို့ယွင်းမှုများ၊ ပါဝါပြတ်တောက်မှုများ သို့မဟုတ် ဒစ်ခ်နေရာ မလုံလောက်မှုများသည် ပုံမှန်ဒေတာဘေ့စ်လုပ်ဆောင်ချက်များကို အနှောင့်အယှက်ဖြစ်စေပြီး ပြန်လည်စတင်စဉ်အတွင်း ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်များကို ကြာရှည်စွာ ဖြစ်ပေါ်စေပါသည်။
2.4 ဒေတာဘေ့စ် အကျင့်ပျက်ခြစားမှု
ပျက်စီးနေသော ဒေတာဘေ့စ်ဖိုင်များသည် အောင်မြင်စွာ ပြန်လည်ရယူခြင်းကို တားဆီးနိုင်ပြီး၊ ဒေတာဘေ့စ်အား ပြန်လည်ရယူခြင်းမုဒ်တွင် အကန့်အသတ်မရှိ ပိတ်မိစေပါသည်။
၃။ ပြုပြင်ခြင်းမပြုမီ ရောဂါရှာဖွေခြင်းအဆင့်များ
3.1 စစ်ဆေးခြင်း။ SQL Server အမှားမှတ်တမ်းများ
ပြုပြင်ရန်မကြိုးစားမီ၊ ဆန်းစစ်ပါ။ SQL Server ပြန်လည်ရယူရေး တိုးတက်မှု မက်ဆေ့ဂျ်များအတွက် အမှားမှတ်တမ်း။ ပြီးစီးမှု ရာခိုင်နှုန်းများနှင့် ခန့်မှန်းခြေ ကျန်အချိန်များကို ပြသသည့် ထည့်သွင်းမှုများကို ရှာဖွေပါ။
- ဖွင့်လှစ် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- သို့သွားရန် စီမံခန့်ခွဲမှု -> SQL Server သစ်လုံး
- သင်၏ဒေတာဘေ့စ်အမည်အတွက် လတ်တလောထည့်သွင်းမှုများကို ပြန်လည်သုံးသပ်ပါ။
- ပြန်လည်ထူထောင်ရေး အဆင့်ညွှန်းကိန်းများကို ရှာဖွေပါ (အဆင့် 1၊ 2၊ သို့မဟုတ် 3 မှ 3)
3.2 ပြန်လည်ရယူခြင်း တိုးတက်မှုကို စောင့်ကြည့်ခြင်း။
လက်ရှိ ပြန်လည်ရယူခြင်း လုပ်ငန်းများကို ခြေရာခံရန် ဒိုင်းနမစ် စီမံခန့်ခွဲမှုအမြင်များကို အသုံးပြုပါ-
SELECT session_id, command, blocking_session_id, wait_type, wait_time, wait_resource FROM sys.dm_exec_requests WHERE command = 'DB STARTUP';
3.3 ဒေတာဘေ့စ်အခြေအနေစစ်ဆေးခြင်း။
ပြန်လည်ရယူခြင်းအခြေအနေကို နားလည်ရန် လက်ရှိဒေတာဘေ့စ်အခြေအနေအား အတည်ပြုပါ-
SELECT name, state_desc FROM sys.databases WHERE name = 'YourDatabaseName';
4. ပြင်ဆင်ခြင်း #1- သဘာဝပြန်လည်ရယူခြင်း ပြီးဆုံးရန် စောင့်ပါ။
တစ်ခါတစ်ရံ စိတ်ရှည်ခြင်းသည် သင့်အတွက် အကောင်းဆုံးဖြေရှင်းချက်ဖြစ်သည်။ SQL Server ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်းတွင်ဖြစ်သည်။ ပြန်လည်ထူထောင်ရေး ပုံမှန်အတိုင်း လုပ်ဆောင်နေသော်လည်း မျှော်လင့်ထားသည်ထက် ပိုကြာသောအခါ ဤနည်းလမ်းသည် အလုပ်လုပ်ပါသည်။
4.1 ဘယ်အချိန်မှာ စိတ်ရှည်ရမလဲ
သဘာဝအတိုင်း ပြီးစီးမှုကို ခွင့်ပြုပါ-
- အမှားမှတ်တမ်းများသည် အချိန်ခန့်မှန်းချက်များကို လျှော့ချခြင်းဖြင့် တည်ငြိမ်သောတိုးတက်မှုကို ပြသသည်။
- အဂတိလိုက်စားမှု အမှားအယွင်းများ မရှိခဲ့ကြောင်း သိရသည်။
- ဒေတာဘေ့စ်သည် မကြာသေးမီက ကြီးမားသော အရောင်းအဝယ်များကို ကြုံတွေ့ခဲ့ရသည်။
- VLF အရေအတွက်ကို (1,000 အောက်) စီမံခန့်ခွဲနိုင်သည်
4.2 ပြန်လည်ရယူခြင်း တိုးတက်မှုကို စောင့်ကြည့်ခြင်း။
အမှားမှတ်တမ်းများတွင် ပြန်လည်ရယူချိန် ခန့်မှန်းချက်များသည် မကြာခဏ မှားယွင်းနေပါသည်။ ကျန်ရှိသောအချိန်ထက် တိုးတက်မှု ရာခိုင်နှုန်းများကို အာရုံစိုက်ပါ။ ကျယ်ပြန့်သော ငွေပေးငွေယူမှတ်တမ်းများပါရှိသော ဒေတာဘေ့စ်ကြီးများသည် ပြီးပြည့်စုံသော ပြန်လည်ရယူရန်အတွက် နာရီများစွာ လိုအပ်ပါသည်။
5. ပြင်ဆင်ခြင်း #2- ဒေတာဘေ့စ်ကို ပြန်လည်ရယူခြင်းဖြင့် ပြန်လည်ရယူခြင်းကို အသုံးပြုပါ။
ဤပြင်ဆင်ချက်သည် နောက်ဆုံးပြန်လည်ရယူခြင်းအဆင့်ကို ချန်လှပ်ထားရာ မပြည့်စုံသော ပြန်လည်ရယူခြင်းများကို ဖြေရှင်းပေးပါသည်။ မင်းရဲ့ အချိန်မှာ ဒါကို သုံးပါ။ SQL Server ပြန်လည်ရယူခြင်းတွင် db သည် NORECOVERY ကို အသုံးပြု၍ ပြန်လည်ရယူသည့်လုပ်ငန်းစဉ်မှ ထွက်ပေါ်လာခြင်းဖြစ်သည်။
5.1 Command ကိုနားလည်ခြင်း။
အဆိုပါ ပြန်လည်ရယူခြင်းဖြင့် ဒေတာဘေ့စ်ကို ပြန်လည်ရယူပါ။ command သည် ကတိမတည်ထားသော အရောင်းအ၀ယ်များကို ပြန်လှည့်ကာ ဒေတာဘေ့စ်ကို အွန်လိုင်းသို့ ယူဆောင်လာခြင်းဖြင့် ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်ကို အပြီးသတ်စေသည်။
5.2 အကောင်အထည်ဖော်ရေး အဆင့်များ
- ဖွင့်လှစ် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- ဆက်သွယ်ပါ SQL Server အာဏာ
- ကလစ်နှိပ်ပါ အသစ် > လက်ရှိချိတ်ဆက်မှုဖြင့် မေးမြန်းမှု
- လုပ်ဆောင်ရန်-
RESTORE DATABASE [YourDatabaseName] WITH RECOVERY; - ပြီးဆုံးကြောင်း အတည်ပြုချက်ကို စောင့်ပါ။
သတိပေးချက်: နောက်ထပ် ပြန်လည်ရယူခြင်း လုပ်ငန်းများကို ဆိုင်းငံ့ထားခြင်း မရှိဟု သေချာပါက ဤအမိန့်ကို အသုံးပြုပါ။
6. ပြင်ဆင်ခြင်း #3- ငွေလွှဲခြင်းမှတ်တမ်းပြဿနာများကို ဖြေရှင်းပါ။
ငွေပေးငွေယူ မှတ်တမ်းပြဿနာများသည် သက်တမ်းတိုးသည့် ပြန်လည်ရယူချိန်များ၏ အဓိကအကြောင်းရင်းဖြစ်သည်။ ဤပြင်ဆင်မှုသည် မှတ်တမ်းအပြည့်အစုံ၊ အလွန်အကျွံ VLF များနှင့် သိမ်းဆည်းထားသည့် မှတ်တမ်းနေရာပြဿနာများကို ဖြေရှင်းပေးသည်။ SQL Server ပြန်လည်ထူထောင်ရေးတွင်။
6.1 ငွေပေးငွေယူမှတ်တမ်းများကို အရန်သိမ်းခြင်း။
ငွေပေးငွေယူ မှတ်တမ်း အရန်များကို ဖန်တီးခြင်းဖြင့် မှတ်တမ်းနေရာလွတ် ရှင်းပါ-
- ဖွင့်လှစ် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- သင့်ဒေတာဘေ့စ်ကို ညာကလစ်နှိပ်ပါ။ လုပ်ငန်းတာဝန်များ -> Up ကို back
- ပွောငျးလဲ Backup အမျိုးအစား သို့ ငွေလွှဲမှတ်တမ်း
- အရန်သိမ်းမည့်နေရာကို သတ်မှတ်ပါ။
- ကလစ်နှိပ်ပါ OK execute လုပ်ဖို့
6.2 Virtual Log Files (VLFs) ကို စီမံခန့်ခွဲခြင်း
VLF အရေအတွက်ကို စစ်ဆေးပါ-
DBCC LOGINFO('YourDatabaseName');
သင့်တွင် VLF 1,000 ကျော်ရှိပါက၊ ၎င်းတို့ကို အောက်ပါအတိုင်း လျှော့ချပါ။
- ငွေပေးငွေယူမှတ်တမ်းကို အရန်သိမ်းခြင်း။
- မှတ်တမ်းဖိုင်ကို ကျုံ့ခြင်း-
DBCC SHRINKFILE(LogFileName, TRUNCATEONLY); - မှတ်တမ်းဖိုင်ကို အတုံးကြီးများဖြင့် ကြီးထွားစေသည် (1GB သို့မဟုတ် ထို့ထက်ပိုသည်)
6.3 မှတ်တမ်းဖိုင်များကို ဘေးကင်းစွာ ကျုံ့ခြင်း။
အသက်ဝင်သော ငွေပေးငွေယူများ မလည်ပတ်သောအခါ ပြုပြင်ထိန်းသိမ်းမှုပြတင်းပေါက်များအတွင်း မှတ်တမ်းများကိုသာ လျှော့ပါ။ လုပ်ဆောင်ချက်များကို ကျုံ့မသွားမီ ဒေတာဘေ့စ်ကို အမြဲတမ်း အရန်သိမ်းဆည်းပါ။
7. Fix #4- DBCC CHECKDB ကို Run ပြီး Repair လုပ်ပါ။
ဒေတာဘေ့စ် အကျင့်ပျက်ခြစားမှု အောင်မြင်စွာ ပြန်လည်ရယူခြင်းကို တားဆီးနိုင်သည်။ DBCC CHECKDB သည် MS SQL အား ပြန်လည်ရယူရေးမုဒ်တွင် ထိန်းသိမ်းထားနိုင်သည့် အသေးစား အကျင့်ပျက်ခြစားမှုပြဿနာများကို ဖော်ထုတ်ပြီး ပြုပြင်ပေးနိုင်သည့် တပ်ဆင်ထားသည့် command တစ်ခုဖြစ်သည်။
7.1 ဒေတာဘေ့စ် အကျင့်ပျက်ခြစားမှုကို စစ်ဆေးနေသည်။
ဒေတာဘေ့စ် မှန်ကန်မှုကို အတည်ပြုရန် စံနည်းလမ်းဖြင့် စတင်ပါ။ DBCC CHECKDB ကို ဦးစွာ တိုက်ရိုက်စမ်းကြည့်ပါ-
- လုပ်ဆောင်ရန်-
DBCC CHECKDB('YourDatabaseName') WITH NO_INFOMSGS; - ညီညွတ်မှု အမှားများအတွက် ရလဒ်များကို ပြန်လည်သုံးသပ်ပါ။
- အကျင့်ပျက်ခြစားသောစာတိုများကို မှတ်တမ်းတင်ထားပါ။
DBCC CHECKDB မအောင်မြင်ပါက "ဒေတာဘေ့စ်ကို ပြန်လည်ရယူနေပါသည်။ ပြန်လည်ရယူခြင်း ပြီးဆုံးသည့်တိုင်အောင် စောင့်ဆိုင်းနေသည်" ကဲ့သို့ အမှားအယွင်းများဖြင့် ဒေတာဘေ့စ်သည် ပြန်လည်ရယူခြင်းမုဒ်တွင် တက်ကြွစွာ လုပ်ဆောင်နေပြီး ဝင်ရောက်ခွင့်ကို ပိတ်ပင်ထားခြင်းကို ဆိုလိုသည်။ ဤကိစ္စတွင်၊ အရေးပေါ်မုဒ်ကို အသုံးပြုရန် အပိုင်း 7.3 သို့ ဆက်သွားပါ။
7.2 အသုံးပြုနိုင်သောဒေတာဘေ့စ်များအတွက် ပြုပြင်မှုရွေးချယ်စရာများ
DBCC CHECKDB သည် အောင်မြင်စွာလုပ်ဆောင်ပြီး အကျင့်ပျက်ခြစားမှုကို တွေ့ရှိပါက၊ ဤပြုပြင်မှုအဆင့်များကို အသုံးပြုပါ-
- ဒေတာဘေ့စ်ကို အသုံးပြုသူတစ်ခုတည်းမုဒ်သို့ သတ်မှတ်ပါ-
ALTER DATABASE [YourDatabaseName] SET SINGLE_USER; - ဘေးကင်းစွာ ပြုပြင်ရန် ကြိုးစားပါ
DBCC CHECKDB('YourDatabaseName', REPAIR_REBUILD); - မအောင်မြင်ပါက၊ အသုံးပြုပါ
DBCC CHECKDB('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS); - Multi-user သို့ ပြန်သွားရန်-
ALTER DATABASE [YourDatabaseName] SET MULTI_USER;
7.3 ဒေတာဘေ့စ်ကို လက်လှမ်းမမီသည့်အခါ အရေးပေါ်မုဒ်ကို အသုံးပြုခြင်း။
ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်းတွင် ပိတ်မိနေပြီး ပုံမှန် DBCC CHECKDB ကြိုးပမ်းမှုများကို ငြင်းပယ်မှသာ အရေးပေါ်မုဒ်လိုအပ်ပါသည်။ ၎င်းသည် ဒေတာဘေ့စ်ကို READ_ONLY အဖြစ် အမှတ်အသားပြုပြီး မှတ်တမ်းကို ပိတ်ထားသည်။ စံဝင်ရောက်ခွင့် ပျက်ကွက်သောအခါ ဤနည်းလမ်းကို အသုံးပြုပါ။
- အရေးပေါ်မုဒ်ကို သတ်မှတ်ပါ-
ALTER DATABASE [YourDatabaseName] SET EMERGENCY; - အသုံးပြုသူတစ်ခုတည်းကို သတ်မှတ်ပါ-
ALTER DATABASE [YourDatabaseName] SET SINGLE_USER; - ကြံ့ခိုင်မှုစစ်ဆေးခြင်းကို လုပ်ဆောင်ပါ-
DBCC CHECKDB('YourDatabaseName') WITH NO_INFOMSGS; - အဂတိလိုက်စားမှုတွေ့ရှိပါက လုံခြုံစွာပြုပြင်ခြင်းကို ဦးစွာလုပ်ဆောင်ပါ-
DBCC CHECKDB('YourDatabaseName', REPAIR_REBUILD); - မအောင်မြင်ပါက ဒေတာဆုံးရှုံးမှုဖြင့် ပြုပြင်မှုကို အသုံးပြုပါ-
DBCC CHECKDB('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS); - အသုံးပြုသူအများအပြားကို သတ်မှတ်ပါ-
ALTER DATABASE [YourDatabaseName] SET MULTI_USER; - အွန်လိုင်းသတ်မှတ်ပါ-
ALTER DATABASE [YourDatabaseName] SET ONLINE;
အရေးကြီး: အရေးပေါ်မုဒ်သည် ပုံမှန်ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်များကို ကျော်ဖြတ်ပြီး ဒေတာဘေ့စ်ကို လုံးဝလက်လှမ်းမမီသည့်အခါမှသာ အသုံးပြုသင့်သည်။ အရေးပေါ်မုဒ်သို့မပြောင်းမီ Standard DBCC CHECKDB ချဉ်းကပ်မှုကို အမြဲကြိုးစားပါ။
သင်ရှာလိုရသည် DBCC CHECKDB အသုံးပြုနည်းအတွက် ပိုမိုပြည့်စုံသော လမ်းညွှန်ချက်.
8. ပြင်ဆင်ခြင်း #5- Backup မှ ပြန်လည်ရယူပါ။
အခြားနည်းလမ်းများ မအောင်မြင်သည့်အခါ သို့မဟုတ် ဒေတာများ၏ တည်တံ့ခိုင်မြဲမှုသည် မေးခွန်းထုတ်စရာဖြစ်သည့်အခါ၊ သန့်ရှင်းသော အရန်ကူးယူမှုမှ ပြန်လည်ရယူခြင်းသည် ဖြေရှင်းရန်အတွက် အယုံကြည်ရဆုံး ဖြေရှင်းချက်ဖြစ်လေ့ရှိသည်။ SQL Server ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်းပြဿနာ။
8.1 အရန်သိမ်းခြင်း ပြန်လည်ထူထောင်ခြင်းကို ရွေးချယ်ရမည့်အချိန်
ဘယ်အချိန်မှာ အရန်သိမ်းခြင်းကို ပြန်လည်ရယူဖို့ စဉ်းစားပါ-
- ပြန်လည်ရယူခြင်းသည် တိုးတက်မှုမရှိဘဲ ၂၄ နာရီကျော်ကြာ လုပ်ဆောင်နေပါသည်။
- အကျင့်ပျက်ခြစားမှု အမှားများကို တားဆီး ပြုပြင်ခြင်း အောင်မြင်မည်။
- သင့်တွင် မကြာသေးမီက အတည်ပြုထားသော အရန်များ ရရှိနိုင်ပါပြီ။
- နောက်ဆုံးမိတ္တူကို လက်ခံနိုင်သောကြောင့် ဒေတာဆုံးရှုံးမှု
8.2 အဆင့်ဆင့် ပြန်လည်ထူထောင်ရေး လုပ်ငန်းစဉ်
- ဖွင့်လှစ် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- right-click နှိပ်ပြီး ဒတောဘေ့စျ -> ဒေတာဘေ့စ်ကို ပြန်ယူပါ။
- ကို Select လုပ်ပါ စက်ကိရိယာ အရင်းအမြစ်အောက်မှာ
- ကလစ်နှိပ်ပါ ပေါင်း ပြီးလျှင် သင်၏ အရန်ဖိုင်ကို ရှာဖွေပါ။
- Backup ကို ရွေးပြီး နှိပ်ပါ။ OK
- ရှေးခယျြ ရှိပြီးသားဒေတာဘေ့စ်ကို overwrite လိုအပ်ရင်
- ကလစ်နှိပ်ပါ OK ပြန်လည်ထူထောင်ရေးစတင်ရန်
8.3 Point-in-Time ပြန်လည်ရယူခြင်း။
ဒေတာဆုံးရှုံးမှုအနည်းဆုံးအတွက်၊ အချိန်မီသတ်မှတ်ထားသောနေရာသို့ ပြန်လည်ရောက်ရှိရန် ငွေပေးငွေယူမှတ်တမ်းအရန်များကို အသုံးပြုပါ။ သင့်တွင် သင်၏အရန်အပြည့်အစုံမှ အလိုရှိသော ပြန်လည်ရယူရေးအမှတ်အထိ မပြိုကွဲသေးသော မှတ်တမ်းအရန်များ ကွင်းဆက်တစ်ခုရှိကြောင်း သေချာပါစေ။
8.4 အကိုးအကား
ကျွန်ုပ်တို့၏ အချက်အလက်များကို သင်ပိုမိုလေ့လာနိုင်ပါသည်။ အရန်သိမ်းခြင်းနှင့် ပြန်လည်ရယူနည်းအတွက် ပြည့်စုံသောလမ်းညွှန်ချက် SQL Server ဒေတာဘေ့စ.
9. ပြင်ဆင်ပါ #6- AUTO CLOSE Property ကို ပိတ်ပါ။
အော်တိုပိတ် ဒေတာဘေ့စ်ပိုင်ဆိုင်မှုသည် ထပ်ခါတလဲလဲ ပြန်လည်ရယူခြင်း သံသရာကို ဖြစ်စေနိုင်ပြီး၊ ၎င်းသည် သင်၏ပုံပေါ်စေပါသည်။ SQL Server db သည် အဆက်မပြတ် ပြန်လည်ရယူနေပါသည်။ ဤပိုင်ဆိုင်မှုကို ပိတ်ခြင်းသည် ပြဿနာကို ဖြေရှင်းပေးသည်။
9.1 အလိုအလျောက်ပိတ် ပြဿနာများကို နားလည်ခြင်း။
AUTO CLOSE ကိုဖွင့်သောအခါ၊ SQL Server နောက်ဆုံးချိတ်ဆက်မှု ပြီးဆုံးပြီးနောက် ဒေတာဘေ့စ်ကို ပိတ်ပြီး ချိတ်ဆက်မှုအသစ်အတွက် ၎င်းကို ပြန်ဖွင့်ပါ။ ဤထပ်ခါတလဲလဲဖွင့်ခြင်းသည် ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်များကို အကြိမ်တိုင်း အစပျိုးစေသည်။
9.2 အလိုအလျောက်ပိတ်ခြင်းကို ပိတ်ခြင်း။
- ဖွင့်လှစ် SQL Server စီမံခန့်ခွဲမှုစတူဒီယို
- သင့်ဒေတာဘေ့စ်ကို ညာကလစ်နှိပ်ပါ။ My Properties
- ကို Select လုပ်ပါ Options ကို ဘယ်ဘက်ဘောင်မှ
- အစုံ အလိုအလျောက်ပိတ် သို့ မှားသော
- ကလစ်နှိပ်ပါ OK ပြောင်းလဲမှုများကို အသုံးချရန်
တနည်းအားဖြင့် T-SQL ကိုသုံးပါ။
ALTER DATABASE [YourDatabaseName] SET AUTO_CLOSE OFF;
၁၀။ ပြင်ဆင်ချက် #၇: ပြန်လည်စတင်ပါ SQL Server ဝန်ဆောင်မှု
ဝန်ဆောင်မှုပြန်လည်စတင်ခြင်းသည် ပိတ်မိနေသော ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်များကို ဖြေရှင်းပေးနိုင်သော်လည်း အစမှ ပြန်လည်ရယူခြင်းကို ပြန်လည်စတင်မည်ဖြစ်သောကြောင့် ဂရုတစိုက်အသုံးပြုသင့်သည်။ ဤပြင်ဆင်မှုသည် အလုပ်လုပ်သည့်အခါတွင် SQL Server ပြန်လည်ထူထောင်ရေးတွင် လုံးဝ အေးခဲသွားပုံပေါ်သည်။
၁၀.၁ ဝန်ဆောင်မှုပြန်လည်စတင်ရန် အထောက်အကူဖြစ်စေသည့်အခါ
ဝန်ဆောင်မှုကို ပြန်လည်စတင်ပါ-
- ပြန်လည်ရယူရေး တိုးတက်မှုသည် နာရီပေါင်းများစွာ ရပ်တန့်သွားခဲ့သည်။
- အမှားမှတ်တမ်းများတွင် ထည့်သွင်းမှုအသစ်များ မပြပါ။
- အခြားဒေတာဘေ့စ်များသည် ပုံမှန်အတိုင်း လုပ်ဆောင်နေပါသည်။
- အချိန်ပိုကြာအောင် သင်တတ်နိုင်သည်။
၁၀.၂ ဘေးကင်းစွာ ပြန်လည်စတင်ခြင်း လုပ်ထုံးလုပ်နည်းများ
- ဖွင့်လှစ် SQL Server Configuration Manager
- သို့သွားရန် SQL Server န်ဆောင်မှုများ
- အဆိုပါ Find SQL Server restart လုပ်ချင်တဲ့ instance ကို right click နှိပ်ပါ။ SQL Server (ဥပမာ အမည်)
- ကို Select လုပ်ပါ ပြန်စတင်သည်
- ဝန်ဆောင်မှု အပြည့်အဝ ပြန်လည်စတင်ရန် စောင့်ပါ
- ပြန်လည်ရယူခြင်းတိုးတက်မှုအတွက် အမှားအယွင်းမှတ်တမ်းများကို စောင့်ကြည့်ပါ။
မှတ်စု: ပြန်လည်စတင်ခြင်းဖြင့် ပြန်လည်ကောင်းမွန်လာမှုကို အစမှပြန်လည်စတင်စေပြီး စုစုပေါင်းပြန်လည်ကောင်းမွန်ချိန်ကို တိုးစေနိုင်သည်။
11. Fix #8- Detaching and Reattaching ဖြင့် Database ကို ပြုပြင်ပါ။
ပြင်းထန်သောကိစ္စများအတွက်၊ ဒေတာဘေ့စ်ကို ဖြုတ်ပြီး ပြန်လည်ချိတ်ဆက်ပါ-
- ဒေတာဘေ့စ်ကို ဖယ်ထုတ်ပါ-
EXEC sp_detach_db 'YourDatabaseName'; - MDF ဖိုင်ကိုသာ ပူးတွဲပါ-
CREATE DATABASE [YourDB] ON (FILENAME = 'C:\Path\YourDB.mdf') FOR ATTACH_REBUILD_LOG; - ၎င်းသည် ငွေပေးငွေယူ မှတ်တမ်းအသစ်ကို ပြန်လည်တည်ဆောက်သည်။
သတိပေးချက်: ဤနည်းလမ်းသည် ဒေတာ ဆုံးရှုံးမှု ဖြစ်စေနိုင်သည်။ အခြားရွေးချယ်စရာများ ကုန်သွားသောအခါမှသာ အသုံးပြုပါ။
12. ပြင်ဆင်ခြင်း #9- Database Mirroring ပြဿနာများကို ကိုင်တွယ်ပါ။
ဒေတာဘေ့စ်ကို ထင်ဟပ်စေသော ဖွဲ့စည်းမှုပုံစံများသည် ထူးခြားသော ပြန်လည်ရယူရေး ပြဿနာများကို ဖြစ်စေနိုင်သည်။ ဤပြင်ဆင်မှုသည် ဒေတာဘေ့စ်များကို ပြန်လည်ရယူသည့်အခြေအနေတွင် ရှိနေစေမည့် ပုံတူကူးချခြင်းဆိုင်ရာ သီးခြားပြဿနာများကို ဖြေရှင်းပေးသည်။
12.1 Mirroring-Specific Recovery ပြဿနာများ
ပါတနာချိတ်ဆက်မှုပြဿနာများ သို့မဟုတ် အဆုံးမှတ်ပြဿနာများကြောင့် ပြန်လည်ရယူခြင်းတွင် Mirrored ဒေတာဘေ့စ်များ ပိတ်မိနေနိုင်သည်။ အဓိက နှင့် ကြေးမုံ ဒေတာဘေ့စ် နှစ်ခုလုံးသည် ပြန်လည်ရယူခြင်း အခြေအနေကို ပြသနိုင်သည်။
12.2 Mirroring Recovery Solutions
မှန်ပြောင်းခြင်း အဆုံးမှတ်ကို ပြန်လည်စတင်ပါ-
- အဆုံးမှတ်အမည်ကို ရှာပါ-
SELECT * FROM sys.endpoints WHERE type = 4; - ရပ်ရန်နေရာ-
ALTER ENDPOINT [EndpointName] STATE = STOPPED; - စတင်သည့် အဆုံးမှတ်-
ALTER ENDPOINT [EndpointName] STATE = STARTED;
endpoint restart မအောင်မြင်ပါက mirroring partnership ကို ဖြတ်တောက်ပါ-
- လုပ်ဆောင်ရန်-
ALTER DATABASE [DatabaseName] SET PARTNER OFF; - Run ကို:
RESTORE DATABASE [DatabaseName] WITH RECOVERY; - ဒေတာဘေ့စ်အွန်လိုင်းပေါ်ရှိနှင့်တစ်ပြိုင်နက် mirroring ကိုပြန်လည်သတ်မှတ်ပါ။
13. ပြင်ဆင်ခြင်း #10- Professional Recovery Tools ကိုသုံးပါ။
Third-party ပြန်လည်ရယူရေးကိရိယာများသည် built-in သောအခါတွင်အဆင့်မြင့်ပြုပြင်မှုစွမ်းရည်များကိုပေးသည်။ SQL Server နည်းလမ်းများ မအောင်မြင်ပါ။ ဤကိရိယာများသည် ဆိုးရွားစွာ ပျက်စီးနေသော ဒေတာဘေ့စ်များမှ ဒေတာများကို မကြာခဏ ပြန်လည်ရယူနိုင်သည်။
13.1 DataNumen SQL Recovery
DataNumen SQL Recovery ပြီးပြည့်စုံသော ရွေးချယ်မှုများနှင့်အတူ ပြန်လည်ထူထောင်ရေးနှုန်းမြင့်မားသည်။
၎င်းကိုအသုံးပြုရန် အောက်တွင်ဖော်ပြထားသော အဆင့်များမှာ-
- ရပ်လိုက်ပါ။ SQL Server ဝန်ဆောင်မှု
- မူလ MDF ဖိုင်နှင့် ဒုတိယ NDF ဖိုင်များအပါအဝင် ပြန်လည်ရယူခြင်းမုဒ်တွင် ဒေတာဘေ့စ်၏ဖိုင်များကို မိတ္တူပြုလုပ်ပါ။
- အဆိုပါ Start SQL Server ဝန်ဆောင်မှု
- စတင် DataNumen SQL Recovery.
- ပြန်လည်ရယူရမည့် ဒေတာဘေ့စ်၏ အရင်းအမြစ်အဖြစ် မူရင်းဖိုင်အစား မိတ္တူကို ရွေးပါ။
- “Start Recovery” ကို နှိပ်ပြီး ဒေတာဘေ့စ်ကို ပြန်လည်ရယူရန် ညွှန်ကြားချက်များကို လိုက်နာပါ။
- ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်ပြီးနောက်၊ ပြန်လည်ရယူခြင်းဒေတာဘေ့စ်အသစ်တစ်ခုပေါ်လာလိမ့်မည်။ SQL Server ပြန်လည်ရယူထားသောဒေတာအားလုံးပါ ၀ င်သည်။
13.2 Third-Party Tools ကို ဘယ်အချိန်မှာ စဉ်းစားရမလဲ
ပရော်ဖက်ရှင်နယ် ကိရိယာများကို အသုံးပြုသည့်အခါ-
- Built-in ပြုပြင်မှု ရွေးချယ်စရာများ ပျက်ကွက် သို့မဟုတ် ကျယ်ပြန့်သော အကျင့်ပျက်ခြစားမှု သတင်းပို့ပါ။
- မကြာသေးမီက အရန်သိမ်းဆည်းမှုများ မရရှိနိုင်ပါ။
- အကျင့်ပျက်ခြစားနေသော်လည်း အရေးကြီးသောဒေတာကို ပြန်လည်ရယူရပါမည်။
- ပုံမှန်ပြန်လည်ရယူရေးနည်းလမ်းများသည် သိသာထင်ရှားသောဒေတာဆုံးရှုံးမှုကို ဖြစ်ပေါ်စေသည်။
14. ကြိုတင်ကာကွယ်ခြင်း အကောင်းဆုံးအလေ့အကျင့်များ
14.1 ပုံမှန်ထိန်းသိမ်းခြင်းလုပ်ငန်းများ
တားဆီးရန် ဤအလေ့အကျင့်များကို အကောင်အထည်ဖော်ပါ။ SQL Server ပြန်လည်ရယူရေးပြဿနာများရှိ ဒေတာဘေ့စ်-
- ပုံမှန်ပြည့်ပြည့်စုံစုံ အချိန်ဇယားဆွဲပြီး အရန်ကူးယူပါ- ပြီးပြည့်စုံသော အရန်ကွင်းဆက်များကို ထိန်းသိမ်းပါ။
- VLF အရေအတွက်များကို စောင့်ကြည့်ပါ- အကောင်းဆုံးစွမ်းဆောင်ရည်အတွက် VLF များကို 100 အောက်ထားပါ။
- မှတ်တမ်းဖိုင်အရွယ်အစားကို စီစဉ်ပါ- အလွန်အကျွံ ကြီးထွားမှုကို ရှောင်ရှားရန် အရွယ်အစား မှတ်တမ်းများ
- ပုံမှန် DBCC CHECKDB ကိုဖွင့်ပါ- အဂတိလိုက်စားမှုကို စောစီးစွာ ဖော်ထုတ်ပါ။
14.2 စောင့်ကြည့်ခြင်းနှင့် သတိပေးခြင်း။
တက်ကြွစွာ စောင့်ကြည့်ခြင်းကို သတ်မှတ်ပါ-
- ဒေတာဘေ့စ်အခြေအနေပြောင်းလဲမှုများအတွက် သတိပေးချက်များကို စီစဉ်သတ်မှတ်ပါ။
- မှတ်တမ်းဖိုင်ဒရိုက်ဗ်များပေါ်တွင် disk နေရာလွတ်ကိုစောင့်ကြည့်ပါ။
- ရေရှည် အရောင်းအ၀ယ်များကို ခြေရာခံပါ။
- အလွန်အကျွံ VLF အရေအတွက်အတွက် သတိပေးချက်
14.3 ဟာ့ဒ်ဝဲနှင့် အခြေခံအဆောက်အဦ
ယုံကြည်စိတ်ချရသော အခြေခံအဆောက်အအုံကို သေချာစေပါ-
- ငွေပေးငွေယူ မှတ်တမ်းများအတွက် အမြန်သိုလှောင်မှုကို သုံးပါ (ဖြစ်နိုင်ရင် SSDs)
- မလိုအပ်သော ပါဝါထောက်ပံ့မှုများကို အကောင်အထည်ဖော်ပါ။
- မတူညီသော drive များတွင် ဒေတာနှင့် မှတ်တမ်းဖိုင်များကို ခွဲခြားပါ။
- စဉ်းစားကြည့်ပါ ရရှိနိုင်မှုမြင့်မားသော ဖြေရှင်းချက်များ ကဲ့သို့ အမြဲတမ်းရရှိနိုင်မှုအဖွဲ့များ
15. ပြဿနာဖြေရှင်းခြင်း ရှုပ်ထွေးသောအခြေအနေများ
15.1 Multiple Database ပြဿနာများ
ဒေတာဘေ့စ်များစွာကို ပြန်လည်ရယူခြင်းတွင် ပိတ်မိသောအခါ-
- စနစ်တစ်ခုလုံးဆိုင်ရာ ပြဿနာများ (ဒစ်ခ်နေရာ၊ မမ်မိုရီ) ကို စစ်ဆေးပါ
- ပြန်လည်ရယူရန်အတွက် အရေးကြီးသော ဒေတာဘေ့စ်များကို ဦးစားပေးပါ။
- ဥပမာတစ်ခုလုံးကို ထိခိုက်စေသော ဟာ့ဒ်ဝဲပြဿနာများကို သုံးသပ်ပါ။
- လတ်တလော စနစ်အပြောင်းအလဲများ သို့မဟုတ် အပ်ဒိတ်များကို ပြန်လည်သုံးသပ်ပါ။
15.2 ကြီးမားသော Database ထည့်သွင်းစဉ်းစားမှုများ
1TB အထက် ဒေတာဘေ့စ်များအတွက်-
- ပြန်လည်နာလန်ထချိန် ပိုကြာသည် (ဖြစ်နိုင်ချေရှိသော ရက်များ)
- လုံလောက်သော မှတ်ဉာဏ်ခွဲဝေမှုကို သေချာပါစေ။
- အပြိုင်လုပ်ဆောင်ခြင်း ဆက်တင်များကို သုံးသပ်ပါ။
- ပြန်လည်ရယူနေစဉ် tempdb space ကို စောင့်ကြည့်ပါ။
15.3 Microsoft ပံ့ပိုးကူညီမှုအား ဆက်သွယ်ရမည့်အချိန်
Microsoft Support ကို ဆက်သွယ်ပါ-
- အရန်ရွေးချယ်စရာမရှိသော အရေးကြီးသော ထုတ်လုပ်မှုစနစ်များ
- သံသယဖြစ်ဖွယ် SQL Server software ချို့ယွင်းမှုများ
- ပြန်လည်ရယူရန် အာမခံချက်လိုအပ်သော လုပ်ငန်းပတ်ဝန်းကျင်များ
- ရှုပ်ထွေးသောအမြဲတမ်းဖွင့်ခြင်း သို့မဟုတ် အစုလိုက်အပြုံလိုက်အခြေအနေများ
၇
Q: ဘယ်လောက်ကြာမလဲ။ SQL Server ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်းပုံမှန်အတိုင်းယူပါသလား။
A- ပြန်လည်ရယူချိန်သည် ဒေတာဘေ့စ်အရွယ်အစား၊ ငွေပေးငွေယူပမာဏနှင့် ဟာ့ဒ်ဝဲစွမ်းဆောင်ရည်အပေါ် မူတည်ပါသည်။ သေးငယ်သောဒေတာဘေ့စ်များသည် ပုံမှန်အားဖြင့် မိနစ်ပိုင်းအတွင်း ပြန်လည်ရယူလေ့ရှိသော်လည်း ကျယ်ပြန့်သော ငွေပေးငွေယူမှတ်တမ်းများပါရှိသော ဒေတာဘေ့စ်ကြီးများသည် နာရီပေါင်းများစွာ ကြာနိုင်ပါသည်။ အမှားမှတ်တမ်းများတွင် ပြထားသည့် အချိန် ခန့်မှန်းချက်များသည် မကြာခဏ မမှန်သောကြောင့် ယင်းအစား တိုးတက်မှု ရာခိုင်နှုန်းများကို အာရုံစိုက်ပါ။
မေး- ရပ်လို့ရမလား။ SQL Server ဒေတာမဆုံးရှုံးဘဲ ပြန်လည်ရယူနေစဉ်အတွင်း
A: ရပ်တန့်ခြင်း။ SQL Server ပြန်လည်ရယူနေစဉ်အတွင်း ယေဘုယျအားဖြင့် ဘေးကင်းသော်လည်း ဝန်ဆောင်မှုပြန်လည်စတင်သည့်အခါ ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်ကို အစမှပြန်လည်စတင်မည်ဖြစ်သည်။ ၎င်းသည် စုစုပေါင်းပြန်လည်ရယူချိန်ကို တိုးမြှင့်ပေးသော်လည်း မူလဖြစ်ရပ်အတွင်း ဖြစ်ပွားခဲ့သည်ထက် ကျော်လွန်၍ နောက်ထပ်ဒေတာဆုံးရှုံးမှုကို မဖြစ်စေပါ။
မေး- "In Recovery" နှင့် "Recovery Pending" အကြားကွာခြားချက်ကဘာလဲ။
A: "In Recovery" ဆိုသည်မှာ SQL Server ပြန်လည်ရယူခြင်းလုပ်ငန်းများကို တက်ကြွစွာ လုပ်ဆောင်နေပါသည်။ "ပြန်လည်ရယူခြင်းကို ဆိုင်းငံ့ထားသည်" သည် ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ် မစတင်နိုင်ခဲ့ကြောင်း၊ များသောအားဖြင့် ဖိုင်များပျောက်ဆုံးခြင်း၊ ခွင့်ပြုချက်မလုံလောက်ခြင်း သို့မဟုတ် ပြန်လည်ရယူခြင်းမလုပ်ဆောင်မီ ဖြေရှင်းရမည့် ဒစ်ခ်နေရာပြဿနာများကြောင့် ဖြစ်ကြောင်း ဖော်ပြသည်။
ကျွန်ုပ်တို့၏ တွင် "ပြန်လည်ရယူရန် စောင့်ဆိုင်းနေသည်" နှင့်ပတ်သက်သည့် နောက်ထပ်အသေးစိတ်အချက်အလက်များကို သင်ရှာဖွေနိုင်ပါသည်။ ပြည့်စုံသောလမ်းညွှန်.
မေး- REPAIR_ALLOW_DATA_LOSS ကိုအသုံးပြုပါက ဒေတာဆုံးရှုံးမည်လား။
A- ဟုတ်ကဲ့၊ REPAIR_ALLOW_DATA_LOSS သည် ဒေတာဘေ့စ်၏ ညီညွတ်မှုကို ပြန်လည်ရယူရန် ပျက်စီးနေသော ဒေတာကို ဖယ်ရှားနိုင်သည်။ ဒေတာဆုံးရှုံးမှုမရှိဘဲ ဖွဲ့စည်းတည်ဆောက်ပုံဆိုင်ရာ ပြဿနာများကို ဖြေရှင်းပေးသည့် REPAIR_REBUILD ကို အမြဲကြိုးစားပါ။ သင့်တွင် အခြားပြန်လည်ရယူရေးရွေးချယ်စရာများမရှိသည့်အခါ နောက်ဆုံးနည်းလမ်းအဖြစ် REPAIR_ALLOW_DATA_LOSS ကိုသာ အသုံးပြုပါ။
မေး- ဒေတာဘေ့စ်တစ်ခု ပြန်လည်ရယူနေစဉ်အတွင်း အခြားဒေတာဘေ့စ်များကို ကျွန်ုပ်ဝင်ရောက်နိုင်ပါသလား။
A: ဟုတ်တယ်၊ တခြားဒေတာဘေ့စ်တွေက အတူတူပါပဲ။ SQL Server ပြန်လည်ရယူနေစဉ်အတွင်း ဥပမာအား ဆက်လက်အသုံးပြုနိုင်ပါသည်။ ပြန်လည်ရယူခြင်းလုပ်ဆောင်နေသည့် ဒေတာဘေ့စ်ကိုသာ မရနိုင်ပါ။ သို့သော်လည်း ပြန်လည်ရယူခြင်းလုပ်ငန်းများသည် ဆာဗာတစ်ခုလုံး၏ စွမ်းဆောင်ရည်အပေါ် သက်ရောက်မှုရှိနိုင်သည်။
မေး- ဒေတာဘေ့စ်တစ်ခုအား ပြန်လည်ရယူခြင်းမုဒ်တွင် အဘယ်အရာက ပိတ်မိစေသနည်း။
A- သာမန်အကြောင်းရင်းများတွင် NORECOVERY ကို အသုံးပြု၍ ပြန်လည်ရယူခြင်းလုပ်ငန်း မပြီးပြတ်ခြင်း၊ အလွန်အကျွံ Virtual Log Files (VLFs)၊ ကြီးမားသော အာမခံချက်မရှိသော ငွေပေးငွေယူများ၊ ဒေတာဘေ့စ်ပျက်စီးခြင်း၊ ဒစ်ခ်နေရာမလုံလောက်ခြင်းနှင့် ဟာ့ဒ်ဝဲပြဿနာများ။ အလိုအလျောက်ပိတ်ခြင်း ဖွင့်ထားသော ဒေတာဘေ့စ်များသည် ပြန်လည်ရယူခြင်းသို့ အဆက်မပြတ် ဝင်ရောက်နေပုံပေါ်နိုင်သည်။
မေး- ပြန်လည်ရယူခြင်းသည် တိုးတက်မှု သို့မဟုတ် ရပ်တန့်နေခြင်းဖြစ်မဖြစ် မည်သို့သိနိုင်မည်နည်း။
A: စောင့်ကြည့်ပါ။ SQL Server ပြီးစီးမှုရာခိုင်နှုန်းကိုပြသသည့် ပြန်လည်ရယူမှုတိုးတက်မှု မက်ဆေ့ချ်များအတွက် အမှားမှတ်တမ်းများ။ အသက်ဝင်သော DB STARTUP command များရှိမရှိ စစ်ဆေးရန် sys.dm_exec_requests ကို အသုံးပြုပါ။ ရာခိုင်နှုန်းများ အချိန်နှင့်အမျှ တိုးလာပါက ပြန်လည်ရယူမှု တိုးတက်နေပါသည်။ နာရီအနည်းငယ်ကြာအောင် မှတ်တမ်းအသစ်များ မထည့်သွင်းခြင်းသည် လုပ်ငန်းစဉ်တွင် ရပ်တန့်နေကြောင်း ညွှန်ပြနေနိုင်သည်။
မေး- ပြန်လည်စတင်ရန် ဘေးကင်းပါသလား။ SQL Server ပြန်လည်ထူထောင်ရေးကာလအတွင်း ဝန်ဆောင်မှုပေးပါသလား။
A: ပြန်လည်စတင်ခြင်းသည် ဘေးကင်းသော်လည်း ဂရုတစိုက်အသုံးပြုသင့်သည်။ ၎င်းသည် ပြန်လည်ရယူခြင်းကို အစမှ ပြန်လည်စတင်မည်ဖြစ်ပြီး ပြန်လည်ရယူချိန်ကို နှစ်ဆတိုးစေနိုင်သည်။ ပြန်လည်ရယူခြင်းသည် နာရီပေါင်းများစွာ တိုးတက်မှုမရှိဘဲ လုံးဝရပ်တန့်နေပုံရပါက သို့မဟုတ် လုပ်ငန်းစဉ်သည် အမှန်တကယ် ရပ်တန့်နေသည်ဟု သင်သံသယရှိပါကသာ ပြန်လည်စတင်ပါ။
မေး- AUTO CLOSE နှင့် recovery mode အကြား ကွာခြားချက်မှာ အဘယ်နည်း။
A- AUTO CLOSE သည် ချိတ်ဆက်မှုများမရှိသည့်အခါ ဒေတာဘေ့စ်များကို အလိုအလျောက်ပိတ်ပြီး ချိတ်ဆက်မှုအသစ်အတွက် ၎င်းတို့ကို ပြန်လည်ဖွင့်ပါ။ ဤထပ်ခါတလဲလဲဖွင့်ခြင်းသည် အချိန်တိုင်းတွင် ပြန်လည်ရယူခြင်းလုပ်ငန်းစဉ်အကျဉ်းကို အစပျိုးစေပြီး ဒေတာဘေ့စ်သည် အဆက်မပြတ်ပြန်လည်ရယူနေပုံပေါ်သည်။ AUTO CLOSE ကို ပိတ်ခြင်းသည် ဤပြဿနာကို ဖြေရှင်းပေးပါသည်။
မေး- ငွေပေးငွေယူမှတ်တမ်း မိတ္တူများသည် ပြန်လည်ရယူစဉ်တွင် ကူညီနိုင်ပါသလား။
A: Log drive ပြည့်နေပါက Transaction log backup များသည် log နေရာလွတ်များ ရရှိစေနိုင်ပြီး recovery ကို ဆက်လက်လုပ်ဆောင်နိုင်စေပါသည်။ သို့သော် လက်ရှိ recovery mode တွင်ရှိသော database ၏ log ကို backup လုပ်၍မရပါ။ Log backup များသည် ကာကွယ်ခြင်းနှင့် ပြန်လည်ရယူပြီးနောက် ပြုပြင်ထိန်းသိမ်းမှုအတွက် ပိုမိုအသုံးဝင်ပါသည်။
မေး- Microsoft Support ကို ဘယ်အချိန်မှာ ဆက်သွယ်ရမလဲ။
A- သင်သံသယရှိသည့်အခါတွင် ထည့်သွင်းထားသော ပြန်လည်ရယူရေးနည်းလမ်းများ ပျက်ကွက်သည့် အရေးကြီးသော ထုတ်လုပ်မှုစနစ်များအတွက် Microsoft Support ကို ဆက်သွယ်ပါ။ SQL Server ရှုပ်ထွေးသောအမြဲတမ်းဖွင့်ခြင်း သို့မဟုတ် အစုလိုက်အပြုံလိုက်အခြေအနေများအတွက် ဆော့ဖ်ဝဲလ်အမှားအယွင်းများ သို့မဟုတ် လုပ်ငန်းပတ်ဝန်းကျင်များတွင် အာမခံချက်ရှိသော ဒေတာပြန်လည်ရယူရန် အချိန်အနည်းငယ်သာလိုအပ်သည့်အခါ။
မေး- ဒေတာဘေ့စ်များကို ပြန်လည်ရယူခြင်းတွင် ပိတ်မိနေခြင်းကို မည်သို့တားဆီးနိုင်မည်နည်း။
A- ပုံမှန်ပြည့်ပြည့်စုံစုံနှင့် မှတ်တမ်းအရန်များကို အကောင်အထည်ဖော်ပါ၊ VLF အရေအတွက်များကို စောင့်ကြည့်စီမံပါ၊ လုံလောက်သောဒစ်နေရာကိုသေချာစေရန်၊ သင့်လျော်သောပိတ်ခြင်းလုပ်ငန်းစဉ်များကိုအသုံးပြုပါ၊ ဟာ့ဒ်ဝဲယုံကြည်စိတ်ချရမှုကို ထိန်းသိမ်းပါ၊ ထုတ်လုပ်မှုဒေတာဘေ့စ်များတွင် AUTO CLOSE ကိုပိတ်ပါ၊ နှင့် အကျင့်ပျက်ခြစားမှုကိုစောစီးစွာသိရှိရန် ပုံမှန် DBCC CHECKDB လုပ်ဆောင်ချက်များကို လုပ်ဆောင်ပါ။
မေး- VLF တွေက ဘာတွေလဲ၊ ဘာကြောင့် ပြန်လည်ထူထောင်ရေးကို ထိခိုက်စေတာလဲ။
A- Virtual Log Files (VLFs) များသည် ငွေပေးငွေယူ မှတ်တမ်းဖိုင်များအတွင်းရှိ အတွင်းပိုင်း အပိုင်းများ ဖြစ်ပါသည်။ VLF များလွန်း (1,000 ကျော်) သည် ပြန်လည်ရယူရန် သိသိသာသာနှေးကွေးနေသောကြောင့်ဖြစ်သည်။ SQL Server တစ်ခုချင်းစီကို စီမံဆောင်ရွက်ရမည်။ သင့်လျော်သော မှတ်တမ်းဖိုင်အရွယ်အစားနှင့် ကြီးထွားမှုဆက်တင်များသည် အကောင်းဆုံး VLF အရေအတွက်များကို ထိန်းသိမ်းရန် ကူညီပေးသည်။
မေး- ဒေတာဘေ့စ်တစ်ခု ပြန်လည်ရယူနေချိန်တွင် အရန်သိမ်းဆည်းမှုမှ ပြန်လည်ရယူနိုင်ပါသလား။
A- ပြန်လည်ရယူခြင်းမုဒ်တွင် လက်ရှိဒေတာဘေ့စ်ကို သင်ပြန်လည်ရယူ၍မရပါ။ ပြန်လည်ရယူခြင်းပြီးမြောက်ရန် စောင့်ဆိုင်းရမည်ဖြစ်ပြီး ၎င်းကို ရပ်တန့်ပါ။ SQL Server ဝန်ဆောင်မှု၊ သို့မဟုတ် မတူညီသော ဒေတာဘေ့စ်အမည်သို့ ပြန်လည်ရယူပါ။ အရေးပေါ်အခြေအနေများအတွက်၊ ပြန်လည်ရယူခြင်းပြဿနာများကို ဖြေရှင်းပြီးသည်နှင့် ၎င်းကို ဒေတာဘေ့စ်အမည်အသစ်သို့ ပြန်လည်ထည့်သွင်းရန် စဉ်းစားပါ။
17. နိဂုံးနှင့် နောက်အဆင့်များ
17.1 သော့ချက်ဖြေရှင်းချက်များ၏ အကျဉ်းချုပ်
ဘယ်အချိန်မှာသင့်ရဲ့ SQL Server ဒေတာဘေ့စ်သည် ပြန်လည်ရယူနေသည်၊ အောက်ပါနည်းလမ်းများဖြင့် စတင်ပါ-
- အမှားအယွင်းမှတ်တမ်းများကို စစ်ဆေးပြီး တိုးတက်မှုကို စောင့်ကြည့်ပါ။
- တိုးတက်မှု တည်ငြိမ်ပါက သဘာဝအတိုင်း ပြီးစီးရန် စောင့်ပါ။
- ပြီးပြည့်စုံသော ပြန်လည်ရယူခြင်းအတွက် RESTORE WITH RECOVERY ကိုသုံးပါ။
- ငွေပေးငွေယူ မှတ်တမ်းပြဿနာများကို ဖြေရှင်းပါ။
- DBCC CHECKDB သို့မဟုတ် အကျင့်ပျက်ခြစားမှုအတွက် ပရော်ဖက်ရှင်နယ် ကိရိယာများကို ဖွင့်ပါ။
- ပြင်းထန်သောကိစ္စများအတွက် အရန်သိမ်းဆည်းခြင်းကို ထည့်သွင်းစဉ်းစားပါ။
အများဆုံး SQL Server ပြန်လည်ထူထောင်ရေးအခြေအနေများတွင် db သည် ဤသက်သေပြနည်းလမ်းများကို အသုံးပြု၍ နာရီပိုင်းအတွင်း ဖြေရှင်းနိုင်သည်။ ရှုပ်ထွေးသောအခြေအနေများအတွက်၊ အဆင့်မြင့်နည်းပညာများ သို့မဟုတ် ပရော်ဖက်ရှင်နယ်ကိရိယာများကို အသုံးပြုရန် တုံ့ဆိုင်းမနေပါနှင့်။
17.2 ထပ်လောင်းအရင်းအမြစ်များ
နောက်ထပ်အကူအညီအတွက်-
- Microsoft က SQL Server မှတ်တမ်း
- SQL Server လူထုဖိုရမ်များ
- ဒေတာဘေ့စ် စီမံခန့်ခွဲမှု ဘလော့ဂ်များနှင့် နည်းပညာဆိုင်ရာ အရင်းအမြစ်များ
- ပရော်ဖက်ရှင်နယ်ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်းဝန်ဆောင်မှုများ
ပုံမှန်ပြုပြင်ထိန်းသိမ်းမှုနှင့် စောင့်ကြည့်ခြင်းသည် ပြန်လည်ရယူခြင်းပြဿနာအများစုကို ကာကွယ်ပေးသည်။ ပြန်လည်ရယူခြင်းပြဿနာများတွင် MS SQL နောင်တွင်ဖြစ်ပွားခြင်းကို လျှော့ချရန် ဤလမ်းညွှန်ချက်တွင် ဖော်ပြထားသော ကာကွယ်တားဆီးရေးလုပ်ငန်းစဉ်များကို အကောင်အထည်ဖော်ပါ။
အာဘော်အကြောင်း
Yuan Sheng 10 နှစ်အထက်အတွေ့အကြုံရှိသောအကြီးတန်းဒေတာဘေ့စစီမံခန့်ခွဲသူ (DBA) SQL Server ပတ်ဝန်းကျင်နှင့် လုပ်ငန်းဒေတာဘေ့စ်စီမံခန့်ခွဲမှု။ သူသည် ဘဏ္ဍာရေးဝန်ဆောင်မှုများ၊ ကျန်းမာရေးစောင့်ရှောက်မှုနှင့် ကုန်ထုတ်လုပ်ငန်းအဖွဲ့အစည်းများရှိ ရာနှင့်ချီသော ဒေတာဘေ့စ်ပြန်လည်ရယူရေးအခြေအနေများကို အောင်မြင်စွာဖြေရှင်းနိုင်ခဲ့သည်။
Yuan သည် အထူးပြုသည်။ SQL Server ဒေတာဘေ့စ်ပြန်လည်ရယူခြင်း၊ မြင့်မားသောရရှိနိုင်မှုဖြေရှင်းချက်များနှင့် စွမ်းဆောင်ရည် ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်း။ ၎င်း၏ကျယ်ပြန့်သောလက်တွေ့အတွေ့အကြုံတွင် multi-terabyte ဒေတာဘေ့စ်များကိုစီမံခန့်ခွဲခြင်း၊ Always On Availability Groups များကိုအကောင်အထည်ဖော်ခြင်းနှင့် မစ်ရှင်အရေးပါသောစီးပွားရေးစနစ်များအတွက် အလိုအလျောက်အရန်ကူးခြင်းနှင့် ပြန်လည်ရယူခြင်းမဟာဗျူဟာများ ဖော်ဆောင်ခြင်းတို့ပါဝင်သည်။
သူ၏ နည်းပညာကျွမ်းကျင်မှုနှင့် လက်တွေ့ကျသောချဉ်းကပ်မှုမှတစ်ဆင့် Yuan သည် ဒေတာဘေ့စ်စီမံခန့်ခွဲသူများနှင့် အိုင်တီပညာရှင်များ၏ရှုပ်ထွေးမှုကို ဖြေရှင်းရာတွင် အထောက်အကူဖြစ်စေမည့် ပြည့်စုံသောလမ်းညွှန်ချက်များကို ဖန်တီးရန် အာရုံစိုက်ထားသည်။ SQL Server စိန်ခေါ်မှုများကို ထိထိရောက်ရောက် သူသည် နောက်ဆုံးပေါ်နှင့် လက်ရှိရှိနေပါသည်။ SQL Server ထုတ်ဝေမှုများနှင့် Microsoft ၏ တိုးတက်ပြောင်းလဲနေသော ဒေတာဘေ့စ်နည်းပညာများ၊ သူ၏ အကြံပြုချက်များသည် လက်တွေ့ကမ္ဘာ၏ အကောင်းဆုံးအလေ့အကျင့်များကို ထင်ဟပ်ကြောင်း သေချာစေရန် ပြန်လည်ရယူခြင်းဆိုင်ရာ အခြေအနေများကို ပုံမှန်စမ်းသပ်နေသည်။
နှင့်ပတ်သက်သောမေးခွန်းများရှိသည်။ SQL Server ပြန်လည်ရယူခြင်း သို့မဟုတ် နောက်ထပ်ဒေတာဘေ့စ်ပြဿနာဖြေရှင်းခြင်းလမ်းညွှန်ချက် လိုအပ်ပါသလား။ ယွမ်က ကြိုဆိုပါတယ်။ အကြံပြုချက်များနှင့် အကြံပြုချက်များ ဤနည်းပညာဆိုင်ရာ အရင်းအမြစ်များ တိုးတက်စေရန်။









