[英]can I use localdb for development and mssql server as production?
[英]Since LocalDB is for development purpose, then use what DB for production?
我在LocalDB
和SQL Server Express之間有點混淆。 我從網站上讀到, LocalDB
是SQL Server Express( 源代碼 )的改進版本。 我認為這意味着LocalDB
正在取代SQL Server Express。
然而令人困惑的是,在幾個網站上也提到LocalDB
僅用於開發目的,並不代表生產用途。
在這種情況下,我將在我的計算機上使用LocalDB
對我的Web應用程序進行開發和測試。 由於LocalDB
是SQL Server Express的替代品而且也不用於生產用途,那么當我准備發布我的應用程序時,我應該使用什么數據庫(除了完整的SQL Server,如果我沒有錢)?
我認為這意味着LocalDB正在取代SQL Server Express。
你的假設不正確。 繼續閱讀你鏈接的文章......
LocalDB不是SQL Server Express的替代品 - 它是SQL Server Express陣容的補充。 雖然LocalDB適用於開發人員,但常規SQL Server Express將繼續作為免費SQL Server版本存在,與更高版本的SQL Server版本完全兼容並可輕松升級。
您仍然可以使用SQL Server Express或更高版本的SQL Server進行生產。 或者更好的是,從數據庫中抽象出您的應用程序,以便您可以使用任何服務器(MySQL,Oracle等)
LocalDB只是適用於開發用途的SqlExpress的特殊版本。
如果您正在嘗試正確獲取表,視圖和存儲過程,則每次啟動計算機時都不需要運行SqlExpress實例。 您不需要DB服務器來接受端口1433上的傳入連接並驗證用戶名和密碼。 等等
過去,SqlExpress是單獨安裝的。 它未集成到Visual Studio和ASP.NET。 它就像IIS和IIS Express,沒有人使用IIS Express來托管購物網站,但是將代碼放在localhost中很方便。 LocalDB是相同的概念,您使用的SqlServer輕量級版本並未針對性能進行優化,而是在您需要它時才開始執行代碼。
我在生產中使用過SqlExpress沒有問題,其他許多人也這樣做了。 只要你沒有達到極限,它就會非常好,只有一小部分應用確實需要更多。 我建議你直接針對sql express開發(localdb直到最近才存在,我仍然針對sql express開發)並在生產中使用它,直到你的應用程序變得非常流行或空間限制讓你覺得需要升級。
當然你可以使用其他rdbms甚至nosql dbs(比如ravendb或mongodb),這取決於你想要托管應用程序的位置或你對rdbms的體驗等等
這取決於托管和您想要執行的管理量。 正如您所提到的,完整的SQL Server是一個選項,但許可成本可能很高。
PostgreSQL是另一個受歡迎的選擇,效果非常好,而且是免費的。
我最喜歡的選擇是Azure SQL 。 定價很小,特別是對於小型數據庫,它消除了大量管理的需要,並且您仍然可以通過Visual Studio獲得出色的工具支持。
不應在生產環境中使用LocalDB和SQL Server Express,因為:
SQL Server Express在某些方面受到限制,例如CPU,內存,數據庫大小等。如果您正在編寫查詢,則需要確保它將在1000萬行上生成,而您無法在本地支持
SQL Server Express有關於虛擬化的限制,您無法實時遷移它等。
LocalDB將您置於“神沙盒”中。
SQL Server Express和標准之間的完全比較就在這里
我建議使用SQL Server Standard或PostgreSQL。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.