使用dump transaction with no_log的危險(xiǎn)性說明
更新時(shí)間:2012年07月17日 15:14:57 作者:
在命令參考手冊(cè)中的dump transaction with no_log條目下,有一條警告信息告訴你,你應(yīng)該把這條命令作為沒有其它辦法時(shí)的最后一招才使用它
但是“最后一招”究竟是什么意思呢?當(dāng)你使用這條命令時(shí)會(huì)怎樣呢?那你應(yīng)使用哪條命令來(lái)代替它呢?最后,若這條命令如此有問題,為什么Sybase卻要提供它呢?
Sybase技術(shù)支持建議你定期的dump你的transaction log。你必須根據(jù)你的數(shù)據(jù)庫(kù)中記入日記的活動(dòng)的量的大小以及你的數(shù)據(jù)庫(kù)的大小來(lái)決定dump的方式。有些地方按月dump transaction;有些地方每夜dump transaction。
注意:若你正運(yùn)行SQL Server10.0,你可以用sp_thresholdaction在空間緊缺之前來(lái)自動(dòng)dump tran;另外,此時(shí)Backup Server會(huì)保證在dump進(jìn)行時(shí),任務(wù)不會(huì)被掛起。請(qǐng)?jiān)谀愕腟QL Server參考手冊(cè)中獲取更詳細(xì)的信息。這篇文章的剩余部分將適用于運(yùn)行系統(tǒng)10以前版本SQL Server的領(lǐng)域。
若你從未dump transaction過,transactionlog將最終會(huì)滿。 SQLServer使用log(日志)是出于恢復(fù)目的的。 當(dāng)log滿時(shí),服務(wù)器將停止事物的繼續(xù)進(jìn)行,因?yàn)榉?wù)器將不能將這些事物寫進(jìn)日志,而服務(wù)器不能運(yùn)行大多數(shù)的dump tran命令,因?yàn)镾QL Server也需在日志中記錄這些命令。
這就是為什么當(dāng)其它dump tran命令不能執(zhí)行時(shí)no_log可執(zhí)行的原因。但是想一下dump transaction with no_log被設(shè)計(jì)執(zhí)行的環(huán)境。所有對(duì)不做并發(fā)性檢查。
若你在對(duì)數(shù)據(jù)庫(kù)的修改發(fā)生時(shí)使用dump transaction with no_log,你就會(huì)冒整個(gè)數(shù)據(jù)庫(kù)崩潰的風(fēng)險(xiǎn)。在多數(shù)情況下,它們被反映成813或605錯(cuò)誤。為了在數(shù)據(jù)庫(kù)被修改時(shí),刪除transaction log中的不活躍部分可使用dump transaction with trancate_only。這條命令寫進(jìn)transaction log時(shí),并且它還做不要的并發(fā)性檢查。這兩條命令都有與其相關(guān)的警告,在命令參考手冊(cè)中會(huì)看到這些警告。請(qǐng)確保在使用其中任一條命令以前,你已理解這些警告和指示。 Syase提供dump transaction with no_log來(lái)處理某些非常緊迫的情況。為了盡量確保你的數(shù)據(jù)庫(kù)的一致性,你應(yīng)將其作為“最后一招”。
Sybase技術(shù)支持建議你定期的dump你的transaction log。你必須根據(jù)你的數(shù)據(jù)庫(kù)中記入日記的活動(dòng)的量的大小以及你的數(shù)據(jù)庫(kù)的大小來(lái)決定dump的方式。有些地方按月dump transaction;有些地方每夜dump transaction。
注意:若你正運(yùn)行SQL Server10.0,你可以用sp_thresholdaction在空間緊缺之前來(lái)自動(dòng)dump tran;另外,此時(shí)Backup Server會(huì)保證在dump進(jìn)行時(shí),任務(wù)不會(huì)被掛起。請(qǐng)?jiān)谀愕腟QL Server參考手冊(cè)中獲取更詳細(xì)的信息。這篇文章的剩余部分將適用于運(yùn)行系統(tǒng)10以前版本SQL Server的領(lǐng)域。
若你從未dump transaction過,transactionlog將最終會(huì)滿。 SQLServer使用log(日志)是出于恢復(fù)目的的。 當(dāng)log滿時(shí),服務(wù)器將停止事物的繼續(xù)進(jìn)行,因?yàn)榉?wù)器將不能將這些事物寫進(jìn)日志,而服務(wù)器不能運(yùn)行大多數(shù)的dump tran命令,因?yàn)镾QL Server也需在日志中記錄這些命令。
這就是為什么當(dāng)其它dump tran命令不能執(zhí)行時(shí)no_log可執(zhí)行的原因。但是想一下dump transaction with no_log被設(shè)計(jì)執(zhí)行的環(huán)境。所有對(duì)不做并發(fā)性檢查。
若你在對(duì)數(shù)據(jù)庫(kù)的修改發(fā)生時(shí)使用dump transaction with no_log,你就會(huì)冒整個(gè)數(shù)據(jù)庫(kù)崩潰的風(fēng)險(xiǎn)。在多數(shù)情況下,它們被反映成813或605錯(cuò)誤。為了在數(shù)據(jù)庫(kù)被修改時(shí),刪除transaction log中的不活躍部分可使用dump transaction with trancate_only。這條命令寫進(jìn)transaction log時(shí),并且它還做不要的并發(fā)性檢查。這兩條命令都有與其相關(guān)的警告,在命令參考手冊(cè)中會(huì)看到這些警告。請(qǐng)確保在使用其中任一條命令以前,你已理解這些警告和指示。 Syase提供dump transaction with no_log來(lái)處理某些非常緊迫的情況。為了盡量確保你的數(shù)據(jù)庫(kù)的一致性,你應(yīng)將其作為“最后一招”。
相關(guān)文章
IndexedDB瀏覽器內(nèi)建數(shù)據(jù)庫(kù)并行更新問題詳解
這篇文章主要為大家介紹了IndexedDB瀏覽器內(nèi)建數(shù)據(jù)庫(kù)并行更新問題詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-12-12SQLServer與Access常用SQL函數(shù)區(qū)別
SQLServer Access SQL函數(shù)2009-06-06dbeaver導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)簡(jiǎn)單圖文教程
DBeaver是一款適用于開發(fā)人員、數(shù)據(jù)庫(kù)管理員和分析師的多平臺(tái)、多數(shù)據(jù)庫(kù)管理工具,這篇文章主要給大家介紹了關(guān)于dbeaver導(dǎo)入導(dǎo)出數(shù)據(jù)庫(kù)的相關(guān)資料,需要的朋友可以參考下2024-01-01關(guān)于Navicat連接MySql數(shù)據(jù)庫(kù)慢的問題
這篇文章主要介紹了關(guān)于Navicat連接MySql數(shù)據(jù)庫(kù)慢的問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03TDSQL 安裝部署附圖的實(shí)現(xiàn)(圖文)
這篇文章主要介紹了TDSQL 安裝部署附圖的實(shí)現(xiàn)(圖文),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10快速解決openGauss數(shù)據(jù)庫(kù)pg_xlog爆滿問題
這篇文章主要介紹了openGauss數(shù)據(jù)庫(kù)pg_xlog爆滿問題解決,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04