Sql-Server

關於Sql server 2014 express edition

  • January 30, 2020

我需要知道在數據庫中添加另一個數據文件(比如說 MYDB)是否會有另外 10 GB 的大小,或者 10 GB 將是我們在數據庫中添加的所有數據文件的總大小。實際上我使用的是 SQL Server 2014 Express 版本,我們知道數據庫大小限制為 10 GB,因此一旦數據庫達到我不想要的 10 Gb,我必須將其存檔。

我的目的是問這個問題,一旦數據庫大小達到 10 GB,添加另一個數據文件可以幫助我避免歸檔數據庫並繼續使用同一個數據庫嗎?

Express Edition 的大小限制是針對數據庫大小,而不是數據文件大小。

您可以有十個 1GB 的文件,或一個 10GB 的文件。

如果您的數據大於 10GB,則需要將一些數據移動到不同的數據庫。

你能解決這個問題嗎?

當然。

假設您的數據庫有一個 5GB 的表,而其他所有表的總大小為 5GB,使您處於大小限制。

  1. 創建第二個數據庫,並將您的 5GB 表移動到該數據庫中。
  2. 刪除原始數據庫中的原始表。
  3. 在原數據庫中創建一個同義詞,以原表的名字命名,並將其指向新數據庫中的新表。
  4. 現有程式碼將“正常工作”,您的容量將擴展到 10GB 以上。

無論 Express 的數據庫中有多少文件,數據庫的總大小都不能超過 10GB。

但是,有很多解決方法和策略可以幫助緩解這種情況。

一些選項是:

  • 確保數據正確規範化以減小表的大小
  • 啟用壓縮(如果您升級到 2014 年之後 - 由於很多原因,您應該這樣做!)
  • 跨多個數據庫水平或垂直分區表
  • 盡可能使用最小的數據類型

我在一篇關於 SQL Server Express 大小限制策略的文章中對上述主題進行了更深入的討論。

引用自:https://dba.stackexchange.com/questions/258542