2015-05-06 5 views
6

पर लटका है मैंने इस बारे में बहुत सारे शोध किए हैं।रिकवरी के साथ एसक्यूएल पुनर्स्थापना; 100%

मैं SQL सर्वर 2014 के साथ डेटाबेस पुनर्प्राप्त करने का प्रयास कर रहा हूं और यह 100% पर लटकता रहता है।

बहुत से लोग सुझाव देते हैं कि समाधान यह सुनिश्चित करना है कि आप रिकवरी विकल्प के साथ पुनर्स्थापित करें।

मैंने कोशिश की है और यह अभी भी 100% पर लटका है। मैं SSMS के माध्यम से संवाद की कोशिश की है पुनर्स्थापित और मैं निम्नलिखित एसक्यूएल वक्तव्य चल रहा प्रयास किया है:

USE [master] 
RESTORE DATABASE [MyDB] 
FROM DISK = N'C:\MyDB_backup_2015_05_05_010004_1506557.bak' 
WITH 
    FILE = 1, 
    MOVE N'MyDB_Data' TO N'F:\MSSQL\DATA\MyDB.mdf', 
    MOVE N'MyDB_Log' TO N'F:\MSSQL\DATA\MyDB_1.ldf', 
    NOUNLOAD, 
    REPLACE, 
    RECOVERY, 
    STATS = 2 
GO 

जब मैं के माध्यम से आदेश की स्थिति की जांच:

SELECT r.status, r.command, r.wait_type, r.percent_complete 
FROM sys.dm_exec_requests r 
WHERE r.command like '%restore%' or r.command like '%backup%' 

मैं:

status: suspended 
command: RESTORE DATABASE 
wait_type: BACKUPTHREAD 
percent_complete: 100 

मेरे पढ़ने से कौन सा तात्पर्य है कि रीस्टोर बैकअप को पूरा करने का इंतजार कर रहा है, लेकिन मेरी क्वेरी से sys.dm_exec_requests

पर कोई बैकअप आदेश वापस नहीं आया है

EDIT: इसे फिर से प्रयास करने के बाद और शुरुआत से रीस्टोर की प्रगति को देखने के लिए उपर्युक्त क्वेरी चलाने के बाद, मैं देख सकता हूं कि 'status_complete' मान लगातार बढ़ रहा है, इस तथ्य के बावजूद कि 'स्थिति' बनी हुई है 'निलंबित' और 'wait_type' 'बैकअपथ्रेड' के रूप में बनी हुई है।

तो इसे 'निलंबित' होने के बावजूद यह वास्तव में अभी भी पुनर्स्थापना कर रहा है।

तो मैं एक नुकसान में हूँ ...

किसी को भी किसी भी विचार या कैसे समस्या का निदान करने पर कोई सुझाव यहाँ क्या हो रहा है मिल गया?

चीयर्स!

+0

यह जानने के लिए कि कौन सा डीबी लंबित बैकअप है, 'sp_who' और' sp_who2' जांच सकते हैं? – Jaxedin

+0

sp_who या sp_who2 से कोई पंक्तियां नहीं हैं जिनमें एक cmd 'बैकअप' – JTech

+1

है, आपने कब तक प्रतीक्षा की है? आपकी लॉग फ़ाइल कितनी बड़ी है? इसमें कितने वीएलएफ हैं? बैकअप लेने के समय डेटाबेस की स्थिति क्या थी? क्या आपने ट्रेस ध्वज 3004 और 3014 के साथ प्रयास किया था? (देखें [यह पोस्ट] (http://www.rdx.com/Blog/dba_tips/2011/03/undocumented-trace-flags-inside-the-restore-process/)।) –

उत्तर

3

यह पता चला है के रूप में इस मुद्दे को पर्यावरण की दृष्टि से संबंधित था और बहुत सीधे आगे:

सबसे पहले, मैं से बैकअप लेने के लिए प्रयास कर रहा था एक गैर सिकुड़ वापस मूल डेटाबेस का संस्करण।

लॉग फ़ाइलों का आकार वास्तव में एक ज्ञात मुद्दा था, इसलिए हम आमतौर पर डेटाबेस के एक संक्षिप्त संस्करण से बैक अप लेते हैं।

इसलिए यदि किसी को भी ऐसी ही समस्या हो रही है, तो पहले डेटाबेस को कम करने की कोशिश कर रहा है और उसके बाद इसे बैक अप और पुनर्स्थापित करना है।

दूसरा, मैं USB3 पर बाहरी ड्राइव पर डेटाबेस बैकअप करने का प्रयास कर रहा था।

इसके अलावा, दिलचस्प बात यह है कि मैंने कामकाजी बहाली कमांड की प्रगति देखी और इसके साथ ही 'प्रतीक्षा_टाइप' 'बैकपथ्रेड' के साथ 'निलंबित' की स्थिति भी थी - भले ही यह अभी भी प्रगति कर रहा था (जैसा कि पूरा होने के प्रतिशत से स्पष्ट है cent_complete में) कॉलम! इसलिए मैं अभी भी किस बारे में thats के रूप में खो दिया हूँ ...

लेकिन कम से कम मैं अपने बैकअप अब :-)

1

बहाल कर सकते हैं मैं डीबी के आकार के कारण ही समस्या यह था। हालांकि बैकअप 9 एमबी दिखाता है, जब मैं SQL सर्वर प्रबंधन में डीबी पर राइट क्लिक करता हूं और गुणों का चयन करता हूं, तो दिखाया गया आकार 25 जीबी था! मैंने जो किया वह यह है कि मैंने डीबी को "सरल रिकवरी" में बदल दिया, लॉग फ़ाइल को कम किया, बैकअप दोबारा, और अब मैं पुनर्स्थापित कर सकता हूं।

+0

अगर कोई पहली बार शिंक कर रहा है: कार्य-> हटना ... –

संबंधित मुद्दे