簡體   English   中英

SQL Server 2008 R2 Express還原

[英]SQL Server 2008 R2 Express restore

我正在從事將Visual c#用作前端,將SQL Server 2008 R2 Express用作后端的項目。

現在,我知道SQL Server Express數據庫的大小限制為10 GB,因此,當達到選擇限制時,我已經編寫了用於數據庫備份的代碼,一旦備份成功,便清空了數據庫。

我想知道什么是最好的還原備份文件的方法,這樣我當前的應用程序后端(早些時候已清空)就不會受到干擾。

如果我在當前數據庫中還原相同的文件,可以嗎?在這種情況下,我有一個問題要問,這是否會影響我的應用程序正常工作,因為我的應用程序是實時的並且每隔15分鍾運行一次。 間隔將一些值存儲在數據庫中。

是否需要編寫其他實用程序來查看舊數據..?

每天大約有50 MB的數據插入到數據庫中,因此大約需要8個月才能達到選擇大小(根據我的粗略計算)。 並且就應用程序的性質而言,用戶將不會頻繁使用存檔數據。 請考慮一下並向我建議方法。

提前致謝..!!

如果將數據輸入到全新的數據庫服務器中,則舊查詢將不適用於新的數據庫服務器。 由於SQL Express的限制不是每個數據庫,而是每個數據庫服務器。 您可以創建一個新的SQL Express服務器,鏈接您的服務器,並使用鏈接的服務器創建查詢( 如何創建鏈接的服務器@ msdn

您將需要調整查詢。

如果現在這樣查詢數據:

SELECT em.Name, em.Telefone FROM employees AS em

您還需要引用數據庫。

SELECT [server1\db1].dbo.em.Name, [server1\db1].dbo.em.Telefone FROM [server1\db1].dbo.employees AS em

對於您當前的數據庫,以及

SELECT [server2\backup].dbo.em.Name, [server2\backup].dbo.em.Telefone FROM [server2\backup].dbo.em.Name

可能會這樣,但我不建議這樣做。 如果您已經超過了10GB的數據,那么您的表可能很大。 鏈接服務器上的每個表都已完全復制到您的服務器,這可能會導致嚴重的網絡通信,並且需要花費相當長的時間才能執行。

我會考慮獲得SQL Standard版本。

希望我能正確回答您的問題,但請考慮以下建議:
一個數據庫(“當前數據庫”),用於存儲實時數據。

當達到大小時,將其轉儲(或復制mdf + ldf)以存檔。
並與時間戳一起存儲(FROM-TO)。

需要數據時,會將相關的mdf作為新的“離線”數據庫附加。
(您可以使用連接字符串將MDF文件附加到SQL Server。)
並使用該連接而不是實時連接。

該應用程序可以在在線數據庫上順利運行。
在閱讀,加載等時...
從臨時附加和分離的數據庫文件完成。

看一下: 連接字符串以連接到.MDF,以了解如何將MDF附加到SQL Server實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM