成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

大內存SQLServer數(shù)據(jù)庫的加速劑

數(shù)據(jù)庫 SQL Server
SQLServer數(shù)據(jù)庫是美國Microsoft公司推出的一種關系型數(shù)據(jù)庫系統(tǒng)。SQLServer是一個可擴展的、高性能的、為分布式客戶機/服務器計算所設計的數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)了與WindowsNT的有機結合,提供了基于事務的企業(yè)級信息管理系統(tǒng)方案。下面為大家介紹大內存SQLServer數(shù)據(jù)庫的加速劑。

導讀:數(shù)據(jù)庫配置比較大的內存,可以有效提高數(shù)據(jù)庫性能。因為數(shù)據(jù)庫在運行過程中,會在內存中劃出一塊區(qū)域來作為數(shù)據(jù)緩存。通常情況下,用戶訪問數(shù)據(jù)庫時,數(shù)據(jù)先會被讀取到這個數(shù)據(jù)緩存中。當下次用戶還需要訪問這個數(shù)據(jù)時,就會從這個數(shù)據(jù)緩存中讀取。因為在數(shù)據(jù)緩存中讀取數(shù)據(jù)要比在硬盤上讀取數(shù)據(jù)快幾百倍。所以擴大數(shù)據(jù)庫服務器內存,可以有效提高數(shù)據(jù)庫性能,特別是操作大型數(shù)據(jù)庫時效果更加明顯。

  但是,現(xiàn)在企業(yè)中普遍采用的數(shù)據(jù)庫服務器都是32位的操作系統(tǒng)。而這個32位的操作系統(tǒng)卻有***內存的使用限制。通常情況下,標準的32位地址最多可以采用4GB的內存。若數(shù)據(jù)庫管理員想讓數(shù)據(jù)庫系統(tǒng)采用更多的內存來提高數(shù)據(jù)庫的性能,則就需要進行額外的配置。下面筆者就介紹兩種常用的配置方式,讓SQLServer數(shù)據(jù)庫服務器支持大內存,讓其成為數(shù)據(jù)庫的加速劑。

一、讓數(shù)據(jù)庫應用程序支持3GB的內存空間

  雖然操作系統(tǒng)支持4GB內存。可是,這并不會全部給數(shù)據(jù)庫等應用程序使用。默認情況下,在32位操作系統(tǒng)中,將有2GB的內存空間是為操作系統(tǒng)所保留的。即使沒有用完,其他應用程序也是不能夠染指的。而包含SQL Server數(shù)據(jù)庫在內的所有應用程序,只能過采用剩余的2GB內存空間。

  但是,在實際應用中,操作系統(tǒng)往往用不著多大2G的內存。根據(jù)筆者的經(jīng)驗,一般只要為操作系統(tǒng)保留1G的內存已經(jīng)足夠其使用。只要沒有病毒等不良因素作怪,這個內存不會被完全適用。如此的話,應用程序可以采用的內存空間就會多達3G,比原先整整多出一個G來。

  要實現(xiàn)這個轉變,其實很簡單。在Windows操作系統(tǒng)中,有一個BOOT啟動配置文件。為了讓數(shù)據(jù)庫服務器支持3GB的用戶模式進程空間,必須在這個配置文件中,加入一個/3gb的參數(shù),然后重新啟動操作系統(tǒng)即可。這么設置之后,應用程序就可以尋址3GB的進程地址空間 ,而為操作系統(tǒng)保留1GB的內存空間。

  有時候,這個小小的配置可以在很大程度上提高數(shù)據(jù)庫的性能。記得有一次,筆者為一家企業(yè)優(yōu)化數(shù)據(jù)庫性能。筆者查看了用戶的數(shù)據(jù)庫環(huán)境之后,就建議用戶增大數(shù)據(jù)庫服務器的內存,從2G增加到4G。可是,效果并沒有很大的改善。正當筆者束手無措的時候,就想到了改變操作系統(tǒng)與應用程序的內存分配方式。為此,筆者就更改了BOOT啟動配置文件,只給操作系統(tǒng)保留1G的內存空間。重新啟動后,數(shù)據(jù)庫性能得到了很大的改善。

二、為SQLServer啟用更高的內存支持

  如果數(shù)據(jù)庫應用程序內存尋址空間達到3GB后,數(shù)據(jù)庫管理員還不滿足的話,則就需要通過增加物理內存的方式,來提高應用程序的性能。若需要服務器操作系統(tǒng)突破其默認4GB內存空間的限制,支持4GB以上的內存空間,也不是不可能的。只是需要進行額外的配置,并且,其維護的工作量也比較大。

  若想要SQLServer數(shù)據(jù)庫支持4GB以上的內存尋址空間,則往往需要進行如下配置。

***步:鎖定內存頁。

  默認情況下,內存大小與操作系統(tǒng)的虛擬內存之間有一個正比例關系。在這里,數(shù)據(jù)庫管理員只想增大服務器的物理內存,而不想對虛擬內存有什么影響。故需要鎖定內存頁。鎖定內存頁的主要作用就是確定哪些帳戶可以使用進程將數(shù)據(jù)保留在物理內存中,從而阻止系統(tǒng)將數(shù)據(jù)分頁到磁盤的虛擬內存中。默認情況下,這個選項的只為OFF。也就是說,在必要的時候,系統(tǒng)會將數(shù)據(jù)分頁到硬盤的虛擬空間中。為了***程度發(fā)揮內存的效用,就需要把這個選項開啟。不過這數(shù)據(jù)庫管理員往往需要尋求系統(tǒng)管理員的幫助,因為只有具有系統(tǒng)管理員權限的用戶,才能夠給更改這個選項。

第二步:啟用Awe Enable選項。

  默認情況下,即使服務器操作系統(tǒng)支持4GB以上的內存空間,可是數(shù)據(jù)庫應用程序并不一定支持。為了讓SQLServer應用程序也支持這個,就必須更改數(shù)據(jù)庫的配置參數(shù)。也就是說,需要將這個選項的值設置為1,然后重新啟動數(shù)據(jù)庫系統(tǒng)。這個配置比較簡單,只需要利用命令sp_configure 'awe enabled', 1即可。不過在進行這個配置之前,需要注意兩個細節(jié)方面的內容。一是數(shù)據(jù)庫用戶需要這個操作的權限。二是這里有一個BUG,即在SQL Server數(shù)據(jù)庫中會有一個錯誤信息。數(shù)據(jù)庫管理員可以忽略這個信息。

第三步:限制文件系統(tǒng)緩存。

  若增加的內存給操作系統(tǒng)或者其他應用程序用了,那么數(shù)據(jù)庫管理員不是白忙一場嗎?為此,數(shù)據(jù)庫管理員還需要優(yōu)化數(shù)據(jù)庫系統(tǒng)內存的使用情況。如需要限制系統(tǒng)用于文件緩存的內存量。如要這么處理的話,只需要簡單的三個步驟即可。

  首先,數(shù)據(jù)庫管理員在操作系統(tǒng)中,找到控制面板,并雙擊網(wǎng)絡連接,然后選中本地連接。其次,雙擊本地連接,在彈出的對話框中,找到常規(guī)選項卡,單擊屬性。選中網(wǎng)絡文件與打印機共享,并單擊屬性。***,在彈出的對話框中,去掉“***化網(wǎng)絡應用程序數(shù)據(jù)吞吐量”復選框。一路按確認即可。這個簡單的步驟,就可以優(yōu)化數(shù)據(jù)庫內存的使用率。

三、大內存維護管理幾個關鍵點

  在通常情況下,往往不需要啟用4GB以上的內存。但是,若在服務器上,同時啟用了其他的應用程序服務。如在一臺服務器上同時有數(shù)據(jù)庫應用程序、郵件應用程序、文件服務器等多個應用服務的話,則可能原有的4GB內存無法滿足。系統(tǒng)管理員不得不對內存進行升級。但是,對內存升級之后,數(shù)據(jù)庫管理員需要手工對內存的分配進行干預,以免SQLServer應用程序占用比較多的內存空間,而影響其他應用程序的性能。

  1、配置max server memory選項。雖然說這個選項并不是必須要修改的,但是筆者仍強烈建議數(shù)據(jù)庫管理員要修改這個選項。特別是數(shù)據(jù)庫應用程序與其他應用程序共享同一臺服務器時。因為啟動SQLServer對大內存的支持后(將Awe Enabled設置為1),而且可用物理內存大于用戶模式進程空間。則當啟動數(shù)據(jù)庫服務器時,運行的SQLServer實例將會占用幾乎所有的可用內存(不管需不需要使用,數(shù)據(jù)庫服務器程序會先鎖定這些內存。這就叫占著茅坑不拉屎)。而這個max server memory選項就是用來配置其***可以占用的內存數(shù)量。數(shù)據(jù)庫管理員需要預先估算出一個合理的數(shù)值,然后進行配置。讓數(shù)據(jù)庫應用程序與其他應用服務能夠共同改善,至少不能夠對其他應用程序的性呢產(chǎn)生不良影響。在比較極端的情況下,可以在升級內存之前,先關閉數(shù)據(jù)庫應用程序;然后啟用其他應用程序服務。觀測一段時間,看看他們所需要用到多少的內存。然后升級內存,并為其他應用程序至少保留以前所需要的內存空間。否則的話,就會對其他應用程序產(chǎn)生不良影響。犧牲其他應用程序的性能來提高數(shù)據(jù)庫的性能,這是拆西墻補東墻的做法,不值得取。

  2、多個SQLServer實例內存如何分配。往往在一個SQLServer數(shù)據(jù)庫中,會配置多個數(shù)據(jù)庫實例。一個數(shù)據(jù)庫實例用來負責ERP系統(tǒng)的運行,另外一個則是給CRM系統(tǒng)使用。在同一個數(shù)據(jù)庫系統(tǒng)中,有多個數(shù)據(jù)庫實例,此時該如何在各個實例之間分配可用的內存呢?這基于操作系統(tǒng)的不同,又有所不同。如果數(shù)據(jù)庫操作系統(tǒng)采用的是2000系列的,則需要為每個數(shù)據(jù)庫實例配置max server memory選項。否則的話,其中某一個數(shù)據(jù)庫實例就有可能鎖定全部的可用內存。這主要是因為2000系列的服務器系統(tǒng)并不支持動態(tài)分配大內存。所以需要為每個數(shù)據(jù)庫實例配置這個選項。但是,若數(shù)據(jù)庫服務器采用的是2003系列的服務器操作系統(tǒng),則不需要進行手工的配置這些參數(shù)。因為操作系統(tǒng)會動態(tài)地分配內存。也就是說,操作系統(tǒng)會按照總體系統(tǒng)要求平衡SQLServer各個實例之間內存的使用。不過為了提高數(shù)據(jù)庫整體性能,***還是為各個實例配置max server memory;而不讓操作系統(tǒng)來搞平衡。

從上文中可以總結出大內存是好處多多,大內存加速了SQLServer數(shù)據(jù)庫,使SQLServer數(shù)據(jù)庫的操作性能更為的優(yōu)化,實現(xiàn)了SQLServer數(shù)據(jù)庫的高速發(fā)展。

【編輯推薦】

  1. 利用SQLServer系統(tǒng)表注入SQLServer數(shù)據(jù)庫
  2. 教您如何簡單刪除SQLServer數(shù)據(jù)庫的所有數(shù)據(jù)
  3. 如何使用SQLServer數(shù)據(jù)庫查詢累計值
  4. 實現(xiàn)SQLServer數(shù)據(jù)庫同步準實的操作方案
責任編輯:迎迎 來源: IT專家網(wǎng)
相關推薦

2011-05-13 09:42:21

2011-08-23 11:28:02

SQL ServerAWE機制

2011-04-15 13:41:27

SqlServer數(shù)據(jù)復制

2010-10-22 15:09:39

2010-09-06 11:40:06

SqlServer語句

2021-04-27 07:42:35

數(shù)據(jù)庫MySQLSQLServer

2011-04-14 09:38:55

內存數(shù)據(jù)庫

2012-11-08 13:56:23

甲骨文Exadata數(shù)據(jù)庫

2023-04-13 08:25:03

2011-04-14 09:27:37

內存數(shù)據(jù)庫

2019-08-15 07:00:54

SQLite數(shù)據(jù)庫內存數(shù)據(jù)庫

2022-12-07 18:45:22

內存數(shù)據(jù)庫Redis

2010-07-15 17:50:48

SQLServer收縮

2021-02-06 23:03:58

SQLServer數(shù)據(jù)庫變量

2010-07-02 08:39:02

SQLServer數(shù)據(jù)

2010-09-03 13:40:24

SQL刪除

2022-07-30 07:50:40

數(shù)據(jù)庫字段存儲

2021-03-12 10:12:40

數(shù)據(jù)庫SQLServer磁盤

2009-03-16 09:09:18

數(shù)據(jù)庫JDBCJSP

2010-06-17 13:16:07

SQLServer 數(shù)
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九色国产 | 一区二区三区四区视频 | 久久国产综合 | 亚洲精品日韩在线 | 免费观看一级毛片视频 | 在线免费观看欧美 | 亚洲一区久久 | 欧美片网站免费 | 日韩成人免费视频 | 日韩一区二区不卡 | 一区二区国产精品 | 黄色片网此 | 97色在线视频 | 91看国产 | 国产一区久久精品 | 国产精品久久久久久久久免费 | 亚洲国产欧美在线人成 | 日韩av免费在线观看 | 色偷偷888欧美精品久久久 | 欧美舔穴 | 国产精品av久久久久久毛片 | 丁香久久| 日韩视频在线一区 | 精品免费国产 | 久久九九99 | 夜夜草av| 无码日韩精品一区二区免费 | 成人免费网站www网站高清 | 狠狠狠| 自拍 亚洲 欧美 老师 丝袜 | 日韩精品一区二区三区 | 免费一级黄色录像 | 精品国产一区二区三区免费 | 日本在线中文 | 欧美999| 亚洲精品在线视频 | 妞干网av | 久久午夜精品 | 国产在线一区二 | 我要看黄色录像一级片 | 欧美99久久精品乱码影视 |