日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
如何重置被保護(hù)的數(shù)據(jù)庫(kù)?(重置被保護(hù)數(shù)據(jù)庫(kù))

隨著互聯(lián)網(wǎng)和云計(jì)算的快速發(fā)展,數(shù)據(jù)庫(kù)已成為企業(yè)和個(gè)人存儲(chǔ)和處理數(shù)據(jù)的重要工具。然而,隨著數(shù)據(jù)泄露事件和黑客攻擊的不斷增多,安全問(wèn)題也成為數(shù)據(jù)管理面臨的嚴(yán)峻挑戰(zhàn)。許多數(shù)據(jù)庫(kù)采取了不同的安全措施保護(hù)數(shù)據(jù)安全,如訪問(wèn)控制、加密、備份等。在這種背景下,當(dāng)數(shù)據(jù)庫(kù)遇到被保護(hù)的情況,如何重置被保護(hù)的數(shù)據(jù)庫(kù)成為了一項(xiàng)重要的技能。

1.了解賬戶(hù)權(quán)限

在重置被保護(hù)的數(shù)據(jù)庫(kù)之前,首先需要了解當(dāng)前賬戶(hù)的權(quán)限。因?yàn)橛行?shù)據(jù)庫(kù)可能對(duì)特定操作有限制,比如創(chuàng)建新數(shù)據(jù)庫(kù)、備份數(shù)據(jù)等操作。因此,在重置之前,我們需要確認(rèn)當(dāng)前賬戶(hù)是否有足夠的權(quán)限執(zhí)行我們計(jì)劃中的操作。如果沒(méi)有足夠的權(quán)限,我們需要通過(guò)管理員賬戶(hù)或其他有權(quán)限的賬戶(hù)來(lái)進(jìn)行操作。

2.備份

在重置被保護(hù)的數(shù)據(jù)庫(kù)之前,必須先備份所有的數(shù)據(jù)和日志文件。備份可以幫助我們?cè)诓僮鲾?shù)據(jù)庫(kù)時(shí)防止數(shù)據(jù)丟失或數(shù)據(jù)庫(kù)損壞。因此,注意備份數(shù)據(jù)庫(kù)信息是重置前必須考慮到的。

3.關(guān)閉數(shù)據(jù)庫(kù)

在開(kāi)始重置被保護(hù)的數(shù)據(jù)庫(kù)之前,必須先關(guān)閉所有數(shù)據(jù)庫(kù)進(jìn)程。關(guān)閉數(shù)據(jù)庫(kù)可以減少損壞的風(fēng)險(xiǎn),并確保重置過(guò)程中的數(shù)據(jù)一致性。關(guān)閉數(shù)據(jù)庫(kù)后,我們進(jìn)行重置的操作將無(wú)法訪問(wèn)或損壞當(dāng)前數(shù)據(jù),更大化地保護(hù)了我們的數(shù)據(jù)安全。

4.刪除舊版本的數(shù)據(jù)庫(kù)

刪除舊版本的數(shù)據(jù)庫(kù)可以釋放磁盤(pán)空間,并避免出現(xiàn)意外的訪問(wèn)和更改。我們可以通過(guò)SQL命令行、SQL Server Management Studio(SS)等工具來(lái)刪除舊版本的數(shù)據(jù)庫(kù),并確保刪除的數(shù)據(jù)庫(kù)不會(huì)影響其他操作,如備份和升級(jí)。

5.清空數(shù)據(jù)庫(kù)

在刪除舊版本的數(shù)據(jù)庫(kù)后,需要清空新數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)。我們可以使用SQL命令行、SQL Server Management Studio(SS)等工具來(lái)清空數(shù)據(jù)庫(kù)。此處要注意,清空數(shù)據(jù)庫(kù)后將無(wú)法恢復(fù)任何數(shù)據(jù),應(yīng)謹(jǐn)慎操作。

6.重建數(shù)據(jù)庫(kù)

在清空數(shù)據(jù)庫(kù)后,需要使用 SQL 命令行、SS 等工具來(lái)重建數(shù)據(jù)庫(kù)。在這一步中,我們可以指定新數(shù)據(jù)庫(kù)的名稱(chēng)、大小、數(shù)據(jù)類(lèi)型等信息。這里,我們可以使用之前備份的數(shù)據(jù)進(jìn)行恢復(fù),也可以開(kāi)始一個(gè)新的、全新的數(shù)據(jù)庫(kù)。

7.恢復(fù)備份文件

一旦刪除了舊版本的數(shù)據(jù)庫(kù)并清除了數(shù)據(jù)庫(kù),我們就可以恢復(fù)之前備份的數(shù)據(jù)。可以通過(guò)使用 SQL Server 或 SS 恢復(fù)備份文件,還可以使用其他數(shù)據(jù)庫(kù)恢復(fù)工具。 確?;謴?fù)的數(shù)據(jù)和備份的數(shù)據(jù)是同一版本,以確保數(shù)據(jù)的一致性。

8.測(cè)試新數(shù)據(jù)庫(kù)

在恢復(fù)備份文件后,我們需要測(cè)試所有新數(shù)據(jù)庫(kù)以確保它們正常運(yùn)行。測(cè)試是否能夠正確地執(zhí)行所有操作,檢查所有的權(quán)限和配置,確保數(shù)據(jù)庫(kù)可被安全地使用。

在這之后,你就可以順利地完成了一次數(shù)據(jù)庫(kù)的重置,并且可以在之后完成其他需要的操作。對(duì)于每一個(gè)處理數(shù)據(jù)文件,良好的安全措施是非常重要的。不管是個(gè)人還是公司,您可以依靠明智的數(shù)據(jù)管理來(lái)保護(hù)您的數(shù)據(jù),抵御潛在的網(wǎng)絡(luò)攻擊。

相關(guān)問(wèn)題拓展閱讀:

  • Oracle數(shù)據(jù)庫(kù)的備份及恢復(fù)策略研究
  • sql2023數(shù)據(jù)庫(kù)緊急模式如何恢復(fù)
  • 如何解決無(wú)法打開(kāi)數(shù)據(jù)庫(kù),恢復(fù)操作已將數(shù)據(jù)標(biāo)記為suspect。

Oracle數(shù)據(jù)庫(kù)的備份及恢復(fù)策略研究

多工聯(lián)機(jī)重作日志文件

  每個(gè)數(shù)據(jù)庫(kù)實(shí)例都有其自己的聯(lián)機(jī)重作日志組 在操作數(shù)據(jù)庫(kù)時(shí) Oracle首先將數(shù)據(jù)庫(kù)的全部改變保存在重作日志緩沖區(qū)中 隨后日志記錄器進(jìn)程(LGWR)將數(shù)據(jù)從系統(tǒng)共用區(qū)SGA(System Global Area)的重作日志緩沖區(qū)寫(xiě)機(jī)重作日志文件 在磁盤(pán)崩潰或?qū)嵗r(shí) 可以通過(guò)與之相關(guān)的聯(lián)機(jī)重作日志來(lái)保護(hù)數(shù)據(jù)庫(kù) 將損失降至更低 但Oracle在默認(rèn)的方式下只創(chuàng)建一組重作日志文件(每一組只有一個(gè)項(xiàng)目文件) 為了減少丟失這些重要的重作日志文件的危險(xiǎn) 因此需要對(duì)其進(jìn)行鏡像拷貝

  在Oracle級(jí)多工聯(lián)機(jī)重作日志文件 即增加多個(gè)文件到每個(gè)組以便鏡像數(shù)據(jù) 這樣I/O故障或?qū)憗G失只損壞一個(gè)拷貝 從而保證了LGWR后臺(tái)進(jìn)程至少能夠向一個(gè)成員寫(xiě)入信息 數(shù)據(jù)庫(kù)仍然可以繼續(xù)運(yùn)行 同時(shí)應(yīng)保證日志組的成員不應(yīng)駐存在同一物理設(shè)備上 因?yàn)檫@將削弱多重日志文件的作用

  

鏡像拷貝控制文件

  控制文件描述通用的數(shù)據(jù)庫(kù)結(jié)構(gòu) 它存儲(chǔ)了大量數(shù)據(jù)庫(kù)狀態(tài)信息 包括物理結(jié)構(gòu)和聯(lián)機(jī)重作日志文件在當(dāng)時(shí)的名稱(chēng) 位置 狀態(tài) 控制文件在數(shù)據(jù)庫(kù)啟動(dòng)時(shí)被Oracle實(shí)例讀取 保持打開(kāi)并隨著操作而文件內(nèi)容更新 直到實(shí)例關(guān)閉為止 在它打開(kāi)的過(guò)程中能夠同步需要恢復(fù)的信息 包括檢查點(diǎn)信息 因此若損壞或丟失了控制文件 Oracle將不能繼續(xù)工作 因此應(yīng)在系統(tǒng)中保持控制文件的多個(gè)拷貝 且這些拷貝應(yīng)置于安裝于不同磁盤(pán)控制器下的不同磁盤(pán)設(shè)備中

  由于Oracle沒(méi)有提供對(duì)控制文件多工的完整支持 因此應(yīng)在對(duì)控制文件使用操作系統(tǒng)或硬件鏡像 即在修改初始化文件的control_files參數(shù)后重新啟動(dòng)數(shù)據(jù)庫(kù)前 應(yīng)將控制文件復(fù)制到定義的新位置 否則數(shù)據(jù)庫(kù)啟動(dòng)時(shí)將會(huì)出錯(cuò)

  

激活歸檔進(jìn)程

  當(dāng)數(shù)據(jù)庫(kù)運(yùn)行于NOARCHIVELOG模式下時(shí) 只能在完全關(guān)閉數(shù)據(jù)庫(kù)后進(jìn)行數(shù)據(jù)庫(kù)的一致備份 并且同時(shí)禁用了聯(lián)機(jī)重作日志的存檔 這樣在Oracle實(shí)例失敗時(shí)只能將數(shù)據(jù)庫(kù)修復(fù)到最近的完整數(shù)據(jù)庫(kù)備份時(shí)的那一點(diǎn)上 不能在失效點(diǎn)處對(duì)實(shí)例進(jìn)行恢復(fù) 而在ARCHIVELOG模式下 數(shù)據(jù)庫(kù)不僅可以進(jìn)行一致備份 還可以在數(shù)據(jù)庫(kù)打開(kāi)的情況下進(jìn)行聯(lián)機(jī)備份 通過(guò)數(shù)據(jù)庫(kù)的備份和聯(lián)機(jī)與存檔的重作日志文件 用戶(hù)可以恢復(fù)所有已提交的事務(wù) 并允許將數(shù)據(jù)庫(kù)恢復(fù)到指定的時(shí)間 SCN或日志系列號(hào)處 增大了恢復(fù)的靈活性 減少了故障時(shí)的數(shù)據(jù)丟失 因此數(shù)據(jù)庫(kù)應(yīng)運(yùn)行于ARCHIVELOG模式

  在ARCHIVELOG模式下為了防止文件損壞和介質(zhì)故障 應(yīng)把日志歸檔到不同的磁盤(pán)上 這可以通過(guò)在初始化文件中為歸檔重作日志指定多個(gè)目標(biāo)實(shí)現(xiàn)

  

數(shù)據(jù)庫(kù)實(shí)施較大改變時(shí)備份

  因?yàn)榭刂莆募斜4媪藬?shù)據(jù)庫(kù)的模式結(jié)構(gòu)信息 因此在對(duì)數(shù)據(jù)庫(kù)進(jìn)行較大改變(包括改變表結(jié)構(gòu) 增加 刪除日志文件或數(shù)據(jù)文件等)時(shí)應(yīng)立即備份控制文件及相應(yīng)的數(shù)據(jù)文件

  

使用RESETLOGS選項(xiàng)打開(kāi)數(shù)據(jù)庫(kù)后進(jìn)行備份

  在以RESETLOGS選項(xiàng)打開(kāi)數(shù)據(jù)庫(kù)后 應(yīng)對(duì)整個(gè)數(shù)據(jù)庫(kù)進(jìn)行脫機(jī)或聯(lián)機(jī)的備份 否則將不能恢復(fù)重置日志后的改變

  當(dāng)以RESETLOGS選項(xiàng)打開(kāi)數(shù)據(jù)庫(kù)時(shí) Oracle將拋棄恢復(fù)中沒(méi)有應(yīng)用的重復(fù)信息 并確保永遠(yuǎn)不再運(yùn)用 同時(shí)還將初始化控制文件中關(guān)于聯(lián)機(jī)日志和重作線程的信息 清除聯(lián)機(jī)日志中的內(nèi)容 因此 RESETLOGS前的歸檔日志的序列號(hào)將與RESETLOGS后的Oracle控制文件的要求值不相符(備份文件中的檢查點(diǎn)比控制文件中的檢查點(diǎn)舊) 即在恢復(fù)中不能應(yīng)用以前的歸檔日志文件 從而導(dǎo)致RESETLOGS操作之前的備份在新形體中無(wú)用

  

避免備份聯(lián)機(jī)重作日志文件

  由于文中提出了多工聯(lián)機(jī)重作日志文件且數(shù)據(jù)庫(kù)運(yùn)行于ARCHIVELOG模式 ARCH進(jìn)程能夠?qū)⒙?lián)機(jī)重作日志歸檔 因此不必對(duì)其進(jìn)行備份 若用備份的聯(lián)機(jī)重作日志文件重建它 可能會(huì)引起日志文件序列號(hào)的混亂 從而破壞數(shù)據(jù)庫(kù) 得到適得其反的結(jié)果

  

重置聯(lián)機(jī)日志

  在進(jìn)行了不完全恢復(fù)或用備份控制文件進(jìn)行恢復(fù)后 應(yīng)重置聯(lián)機(jī)日志

  為了確保數(shù)據(jù)庫(kù)的一致性 必須保證在恢復(fù)后所有數(shù)據(jù)文件都恢復(fù)到同一個(gè)時(shí)間點(diǎn) 但不完全恢復(fù)可能導(dǎo)致數(shù)據(jù)文件中具有一個(gè)與其它文件不同的檢查點(diǎn) 導(dǎo)致數(shù)據(jù)庫(kù)的一致性受到破壞 同樣 備份的控制文件中保存的SCN和計(jì)數(shù)器與當(dāng)前日志文件中的值可能不同 從而也破壞了數(shù)據(jù)庫(kù)的一致性 因此應(yīng)在進(jìn)行完上述兩項(xiàng)操作后重置聯(lián)機(jī)日志

  

數(shù)據(jù)庫(kù)的邏輯備份

  以上所述備份都為物理備份 是實(shí)際物理數(shù)據(jù)庫(kù)文件從一處拷貝到另一處的備份 除此之外還可使用Oracle提供的導(dǎo)出實(shí)用程序進(jìn)行數(shù)據(jù)庫(kù)的邏輯備份 Oracle同時(shí)還提供了相應(yīng)的導(dǎo)入實(shí)用程序重建邏輯備份中保存的信息

  邏輯備份只拷貝數(shù)據(jù)庫(kù)中的數(shù)據(jù) 而不記錄數(shù)據(jù)位置的備份過(guò)程 它利用SQL語(yǔ)句 從數(shù)據(jù)庫(kù)中導(dǎo)出數(shù)據(jù)到一個(gè)存放在合適位置的外部文件中 同時(shí)并可檢測(cè)到數(shù)據(jù)塊的損壞 因此可用其作為物理備份的補(bǔ)充

備份策略

  考慮到如今大部分信息系統(tǒng)每周的業(yè)務(wù)是 × 操作 因此采用聯(lián)機(jī)備份 否則可每隔一定時(shí)間進(jìn)行一次脫機(jī)備份

  應(yīng)用上述規(guī)則 可得出下述典型的備份策略

  ①鏡像拷貝重作日志文件

 ?、阽R像拷貝控制文件

 ?、奂せ顨w檔進(jìn)程 即以ARCHIVELOG模式操作數(shù)據(jù)庫(kù)

  ④每天進(jìn)行數(shù)據(jù)庫(kù)的部分聯(lián)機(jī)備份(每天進(jìn)行數(shù)據(jù)庫(kù)的完全熱備份將無(wú)畏地增加數(shù)據(jù)庫(kù)的負(fù)擔(dān)且沒(méi)有必要 同時(shí)也增加了數(shù)據(jù)庫(kù)恢復(fù)時(shí)的靈活性)

 ?、菝扛粢恢芑驇字苓M(jìn)行一次數(shù)據(jù)庫(kù)的邏輯備份

  

實(shí)際項(xiàng)目應(yīng)用

  當(dāng)數(shù)據(jù)庫(kù)中的文件達(dá)到一定數(shù)量后 DBA可能記不住該備份的文件的名或位置 因此 若能使備份過(guò)程自動(dòng)化可有效地減輕DBA的負(fù)擔(dān) 同時(shí)不會(huì)遺漏應(yīng)備份的文件 應(yīng)用自動(dòng)批處理文件及腳本文件可實(shí)現(xiàn)備份 恢復(fù)的自動(dòng)化 下面簡(jiǎn)介了在實(shí)際項(xiàng)目開(kāi)發(fā)中應(yīng)用本文所提出的自動(dòng)備份 恢復(fù)策略 通過(guò)實(shí)際應(yīng)用 證明了該策略的正確性和可行性

  ( )下述腳本實(shí)現(xiàn)聯(lián)機(jī)重作日志的多工

  connect 賬戶(hù)名/密碼    alter database ktgis add logfile member 日志文件的存儲(chǔ)位置 to group 聯(lián)機(jī)日志組號(hào);    shutdown immediate    startup pfile=初始化文件的存放位置 exclusive mount; 裝載數(shù)據(jù)庫(kù)且不打開(kāi)    alter database archivelog; 激活歸檔進(jìn)程    alter database open;    exit

 ?。?)下列VB代碼自動(dòng)建立聯(lián)機(jī)備份的批處理文件及相應(yīng)的腳本文件

  Set adoTmp = objConnect Execute( select tablespace_name from sys dba_data_files ) 得到數(shù)據(jù)庫(kù)中的表空間名    Dim lnum As Long    Dim lnum As Long    lNum = FreeFile    Open 自動(dòng)備份批處理文件路徑 For Binary As lNum    lnum = FreeFile    Open onlinebegin sql For Binary As lnum onlinebegin sql為設(shè)置表空間進(jìn)入熱備份模式的腳本文件文件名    lnum = FreeFile    Open onlineend sql For Binary As lnum onlinebegin sql為結(jié)束表空間熱備份模式的腳本文件文件名    strTmp = connect 賬戶(hù)名/密碼 & Chr( ) & Chr( )    Put lnum strTmp    strTmp = shutdown immediate & Chr( ) & Chr( )    Put lnum strTmp    strTmp = startup pfile=初始化文件的存放位置exclusive mount; & Chr( ) & Chr( )    Put lnum strTmp    strTmp = alter database archivelog; & Chr( ) & Chr( )    Put lnum strTmp    strTmp = alter database open; & Chr( ) & Chr( )    Put lnum strTmp    strTmp = connect 賬戶(hù)名/密碼 & Chr( ) & Chr( )    Put lnum strTmp    strTmp = Oracle服務(wù)管理器路徑 & @ & onlinebegin sql & Chr( ) & Chr( ) 在服務(wù)管理器中執(zhí)行腳本文件onlinebegin sql    Put lNum strTmp    Do While Not adoTmp EOF    Set adoTmp = objConnect Execute( select file_name from sys dba_data_files where tablespace_name= & adoTmp Fields( ) & ) 得到當(dāng)前表空間所對(duì)應(yīng)的所有數(shù)據(jù)文件名 通過(guò)循環(huán)即可得到所有表空間所對(duì)應(yīng)數(shù)據(jù)文件名 若只備份指定的表空間 可指定表空間名從而得到其對(duì)應(yīng)的物理數(shù)據(jù)文件    strTmp = alter tablespace & adoTmp Fields( ) & begin backup; & Chr( ) & Chr( ) 將表空間置于熱備份模式    Put lnum strTmp    strTmp = Oracle的ocopy exe工具全路徑 & adoTmp Fields( ) & & 備份文件存放路徑 & Chr( ) & Chr( )    Put lNum strTmp    strTmp = alter tablespace & adoTmp Fields( ) & end backup; & Chr( ) & Chr( ) 表空間恢復(fù)正常模式    Put lnum strTmp    adoTmp MoveNext    Loop    strTmp = Oracle服務(wù)管理器路徑 & @ & onlineend sql & Chr( ) & Chr( ) 在服務(wù)管理器中執(zhí)行腳本文件onlineend sql    Put lNum strTmp    strTmp = exit & Chr( ) & Chr( ) 退出服務(wù)管理器    Put lnum strTmp    strTmp = alter system switch logfile; & Chr( ) & Chr( ) 強(qiáng)制日志轉(zhuǎn)換 使Oracle創(chuàng)建一個(gè)歸檔日志文件    Put lnum strTmp    strTmp = exit & Chr( ) & Chr( )    Put lnum strTmp    Close    Set adoTmp = Nothing    Set adoTmp = Nothing

  運(yùn)行得到的自動(dòng)批處理文件 即可自動(dòng)進(jìn)行數(shù)據(jù)庫(kù)的聯(lián)機(jī)備份

  ( )在從備份中恢復(fù)數(shù)據(jù)文件后 執(zhí)行下列腳本將數(shù)據(jù)庫(kù)的恢復(fù)程序

  connect賬戶(hù)名/密碼    shutdown abort    startup mount pfile=初始化文件的存放位置; 裝載數(shù)據(jù)庫(kù)    set autorecovery on; 打開(kāi)自動(dòng)恢復(fù)    recover database;    alter database open; 打開(kāi)數(shù)據(jù)庫(kù)

  

結(jié)束語(yǔ)

lishixinzhi/Article/program/Oracle/202311/18527

sql2023數(shù)據(jù)庫(kù)緊急模式如何恢復(fù)

use master

go

exec sp_configure ‘a(chǎn)llow updates’,1 RECONFIGURE WITH OVERRIDE /* 打開(kāi)修改系統(tǒng)表的開(kāi)關(guān) */

go

update sysdatabases set status=32768 where name=’jiax’ /* 設(shè)置數(shù)據(jù)庫(kù)狀態(tài)*/

go

update sysdatabases set status=0 where name=’jiax’ /* 重置數(shù)據(jù)庫(kù)狀態(tài) */

go

exec sp_configure ‘a(chǎn)llow updates’,0 RECONFIGURE WITH OVERRIDE /* 關(guān)閉打開(kāi)修改系統(tǒng)表的開(kāi)關(guān) */

/*一條一條執(zhí)行語(yǔ)句,起作用的是set status=0那句,其中jiax是數(shù)據(jù)庫(kù)名字*/

如何解決無(wú)法打開(kāi)數(shù)據(jù)庫(kù),恢復(fù)操作已將數(shù)據(jù)標(biāo)記為suspect。

5. 釋放磁盤(pán)空間并且重新運(yùn)行恢復(fù)操作,按照下面的步驟收縮日志。

sp_resetstatus 關(guān)閉數(shù)據(jù)庫(kù)的置疑標(biāo)志,但是原封不動(dòng)地保持?jǐn)?shù)據(jù)庫(kù)的其它選項(xiàng)。

為從根本上解決這樣的問(wèn)題,你可以按下面的操作配置SQLSERVER:

a.如果不需要恢復(fù)到指定的時(shí)間點(diǎn),你可以將數(shù)據(jù)庫(kù)的恢復(fù)模式配置為簡(jiǎn)單,這樣

UPDATE,DELETE,SELECT就不會(huì)記錄日志,日志就不會(huì)增加的很大:

USE MASTER

GO

ALTER DATABASE DB_NAME SET RECOVERY SIMPLE

b.如果你的恢復(fù)模式是全部,你一定要配置日志字段收縮:

USE MASTER

GO

sp_dboption ‘databasename’,’trunc. log on chkpt.’,true

sp_dboption ‘databasename’,’autoshrink’,true

c.通過(guò)每日備份將日志收縮:

BACKUP DATABASE DATABASE_NAME TO BACKUP_DEVICES

BACKUP LOG DATABASE_NAME TO LOG_DEVICES

OR

BACKUP LOG DATABASE_NAME with truncate_only

**檢查日志的容量:DBCC SQLPERF (LOGSPACE) 這時(shí)日志并沒(méi)有收縮!

d.每天在備份數(shù)據(jù)庫(kù)完成之后,重新啟動(dòng)MS SQLSERVER SERVICE.

USE DATABASE_NAME

go

DBCC SHRINKFILE(2,truncateonly)

**檢查日志的容量:DBCC SQLPERF (LOGSPACE) 這時(shí)日志已經(jīng)收縮!

e.手動(dòng)快速收縮日志:

/ *run below script,you will shrink you database log files

immediately, in my experience,you need to run the script foror

minutes before stopping it manually */

use databasename

dbcc shrinkfile(2,notruncate)

dbcc shrinkfile(2,truncateonly)

create table t1(char1 char(4000))

go

declare @i int

select @i=0

while(1=1)

begin

while(@i

begin

INSERT INTO T1 VALUES (‘A’)

SELECT @I=@I+1

END

TRUNCATE table T1

BACKUP LOG youdatabasename with truncate_only

end

GO

注意 只有在您的主要支持提供者指導(dǎo)下或有疑難解答建議的做法時(shí),才可以使用

sp_resetstatus。否則,可能會(huì)損壞數(shù)據(jù)庫(kù)。

由于該過(guò)程修改了系統(tǒng)表,系統(tǒng)管理員必須在運(yùn)行 sp_resetstatus這個(gè)過(guò)程前,啟用系統(tǒng)表更新。要

啟 用更新,使用下面的過(guò)程:

USE master

GO

sp_configure ‘a(chǎn)llow updates’,

GO

RECONFIGURE WITH OVERRIDE

GO

過(guò)程創(chuàng)建后,立即禁用系統(tǒng)表更新:

sp_configure ‘a(chǎn)llow updates’,

GO

RECONFIGURE WITH OVERRIDE

GO

只有系統(tǒng)管理員才能執(zhí)行 sp_resetstatus。執(zhí)行該過(guò)程后,立即關(guān)閉 SQL Server。

SQL Server事務(wù)日志可能會(huì)被填滿(mǎn),這會(huì)阻止之后的數(shù)據(jù)庫(kù)操作,

包括UPDATE, DELETE, INSERT 和CHECKPOINT。

事務(wù)日志填滿(mǎn)會(huì)導(dǎo)致1105錯(cuò)誤:

Can’t allocate space for object syslogs in database dbname because

the logsegment is full。 If you ran out of space in syslogs, dump

the transaction log。 Otherwise use ALTER DATABASE or

sp_extendsegment to increase the size of the segment。

這種現(xiàn)象可能出現(xiàn)于任何一個(gè)數(shù)據(jù)庫(kù)中,包括Master和TempDB。一些難以預(yù)見(jiàn)的因素可能

消耗日志空間。 例如:

一個(gè)大型事務(wù), 尤其像批量數(shù)據(jù)更新、插入或刪除。

一個(gè)未提交的事務(wù)。

檢查點(diǎn)處理程序截除時(shí)所需的帶寬過(guò)大。

截除時(shí)超過(guò)閾值

上述各種條件互相作用的結(jié)果。

用于發(fā)布的標(biāo)記事務(wù)沒(méi)有被日志讀取程序讀走

下面是修復(fù)的步驟和收縮日志的步驟:

1.在命令提示符下運(yùn)行以下命令啟動(dòng) SQL Server:

SQLSERVER -f -m

備注:-m 開(kāi)關(guān)以單用戶(hù)模式啟動(dòng) SQL Server。在單用戶(hù)模式下,只能成功建立一個(gè)連接。

請(qǐng)注意是否有任何其他客戶(hù)機(jī)或服務(wù)可能會(huì)在您通過(guò) SQL Server 查詢(xún)分析器建立連接前使

用那個(gè)連接。

2. 重置置疑數(shù)據(jù)庫(kù)的狀態(tài)。

sp_resetstatus ‘database_name’

下面是結(jié)果集:

Database’database_name’status reset!

WARNING: You must reboot SQL Server prior to accessing this database!

3. 用 ALTER DATABASE 向數(shù)據(jù)庫(kù)添加一個(gè)數(shù)據(jù)文件或日志文件:

USE master

GO

CREATE DATABASE db_name ON

(

NAME = dbname_dat1,

FILENAME = ‘D:\MSSQL\Data\dbname_dat1.ndf’,

SIZE =MB,

FILEGROWTH = 50MB

)

GO

–更改該數(shù)據(jù)庫(kù)以添加一個(gè) 2GB 大小的新數(shù)據(jù)文件

ALTER DATABASE db_name

ADD FILE

(

NAME = dbname_dat2,

FILENAME = ‘F:\MSSQL\DATA\dbname_dat2.ndf’,

SIZE =MB,

FILEGROWTH = 50MB

)

GO

–更改該數(shù)據(jù)庫(kù)以添加一個(gè)1GB 大小的新日志文件

ALTER DATABASE db_name

ADD LOG FILE

( NAME = db_name_log2,

FILENAME = ‘F:\MSSQL\Data\db_name_log2.ldf’,

SIZE =MB,

FILEGROWTH = 20MB),

GO

4. 停止并重新啟動(dòng) SQL Server:

用新的數(shù)據(jù)文件或日志文件所提供的額外空間,SQL Server 應(yīng)該能完成數(shù)據(jù)庫(kù)的恢復(fù)。

如果 SQL Server 因?yàn)榇疟P(pán)可用空間不足,而不能完成數(shù)據(jù)庫(kù)的恢復(fù)

那么 SQL Server會(huì)返回錯(cuò)誤并且將 sysdatabases 中的 status 列設(shè)為置疑。

你可以看到在SQLSERVER 的ERROR LOG 和OS的應(yīng)用程序日志中應(yīng)該有1105的錯(cuò)誤信息:

關(guān)于重置被保護(hù)數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都創(chuàng)新互聯(lián)科技有限公司,是一家專(zhuān)注于互聯(lián)網(wǎng)、IDC服務(wù)、應(yīng)用軟件開(kāi)發(fā)、網(wǎng)站建設(shè)推廣的公司,為客戶(hù)提供互聯(lián)網(wǎng)基礎(chǔ)服務(wù)!
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡(jiǎn)單好用,價(jià)格厚道的香港/美國(guó)云服務(wù)器和獨(dú)立服務(wù)器。創(chuàng)新互聯(lián)——四川成都IDC機(jī)房服務(wù)器托管/機(jī)柜租用。為您精選優(yōu)質(zhì)idc數(shù)據(jù)中心機(jī)房租用、服務(wù)器托管、機(jī)柜租賃、大帶寬租用,高電服務(wù)器托管,算力服務(wù)器租用,可選線路電信、移動(dòng)、聯(lián)通機(jī)房等。


當(dāng)前名稱(chēng):如何重置被保護(hù)的數(shù)據(jù)庫(kù)?(重置被保護(hù)數(shù)據(jù)庫(kù))
URL分享:http://www.5511xx.com/article/dheodpe.html