2016-09-14 125 views
1

我試圖通過閱讀MSDN: SQL Server 2016 Express LocalDBMSDN: SQL Server Express LocalDB and SQL Server Express以及包括confusion about SQL Server Express and localdb在內的許多SO帖子瞭解LocalDB,但我仍不明白什麼是LocalDB。我瞭解並使用了SQL Server Express和SQL Server CE。瞭解localDB與SQL Server Express和SQL Server CE的關係

問題:

的LocalDB ...必要的SQL Server基礎架構自動 創建和啓動

我的理解是,如果使用的LocalDB來處理應用程序的數據庫,無論是開發商也沒有部署應用程序的客戶端機器需要安裝沉重的SQL Server Express,而只需安裝更輕的LocalDB。那麼,如果沒有安裝SQL Server Express,localDB可以「創建(d)並啓動(編輯)」SQL Server?如果localDB

...一旦安裝,LocalDB是SQL Server Express的一個實例,可以創建和打開SQL Server數據庫。數據庫的系統數據庫文件存儲在通常隱藏的用戶本地AppData路徑中。

如果開發者或客戶端可以在不安裝SQL Server的情況下使用localDB,那麼localDB如何成爲未安裝的東西的實例?或者,localDB是一個不完整的SQL Server Express版本,它不需要單擊..click..click ..進行配置。本質上localDB像SQL Server CE一樣工作,其中localDB在AppData中使用一些隱藏的「文件」來創建數據庫,而SQL Server CE使用該DLL來生成數據庫?

SqlLocalDB.msi程序到計算機

上安裝必要的文件,如果客戶端仍然需要安裝的LocalDB(沿是不是真的便攜式與如SQL Server CE應用程序),那麼爲什麼不只需安裝SQL Server Express?無論如何,localDB或SQL Server Express都高於100MB,並且需要單獨安裝,但是使用localDB又有什麼意義?

+0

localDB僅用於開發。基本上沒有優化的輕量級Sql Server。您不希望將其用於大數據 – Steve

+0

我建議您在dba.stackexchange.com上提問此問題 –

回答

1

LocalDB是一個面向程序員的版本SQL Server Express需要像SQL Server Express一樣安裝。

與SQL Server Express的,它安裝爲Windows服務,與您的Windows操作系統啓動 - 但它僅在需要時(當你的應用程序啓動時,或者當您與SqlLocalDb命令手動啓動它啓動在線工具)。

不過的LocalDB IS的SQL Server 快速(未精簡版)。它使用相同的.mdf.ldf數據庫文件,如和SQL Server,沒有的SQL Server CE的.sdf文件格式的臺式機/服務器版本。

1

我們在使用便攜式計算機的現場代理人的項目中使用了localdb。

  1. 的LocalDB的功能比的SQL Server CE更好的(我不記得CE缺少什麼,但它是對項目很重要),你應該檢討的功能差異。

  2. 另一個優點是數據庫被存儲在用戶文件夾中,這使得筆記本電腦的其他非管理員用戶無法看到。這使我們能夠在用戶之間重用甚至共享筆記本電腦,而不會混淆數據 - 這是一個不錯的功能。

  3. 最後,可以將dbs(帶點功夫)複製到開發/支持端並進行恢復/附加以進行故障排除。它們是完整的.mdf/.ldf數據庫文件。

在安裝產品後,您必須使用命令行(sqllocaldb實用程序)創建實例。這只是我們的安裝應用程序的一部分。