當前位置:首頁 » 編程語言 » sqlserver參數配置
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sqlserver參數配置

發布時間: 2023-07-28 06:40:47

『壹』 sql server 參數設置

1首先你安裝sql的時候有個驗證方式,windows 和混合身份驗證,你必須的選擇混合,然後讓你設置SA密碼,如果你安裝的時候忘了,
你可以用企業管理器看到你LOCAL你的sql服務,點右鍵屬性在在安全性里看看是否選擇了sqlserver 和windows這個選選項,如果沒有選修改成這個,然後他會重新啟動一下服務,然後再有企業管理器進到你的資料庫里,找到資料庫下面有個安全性,裡面有個登陸,裡面有sa用戶,你右鍵屬性進可以進去修改密碼了

『貳』 sql server 屬性配置最大內存設為多少合適

SQL Server 使用內存有兩種情況:

第一種情況: 動態改變它的內存需求。
默認情況下,SQL Server 會依據可獲得的系統資源動態改變它的內存需求。如果 SQL Server 需要更多的內存,它會要求操作系統確定是否有空閑的物理內存可用,並使用可用的內存。若 SQL Server 不再需要當前分配給它的內存,它就將內存釋放給操作系統。當 SQL Server 動態使用內存時,它要求系統定期地檢測可用的物理內存數量。SQL Server 根據伺服器活動增大或收縮高速緩沖存儲器,以使可用物理內存保持在 4 MB 到 10 MB 之間。這就避免了系統進行換頁操作。
[也就是說,這種情況下SQL SERVER 本身不會使物理可用內存小於4M,如果比較長的時間內都小於4M的話,則要看一下是不是該伺服器上其它應用程序有問題]

第二種情況:限制使用內存
使用 set working set size 為sql server保留等於伺服器內存設置的物理內存空間。即使是sql server 進程此時是空閑的,系統也不會將 SQL Server 頁交換出去。
使用min server memory 保證sql server 使用的最小內存。SQL Server 啟動時不立即分配 min server memory 中所指定的內存量。但是,當內存使用由於客戶端負荷而達到該值後,SQL Server 將無法從已分配的緩沖池中釋放內存。
使用max server memory 則防止 SQL Server 使用多於指定數量的內存,這樣剩餘的可用內存可以快速運行其它應用程序。SQL Server 啟動時不立即分配 max server memory 中所指定的內存。內存使用隨 SQL Server 的需要而增長,直到達到 max server memory 中所指定的值。SQL Server 無法超過該內存使用值,除非增加 max server memory 值。
第一種情況比較適用於伺服器專做sql server伺服器的情況,第二種情況適用於為在同一台計算機上運行的其它應用程序保留一定的內存以便於快速響應。(另:如果想動態分配sql server 的內存,則不要設置set working set size 選項,使用默認值即可。至於這些參數如何設置參見另外的文檔)

監視 SQL Server 所使用的內存和計數器有助於確定:
是否由於缺少可用物理內存存儲高速緩存中經常訪問的數據而導致瓶頸存在。如果是這樣,SQL Server 必須從磁碟檢索數據。
是否可通過添加更多內存或使更多內存可用於數據高速緩存或 SQL Server 內部結構來提高查詢性能。
SQL Server 需要從磁碟讀取數據的頻率。與其它操作相比,例如內存訪問,物理 I/O 會耗費大量時間。盡可能減少物理 I/O 可以提高查詢性能。

對sql server伺服器內存的監視:
Memory:Available Bytes
計數器表示當前進程可使用的物理內存位元組數。
如果小於4M或更小,說明計算機上總的內存可能不足,或某個程序沒有釋放內存
● Memory: Page Faults / sec
每秒軟性頁面失效的數目(包括有些可以直接在內存中滿足而有些需要從硬碟讀取)較page/sec只表明數據不能在內存指定工作集中立即使用。
如果該值偶爾走高,表明當時有線程競爭內存。如果持續很高,則內
存可能是瓶頸。
Memory:Pages/sec
計數器表示由於缺頁處理而從磁碟取回的頁數,或由於缺頁處理而寫入磁碟以釋放工作集空間的頁數。
● Page Reads/sec
每秒發出的物理資料庫頁讀取數。這一統計信息顯示的是在所有資料庫間的物理頁讀取總數。由於物理 I/O 的開銷大,可以通過使用更大的數據高速緩存、智能索引、更高效的查詢或者改變資料庫設計等方法,使開銷減到最小。
● Page Writes/sec
所發出的物理資料庫頁寫入的數目。
監視 SQL Server 正在使用的內存量:
Process:Working Set
計數器表示的是一個進程所佔用的內存數量。
若這一數值持續低於 SQL Server 配置使用的內存數量(由"最小伺服器內存"和"最大伺服器內存"伺服器選項設置,( min server memory 的默認設置為 0,max server memory 的默認設置為 2147483647。),則表示 SQL Server 所配置的內存比它所需要的多。否則,用"設置工作集大小"伺服器選項修改工作集大小。
[在設置了sql server 使用的最小 和 最大內存後,查看此參數比較有意義。如果沒有設置sql server 內存使用范圍,則該值可以與系統總的內存比較,設置分配給sql server 的最大最小內存分配的是物理內存+虛擬內存的一部分]
● SQL Server:Buffer Manager:Buffer Cache Hit Ratio
數據請求可以從數據緩沖區中獲得所需數據的成功率
計數器值依應用程序而定,但比率最好為 90% 或更高。增加內存直到這一數值持續高於 90%,表示 90% 以上的數據請求可以從數據緩沖區中獲得所需數據。
● SQL Server:Buffer Manager: Total Pages
緩沖區池中頁的數目(包括資料庫、可用頁和被盜用頁)
若 Total Server Memory (KB) 計數器值與計算機的物理內存大小相比一直很高,可能表示需要更多的內存

結論:
對sql server 伺服器內存的監視,可以看出該伺服器整體的內存的佔用情況
對 sql server 使用內存的監視, 可以看出是否是sql server 使用了大多數內存
根據監視的結果確定是否是內存不夠。

其它:

內存相關參數調整(見後面)
SQL Server 對象內存使用情況說明(見後面)

疑問:
使用 set working set size =1 後,系統是在sql server 啟動時就分配給它要求的內存 還是 開始不分配這么多,而是等到用了這么多之後不釋放就行了?

SQL Server 對象內存使用情況說明
下表列出 Microsoft® SQL Server™ 中不同對象的內存使用量。下表中的信息不適用於 Microsoft® SQL Server 2000™ Windows® CE 版。
對象大小
對象 SQL Server 7.0 SQL Server 2000
鎖 96 位元組 每個所有者 64 位元組外加 32 位元組。
開放式資料庫 2.880 位元組 每個文件 3924 位元組外加 1640 位元組,每個文件組 336 位元組。
開放式對象1 276 位元組 每個對象上打開的索引 256 位元組外加 1724 位元組2。
用戶聯接 12 KB +(3 * 網路數據包大小)3。 12 KB +(3 * 網路數據包大小)3。

3 開放式對象包括所有的表、視圖、存儲過程、擴展存儲過程、觸發器、規則、默認值及約束。
2 在表或視圖上可以打開索引。
3 網路數據包大小是表格格式數據方案 (TDS) 數據包的大小,該數據包用於應用程序和關系資料庫引擎之間的通訊。默認的數據包大小為 4 KB,由 network packet size 配置選項控制。

內存相關:
伺服器虛擬內存的配置
頁面文件和物理內存或RAM構成虛禮內存

虛擬內存設置方法:
啟動"控制面板"的"系統"選項,然後選擇"虛擬內存"按鈕來創建一個附加的頁面文件或增加當前頁面文件的大小。

虛擬內存不足:
當伺服器上運行的應用程序請求的內存超過伺服器上可用的內存時,Microsoft® Windows® 打開"伺服器進程 — 虛擬內存用完"對話框,其文本如下所示:
系統的虛擬內存已經不足。請關閉一些應用程序。可以啟動"控制面板"的"系統"選項,然後選擇"虛擬內存"按鈕來創建一個附加的頁面文件或增加當前頁面文件的大小。

一般情況下,將虛擬內存大小設置為計算機中安裝的物理內存的 1.5 倍
如果另外安裝了全文檢索功能,並打算運行 Microsoft 搜索服務以便執行全文索引和查詢,可考慮:
將虛擬內存大小配置為至少是計算機中安裝的物理內存的 3 倍。
● 將 SQL Server max server memory 伺服器配置選項配置為物理內存的 1.5 倍(虛擬內存大小設置的一半)。
如考慮其它服務需要的虛擬內存,則配置 SQL Server max server memory 選項,使得留有足夠的虛擬內存滿足全文檢索內存需求。全部虛擬內存 -(SQL Server 最大虛擬內存 + 其它服務需要的虛擬內存)>= 1.5 倍物理內存。

Sql server 使用的內存參數的配置:
手工配置給 SQL Server 多於物理內存數量的虛擬內存會導致性能較低。默認情況下,SQL Server 能夠可用系統資源動態改變它的內存需求。min server memory 的默認設置為 0,max server memory 的默認設置為 2147483647。可以為 max server memory 指定的最小內存量為 4 MB。
作用:如果在運行 SQL Server 實例的計算機上頻繁啟動或停止其它應用程序,啟動這些應用程序所需的時間可能會因 SQL Server 實例分配和釋放內存而延長。另外,如果 SQL Server 是幾個在一台計算機上運行的伺服器應用程序中的一個,系統管理員可能需要控制分配給 SQL Server 的內存量。在這些情況下,可以使用 min server memory 和 max server memory 選項控制 SQL Server 可以使用的內存量。

對SQL Sserver 使用內存的配置主要是對以下三個參數進行配置:
min server memory 保證了 SQL Server 實例使用的最小內存量。
max server memory 則可防止 SQL Server 使用多於指定數量的內存,這樣剩餘的可用內存可以快速運行其它應用程序。
set working set size 為 SQL Server 保留等於伺服器內存設置的物理內存空間。

手工設置 SQL Server 內存選項有兩種主要方法:
第一種方法,設置 min server memory 和 max server memory 為同一數值。該數值與分配給 SQL Server 的固定內存量相對應。
● 第二種方法,把 min server memory 和 max server memory 數量設置到一個范圍段內。這種方法在系統或資料庫管理員希望配置 SQL Server 實例,使其適應在同一台計算機上運行的其它應用程序的內存需求時很有用。

如果只設置了min server memory 和 max server memory ,sql server 使用的內存值在最小和最大值之間變動(如果sql server 使用的值超過過最小值的話)
如果設置set working set size =1,必須先將min server memory 和 max server memory的值設成同一個值,這個值就是為sql server 保留的物理內存空間。即使當 SQL Server 空閑,另一個進程可以使用 SQL Server 頁時,系統也不會將 SQL Server 頁交換出去。

參數的設置方法:
1. 在查詢分析器中運行 [要先運行下面的語句,否則內存頁面打不開]
use master
exec sp_configure 'show advanced option','1'

2. 在企業管理器中配置,步驟:
打開Sql Server 屬性配置,選擇內存頁面,然後在裡面配置就行了。
(不過這里用圖形界面配置內存的時候好像不能超過物理內存的大小,可以用命令來分配大於物理內存的內存空間,下面有簡單的介紹。 )

對上圖的說明:
動態配置 SQL Server 內存
指定在更改伺服器屬性之後立即配置 Microsoft® SQL Server™ 內存。
使用固定的內存大小
為 SQL Server 指定固定的內存大小。
為 SQL Server 保留物理內存
為 SQL Server 保留與內存設置相等的物理內存空間。這意味著 Microsoft Windows NT® 4.0 或 Windows® 2000 不會將 SQL Server 頁交換出去,即使當 SQL Server 閑置時可以更容易地使用這些頁。
最小查詢內存
設置可以分配給每個用戶執行查詢的最小內存大小。默認為 1024 KB。
配置值[顯示現在配置的值,不做其它用途]
查看或更改此選項卡上的選項的配置值。如果更改了這些值,單擊"運行值"查看更改是否已生效。如果沒有,必須重新啟動 SQL Server 實例才能使更改生效。
運行值[顯示現在運行值,不做其它用途]
查看此選項卡上的選項的當前運行值。這些值為只讀值。

另:如果要用命令來設置比較麻煩。如下簡單舉個例子:
Set working set size 設置方法:
set working set size 是一個高級選項。如果要用 sp_configure 系統存儲過程改變該選項,必須把 show advanced options 設置為 1,該選項在停止並重新啟動伺服器後生效。
設置 show advanced options 設置為 1,在查詢分析器中運行以下命令:
use master
exec sp_configure 'show advanced option','1'
如果成功,會返回如下結果:

DBCC 執行完畢。如果 DBCC 輸出了錯誤信息,請與系統管理員聯系。
已將配置選項 'show advanced options' 從 1 改為 1。請運行 RECONFIGURE 語句以安裝。

設置set working set size =1,運行如下命令:
use master
exec sp_configure 'set working set size','1'
如果成功,會返回如下結果:
DBCC 執行完畢。如果 DBCC 輸出了錯誤信息,請與系統管理員聯系。
已將配置選項 'set working set size' 從 0 改為 1。請運行 RECONFIGURE 語句以安裝。

…………………………………………

Cache Hit Ratio(高速緩存命中率,所有Cache」的命中率。在SQL Server中,Cache可以包括Log Cache,Buffer Cache以及Procere Cache,是一個總體的比率。) 高速緩存命中次數和查找次數的比率。對於查看SQL Server高速緩存對於你的系統如何有效,這是一個非常好的計數器。如果這個值很低,持續低於80%,就需要增加更多的內存。

設置架構高速緩存:
架構高速緩存可顯著提高 XPath 查詢的性能。當對帶批註的 XDR 架構執行 XPath 查詢時,架構存儲在內存中,而必要的數據結構內置在內存中。如果設置了架構高速緩存,架構仍保留在內存中,因而提高了後續 Xpath 查詢的性能。
解釋:
架構-SCHEMA
CREATE SCHEMA
創建一個架構,並且可以在概念上將其看作是包含表、視圖和許可權定義的對象。
CREATE SCHEMA 提供了在單個語句中創建表、視圖以及授予對象許可權的方法。如果在創建任何對象或授予任何許可權(這些是在 CREATE SCHEMA 語句中指定的)時發生錯誤,則不會創建任何對象。

XPath查詢-Xpath(XML Path 語言)是一種圖形導航語言
個人理解簡單的說就是在URL中指定查詢。[詳細知識參照sql server 聯機幫助文檔]

設置方法:
可通過在注冊表中添加下列鍵來設置架構高速緩存的大小:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SQLXMLX\SchemaCacheSize。
[我在注冊表中沒找到位置!?]
根據可用內存和要使用的架構數設置架構大小。默認的架構高速緩存大小為 31。如果設置更高的架構高速緩存大小,需使用更多的內存。因此,如果架構訪問速度慢,可增加高速緩存大小,如果內存少則可減小高速緩存的大小。
出於性能方面的考慮,建議將架構高速緩存的大小設得比通常所用的映射架構數多。當架構數增加時,如果架構高速緩存的大小比所擁有的架構數少,性能會降低。

『叄』 SqlServer 創建表命令中的參數——TEXTIMAGE_ON

在使用SqlServer創建表時會遇到一些參數,比如PAD_INDEX=OFF,TEXTIMAGE_ON等等,這里把這些參數的含義做一個小結,在使用時避免出錯。下面是創建表的腳本

首先說一下TEXTIMAGE_ON [PRIMARY],這個表中有一個大數據欄位[Json] nvarchar ,TEXTIMAGE_ON 的作用是將列存儲在指定文件組中,如果沒有指定 TEXTIMAGE_ON,則大數據列將與表存儲在同一文件組中。如果表中沒有大數據欄位,使用這個參數會報錯:

『肆』 SqlServer如何配置資料庫郵件


很多的用戶們團滲剛剛接觸SqlServer2008,還不熟悉配置資料庫郵件操作步驟?今日在此篇文章內小編就為你們帶來了。
打開SqlServer2008資料庫--登錄資料庫--管理---資料庫郵件--配置資料庫郵件
進入資料庫郵件配置向導--下一步
選擇配置任務選項:
如果是首次創建的話,選擇塌液脊第一項:通過執行以下任務來安裝資料庫郵件
如果已埋橘經創建過的話,可以通過第二項和第三項去改變資料庫郵件的配置
新建配置文件
按照要求填寫,可以參照下圖
給出常用伺服器的smtp伺服器地址
gmail(google.com)POP3伺服器地址:pop.gmail.comSMTP伺服器地址:smtp.gmail.com
163.com:POP3伺服器地址:pop.163.comSMTP伺服器地址:smtp.163.com
yahoo.com:POP3伺服器地址:pop.mail.yahoo.comSMTP伺服器地址:smtp.mail.yahoo.com
選中配置項,點擊下一步
設置系統參數,按照需要配置,下一步
檢查配置項是否正確,完成配置

『伍』 sqlserver存儲過程如何建立可選參數

  1. SQL Server 中的存儲過程(Procere),帶入參數和出參數。

  2. 存儲過程(Procere)-基本創建與操作。

  3. --一、無參存儲過程

  4. create procere PTitles

    as

    select * from titles

    go

    --2,執行存儲過程

    execute PTitles

    go

    --3,移除存儲過程

--drop procere PTitles

go

5.存儲過程(Procere)-帶入參。

create proc P_Titles_ByType

@type char(12) --入參

as

select * from titles where type=@type

go

--,執行帶參數的存儲過程

--a)方式一

exec P_Titles_ByType @type='business'

go

--b)方式二

exec P_Titles_ByType 'business'

6.存儲過程(Procere)-帶入參和出參。

create proc P_Titles_ByTypeAndPrice

@type char(12), --入參

@price money --入參

as begin

select * from titles

where type=@type and price>@price

end

『陸』 配置SQL Server 2000選項

SQL Server伺服器的配置選項屬於那種人們了解較少且經常誤用的穗陪選項 當一個技術支持人員要求你按照某種方式調整一個選項 而另一個技術支持人員卻要求你按照另一種完全對立的方式調整同一個選項時 你可能對這些選項的真正含義感到困惑 有關這些選項的資料很缺乏 至少可以說不夠詳細和清楚脊培 在SQL Server 中 Microsoft減少了幾個配置選項 讓SQL Server動態配置它們 從而減少了幾個容易混淆的地方 同時 Microsoft又為SQL Server 新增了兩個伺服器配置選項 調整了一些資料庫選項 從而稍許簡化了資料庫管理員的工作 新增的伺服器選項 就象訪問大多數企業版伺服器的屬性一樣 我們不能在SQL Server Enterprise Manager中通過伺服器屬性窗口訪問SQL Server 新增的兩個伺服器選項 作為防止用戶由於不小心而錯誤配置伺服器的一個安全措施 Microsoft沒有把這些高級配置選項放入Enterprise Manager 相反 我們必須使用T SQL/sp_configure系統存儲過程去訪問這些高級選項 我們可以用不帶參數運行sp_configure的方法查看伺服器的當前配置 在執行結果中 config_value是SQL Server從Master資料庫syscurconfigs表提取出來的數據 它顯示了伺服器的當前配置 run_value列顯示了執行sp_configure時SQL Server正在使用的選項 SQL Server在sysconfigures表中存儲這些數據 修改某個選項之後 我們必須執行RECONFIGURE命令(在大多數情況下 還要重新啟動SQL Server)才能讓新的run_value顯示出來 本文所討論的所有選項都要求重新啟動SQL Server 伺服器選項總共猜野蠢有 個 默認情況下 sp_configure存儲過程只顯示其中的 個 顯示結果中不包含高級選項 而且所有新的SQL Server配置選項都不會出現在這個精簡的清單中 然而 我們可以使用show advanced options命令參數讓SQL Server顯示出所有選項 要啟用show advanced options 我們使用如下命令格式 EXEC sp_configure show advanced options RECONFIGURE 要安裝一個選項 我們必須在使用sp_configure配置伺服器之後運行RECONFIGURE命令 上面命令的輸出結果如下 Configuration option show advanced options changed from to Run the RECONFIGURE mand to install 一旦能夠查看高級選項 我們就可以看到兩個新的伺服器選項 其中最重要的一個新選項是awe enabled選項 它能夠讓SQL Server企業版提高伺服器的內存訪問能力 默認情況下 SQL Server能夠使用的最大RAM是 GB 在Windows 上 應用程序可以 使用Address Windowing Extensions(AWE)API訪問更多的RAM 例如 在Windows Advanced Server中 我們能夠使用多達 GB的內存 只有Windows Datacenter Server支持 GB內存才超過它 顯然 當SQL Server擁有更多的可用內存 它將能夠緩沖更多的數據 改善查詢的響應時間 不過 啟用awe enabled選項也有副作用 啟用awe enabled選項之後 SQL Server不再動態地分配內存 由於缺乏內存動態分配功能 管理負擔隨之增加 因為我們必須仔細地監視RAM使用情況 另外 設置awe enabled選項之後 我們還必須設置max server memory選項 如果我們不設置max server memory選項 伺服器RAM又等於最低要求 GB SQL Server將在啟動的時候占據機器上幾乎所有的RAM 只給Windows和其他應用留下 MB的RAM 通過設置max server memory選項 我們可以限制SQL Server使用的內存總量 awe enabled選項只能在SQL Server Enterprise Edition上使用 操作系統必須是Windows Advance Server或Datacenter 如果你在SQL Server的其他版本上使用這個選項(或者操作系統是WinNT) SQL Server將忽略這個選項 在某些伺服器配置組合下 不適當地配置這個選項將導致不可預知的結果 例如 如果我們在Windows 操作系統 運行SQL Server Personal Edition的機器上設置這個選項 SQL Server可能報告它已經停止(甚至是在它正在運行的時候) 而且它將拒絕停止SQL Server實例 在SQL Server Enterprise Edition伺服器上啟用AWE包括三個步驟 首先 我們必須確保啟動SQL Server實例的帳號具有在內存中鎖定頁的許可權 SQL Server安裝時自動把頁鎖定許可權授予我們指定用來啟動SQL Server服務的Windows帳號 但是 如果後來這個帳號已經改變 你應該檢查一下已經把哪些許可權授予了啟動SQL Server的用戶 檢查帳號的許可權可以使用Windows 的組策略工具 第二個步驟是運行sp_configure存儲過程 把awe enabled選項設置為 然後 我們必須執行RECONFIGURE 用手工方式重新啟動SQL Server 配置命令的語法為 EXEC sp_configure awe enabled RECONFIGURE 注意 在Windows 或者NT上 如果要訪問高於 GB的物理內存 我們還必須採取其他一些措施 即修改boot ini文件 加入/pae選項 第二個新的SQL Server 選項用來啟用C 級安全審核模式 C 是一個 *** 安全等級 它保證系統能夠保護資源並具有足夠的審核能力 C 模式允許我們監視對所有資料庫實體的所有訪問企圖 啟用SQL Server的C 審核功能的命令如下 EXEC sp_configure c audit mode RECONFIGURE (要實現完整的C 級安全保證 Windows操作系統也必須提供相應的支持)啟用C 審核模式並重新啟動之後 SQL Server自動在MSSQLData目錄下面創建跟蹤文件 我們可以使用SQL Server Profiler查看這些監視伺服器活動的跟蹤文件 SQL Server以 KB大小的塊為單位把數據寫入跟蹤文件 因此 當SQL Server非正常停止時 我們最多可能丟失 KB的日誌數據 可以想像 包含審核信息的日誌文件將以很快的速度增大 例如 某次試驗只訪問了三個表 跟蹤文件已經超過了 MB 當跟蹤文件超過 MB時 C 審核將關閉舊文件並創建新文件 每次SQL Server啟動的時候 它會創建一個新的跟蹤文件 如果磁碟空間不足 SQL Server將停止運行 直至我們為審核日誌釋放出足夠的磁碟空間並重新啟動SQL Server實例 在SQL Server啟動的時候 我們可以使用 f參數禁用審核 減少的伺服器選項 在SQL Server 中 Microsoft減少了原有的幾個選項 讓SQL Server 自動配置這些選項 減少的選項中最引人注目的是max async IO選項 這個選項允許資料庫管理員指定在單一的資料庫文件上可以出現多少非同步的磁碟讀取和寫入操作 SQL Server 中的max async IO選項是人們了解最少的選項之一 它的默認值是 但很少有管理員去調整這個值 在SQL Server 中 這個非同步IO選項隨著SQL Server接收的適配器反饋信息動態地上升或者下降 SQL Server利用反饋演算法確定伺服器負載以及SQL Server系統能夠控制的數量 資料庫選項 在SQL Server 中 如果你曾經查看過Enterprise Manager中資料庫的Options選項卡 你可能會對一些通用選項的消失感到困惑(要訪問Options選項卡 在Enterprise Manager中右擊資料庫然後選擇Properties) Options選項卡中減少了trunc log on cpt 以及Select Into/Bulk Copy這兩個選項 如圖 所示 為了清楚和向後兼容起見 這些通用選項現在稱為recovery model(恢復模型)選項 如果用SQL Server 的Enterprise Manager連接SQL Server 資料庫 我們仍舊可以看到這些老選項 以前 我們使用下面的命令為Northwind資料庫開啟trunc log on cpt 選項 SP_DBOPTION Northwind trunc log on cpt true 設置好選項之後 我們可以通過Options選項卡或者下面的查詢檢查Northwind資料庫上這些選項設置是否成功 SELECT DATABASEPROPERTY ( Northwind IsTruncLog ) 結果為 表示選項設置成了true 結果為 表示選項設置成了false 如果結果為NULL 它表示我們或者選擇了一個錯誤的選項 或者資料庫不存在 為了便於使用 Microsoft把trunc log on cpt 和Select Into/Bulk Copy選項換成了恢復模型設置 這種選項改變的目的在於確保資料庫管理員能夠充分理解在災難恢復策略中恢復模型選項的意義 SQL Server 為我們提供了三種資料庫恢復模型 simple(簡單恢復) full(完全恢復) bulk_logged(大容量日誌記錄恢復) 簡單恢復模型最容易操作 但它是最缺乏靈活性的災難恢復策略 選擇簡單恢復模型等同於把trunc log on cpt 設置成true 在這種恢復模型下 我們只能進行完全備份和差異備份(differential backup) 這是因為事務日誌總是被截斷 事務日誌備份不可用 一般地 對於一個包含關鍵性數據的系統 我們不應該選擇簡單恢復模型 因為它不能夠幫助我們把系統還原到故障點 使用這種恢復模型時 我們最多隻能把系統恢復到最後一次成功進行完全備份和差異備份的狀態 進行恢復時 我們首先要恢復最後一次成功進行的完全備份 然後在此基礎上恢復差異備份(差異備份只能把自從資料庫最後一次完全備份之後對資料庫的改動施加到資料庫上) 完全恢復模型把trunc log on cpt 選項和Select Into/Bulk Copy選項都設置成false 完全恢復具有把資料庫恢復到故障點或特定即時點的能力 對於保護那些包含關鍵性數據的環境來說 這種模型很理想 但它提高了設備和管理的代價 因為如果資料庫訪問比較頻繁的話 系統將很快產生龐大的事務日誌記錄 由於在這種模型中Select Into/Bulk Copy設置成了false SQL Server將記錄包括大容量數據裝入在內的所有事件 最後一種恢復模型是大容量日誌記錄恢復 它把tru lishixin/Article/program/SQLServer/201311/22177