最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

sqlserver數(shù)據(jù)庫(kù)規(guī)模膨脹太大怎么優(yōu)化

 更新時(shí)間:2024年02月17日 16:16:05   投稿:yin  
數(shù)據(jù)庫(kù)規(guī)模膨脹是SQLServer數(shù)據(jù)庫(kù)運(yùn)維中常見(jiàn)的問(wèn)題之一,本文介紹了一些緩解膨脹問(wèn)題的方法,包括增加內(nèi)存、數(shù)據(jù)壓縮、數(shù)據(jù)庫(kù)分區(qū)等,在實(shí)踐過(guò)程中,應(yīng)根據(jù)具體情況,采取適當(dāng)?shù)姆椒?以達(dá)到最優(yōu)的緩解膨脹問(wèn)題的效果

1. 簡(jiǎn)介

隨著SQLServer數(shù)據(jù)庫(kù)中數(shù)據(jù)量的增長(zhǎng)和應(yīng)用系統(tǒng)使用時(shí)間的延長(zhǎng),其數(shù)據(jù)庫(kù)規(guī)模也會(huì)不斷膨脹。這種情況下,應(yīng)該如何處理呢?下面就為大家介紹一些常見(jiàn)的處理方式。

2. 增加內(nèi)存

2.1 增加物理內(nèi)存

增加SQLServer數(shù)據(jù)庫(kù)服務(wù)器的物理內(nèi)存可以有效地提高數(shù)據(jù)庫(kù)服務(wù)器的性能。因?yàn)?,將?shù)據(jù)庫(kù)所需的數(shù)據(jù)和索引都緩存在內(nèi)存中,可以減少磁盤(pán)I/O操作的次數(shù),從而提高速度,緩解數(shù)據(jù)庫(kù)規(guī)模膨脹的問(wèn)題。

具體實(shí)現(xiàn)方法如下:

ALTER SERVER CONFIGURATION SET MEMORY=8192MB;

說(shuō)明:

“ALTER SERVER CONFIGURATION SET MEMORY=8192MB”表示增加物理內(nèi)存到8GB,具體根據(jù)服務(wù)器實(shí)際情況而定。

2.2 增加虛擬內(nèi)存

增加SQLServer數(shù)據(jù)庫(kù)服務(wù)器的虛擬內(nèi)存也可以提高性能。因?yàn)椋?dāng)內(nèi)存不足時(shí),SQLServer將使用硬盤(pán)上的虛擬內(nèi)存來(lái)臨時(shí)存儲(chǔ)數(shù)據(jù)和索引,這雖然會(huì)導(dǎo)致訪問(wèn)速度變慢,但也可以減少磁盤(pán)I/O操作的次數(shù),從而提高速度,緩解數(shù)據(jù)庫(kù)規(guī)模膨脹的問(wèn)題。

具體實(shí)現(xiàn)方法如下:

ALTER SERVER CONFIGURATION SET C:\\PAGEFILE.SYS;

說(shuō)明:

“ALTER SERVER CONFIGURATION SET C:\\PAGEFILE.SYS”表示增加虛擬內(nèi)存到C盤(pán)根目錄下的PAGEFILE.SYS文件中,具體根據(jù)服務(wù)器實(shí)際情況而定。

3. 數(shù)據(jù)壓縮

3.1 壓縮表格

在SQLServer數(shù)據(jù)庫(kù)參數(shù)設(shè)置中,可以開(kāi)啟數(shù)據(jù)壓縮功能以減少磁盤(pán)使用量。對(duì)于一些已經(jīng)存在多年的歷史數(shù)據(jù),可以考慮對(duì)其進(jìn)行數(shù)據(jù)壓縮,以緩解數(shù)據(jù)庫(kù)規(guī)模膨脹的問(wèn)題。

具體實(shí)現(xiàn)方法如下:

SELECT name, type_desc, total_pages, used_pages FROM sys.allocation_units WHERE type IN (1,3) ORDER BY total_pages DESC

說(shuō)明:

“SELECT name, type_desc, total_pages, used_pages FROM sys.allocation_units WHERE type IN (1,3) ORDER BY total_pages DESC”表示按照總頁(yè)數(shù)從大到小排序輸出已經(jīng)壓縮的表格信息。

3.2 壓縮數(shù)據(jù)庫(kù)

對(duì)于整個(gè)數(shù)據(jù)庫(kù)的數(shù)據(jù)壓縮,可以使用SQLServer數(shù)據(jù)庫(kù)自帶的壓縮方式將數(shù)據(jù)庫(kù)文件中的部分?jǐn)?shù)據(jù)壓縮起來(lái)。這樣可以節(jié)省磁盤(pán)空間,并可以緩解數(shù)據(jù)庫(kù)規(guī)模膨脹的問(wèn)題。

具體實(shí)現(xiàn)方法如下:

USE [master]
GO
ALTER DATABASE [AdventureWorks] SET COMPATIBILITY_LEVEL = 110;
GO
ALTER DATABASE [AdventureWorks] SET PAGE_VERIFY CHECKSUM;
GO
USE [AdventureWorks]
GO
ALTER INDEX ALL ON [Person].[Address] REBUILD WITH (DATA_COMPRESSION = PAGE);
GO

說(shuō)明:

“ALTER DATABASE [AdventureWorks] SET COMPATIBILITY_LEVEL = 110;”表示將AdventureWorks數(shù)據(jù)庫(kù)的兼容性級(jí)別設(shè)置為SQL Server 2012,具體根據(jù)數(shù)據(jù)庫(kù)實(shí)際情況而定;

“ALTER DATABASE [AdventureWorks] SET PAGE_VERIFY CHECKSUM;”表示啟用SQL Server提供的頁(yè)面校驗(yàn)檢查;

“ALTER INDEX ALL ON [Person].[Address] REBUILD WITH (DATA_COMPRESSION = PAGE);”表示對(duì)表格Person.Address中的所有索引執(zhí)行重建操作,并采用頁(yè)壓縮方式,可以將關(guān)鍵數(shù)據(jù)壓縮,從而減少磁盤(pán)空間占用。

4. 數(shù)據(jù)庫(kù)分區(qū)

4.1 橫向分區(qū)

SQLServer支持分割已有表格的數(shù)據(jù)為多個(gè)物理表格的技術(shù),一般稱(chēng)為數(shù)據(jù)橫向拆分。當(dāng)數(shù)據(jù)庫(kù)規(guī)模膨脹到一定程度后,可以采用橫向分區(qū)的方式來(lái)進(jìn)行數(shù)據(jù)管理,以保證數(shù)據(jù)庫(kù)的高效穩(wěn)定運(yùn)行。

具體實(shí)現(xiàn)方法如下:

CREATE TABLE Archive_2012 (LIKE Sales.SalesOrderDetail);
GO
ALTER TABLE Archive_2012 ADD CONSTRAINT PK_Archive_2012 PRIMARY KEY (SalesOrderID, SalesOrderDetailID)
GO
CREATE CLUSTERED INDEX CIX_SalesOrderID ON Archive_2012 (SalesOrderID)
GO
CREATE NONCLUSTERED INDEX IX_SalesOrderDetailID ON Archive_2012 (SalesOrderDetailID)
GO
ALTER PARTITION SCHEME [psArchive] NEXT USED [Archive2013];
GO

說(shuō)明:

“CREATE TABLE Archive_2012 (LIKE Sales.SalesOrderDetail);”表示在AdventureWorks中創(chuàng)建一個(gè)名為Archive_2012的表,該表的結(jié)構(gòu)與Sales.SalesOrderDetail相同;

“ALTER TABLE Archive_2012 ADD CONSTRAINT PK_Archive_2012 PRIMARY KEY(SalesOrderID, SalesOrderDetailID)”表示向一個(gè)已經(jīng)存在的表中添加一個(gè)主鍵索引;

“CREATE CLUSTERED INDEX CIX_SalesOrderID ON Archive_2012 (SalesOrderID)”表示為序列SalesOrderID添加聚簇索引;

“CREATE NONCLUSTERED INDEX IX_SalesOrderDetailID ON Archive_2012 (SalesOrderDetailID)”表示為列SalesOrderDetailID添加非聚簇索引;

“ALTER PARTITION SCHEME [psArchive] NEXT USED [Archive2013]”表示將分區(qū)Schema的下一個(gè)使用分區(qū)修改為名為Archive2013的新分區(qū)。

4.2 縱向分區(qū)

SQLServer還支持將其列屬性分裂為多個(gè)子集的功能,一般稱(chēng)為垂直分區(qū)。當(dāng)數(shù)據(jù)庫(kù)規(guī)模膨脹到一定程度后,可以采用垂直分區(qū)的方式來(lái)進(jìn)行數(shù)據(jù)管理,以保證數(shù)據(jù)庫(kù)的高效穩(wěn)定運(yùn)行。

具體實(shí)現(xiàn)方法如下:

-- 對(duì)表格Person.Person進(jìn)行垂直拆分
ALTER TABLE Person.Person 
DROP COLUMN Suffix, Title;
GO
CREATE TABLE Person.Name 
( 
    BusinessEntityID INT PRIMARY KEY, 
    FirstName VARCHAR(50), 
    LastName VARCHAR(50), 
    MiddleName VARCHAR(50) 
) 
GO
CREATE TABLE Person.Title 
( 
    BusinessEntityID INT PRIMARY KEY, 
    Title VARCHAR(50), 
    Suffix VARCHAR(10) 
);

說(shuō)明:

“ALTER TABLE Person.Person DROP COLUMN Suffix, Title;”表示將表格Person.Person中的列Suffix和Title刪除;

“CREATE TABLE Person.Name (BusinessEntityID INT PRIMARY KEY, FirstName VARCHAR(50), LastName VARCHAR(50), MiddleName VARCHAR(50));”表示創(chuàng)建了一個(gè)名為Person.Name的表,并為其每一行添加了BusinessEntityID、FirstName、LastName和MiddleName四個(gè)字段,其中主鍵為BusinessEntityID;

“CREATE TABLE Person.Title (BusinessEntityID INT PRIMARY KEY, Title VARCHAR(50), Suffix VARCHAR(10));”表示創(chuàng)建了一個(gè)名為Person.Title的表,并為其每一行添加了BusinessEntityID、Title和Suffix三個(gè)字段,其中主鍵為BusinessEntityID。

5. 總結(jié)

數(shù)據(jù)庫(kù)規(guī)模膨脹是SQLServer數(shù)據(jù)庫(kù)運(yùn)維中常見(jiàn)的問(wèn)題之一。本文介紹了一些緩解膨脹問(wèn)題的方法,包括增加內(nèi)存、數(shù)據(jù)壓縮、數(shù)據(jù)庫(kù)分區(qū)等。在實(shí)踐過(guò)程中,應(yīng)根據(jù)具體情況,采取適當(dāng)?shù)姆椒?,以達(dá)到最優(yōu)的緩解膨脹問(wèn)題的效果。

到此這篇關(guān)于sqlserver數(shù)據(jù)庫(kù)規(guī)模膨脹太大怎么優(yōu)化的文章就介紹到這了,更多相關(guān)sqlserver數(shù)據(jù)庫(kù)太大內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

扎囊县| 阜平县| 高唐县| 勐海县| 紫金县| 娱乐| 乌兰察布市| 南召县| 浙江省| 肃北| 湖北省| 察隅县| 油尖旺区| 陕西省| 特克斯县| 舞阳县| 洪江市| 舞阳县| 成武县| 峡江县| 成武县| 迁安市| 曲麻莱县| 克拉玛依市| 常宁市| 桃江县| 明水县| 喜德县| 阿拉善右旗| 谷城县| 克什克腾旗| 长泰县| 股票| 中江县| 永州市| 尉犁县| 夏津县| 濮阳市| 林周县| 张北县| 阿勒泰市|