我使用SQLite的選擇,因爲數據庫我的離線C#桌面應用程序(WPF /的WinForms),但目前走投無路的MySQL數據庫方便地分發由於稅務局認證。可以將MySQL作爲嵌入式數據庫與脫機應用程序一起安裝嗎?
我主要擔心的是,我想知道如果我可以用MySQL
數據庫離線桌面應用程序,並通過URL分發.exe
,方便無人值守安裝。
可能嗎?
我使用SQLite的選擇,因爲數據庫我的離線C#桌面應用程序(WPF /的WinForms),但目前走投無路的MySQL數據庫方便地分發由於稅務局認證。可以將MySQL作爲嵌入式數據庫與脫機應用程序一起安裝嗎?
我主要擔心的是,我想知道如果我可以用MySQL
數據庫離線桌面應用程序,並通過URL分發.exe
,方便無人值守安裝。
可能嗎?
如SQLite的頁面Appropriate Uses For SQLite所示,像MySQL這樣的客戶端/服務器數據庫可以更好地適用於客戶端/服務器應用程序,大容量網站,非常大的數據集或高併發性。這不適用於你的離線應用程序,所以你應該使用一個被設計爲嵌入的數據庫(不一定是SQLite)。
MySQL有一個embedded server library,其可以直接連接到應用程序。使用C#時,MySQL庫鏈接到.NET MySQL數據庫驅動程序,因此使用嵌入式服務器需要重新編譯此驅動程序。而這樣的鏈接將觸發MySQL的GPL許可證。並且:
libmysqld
嵌入式服務器庫從MySQL 5.7.17開始已棄用,並將在MySQL 8.0中刪除。
這將有可能給自己安裝獨立的MySQL服務器;這在Installing MySQL on Microsoft Windows Using a noinstall Zip Archive中描述。 但是,這仍然會將MySQL服務器作爲單獨的進程或服務運行,這可能與計算機上的其他安裝衝突;您的安裝人員有責任正確配置該MySQL實例,以適應目標機器上遇到的任何環境。
你爲什麼會選擇在SQLite的SQL Server精簡? –
https://www.mysql.com/oem/ –
顯然SQL Server精簡版是由微軟棄用:https://connect.microsoft.com/SQLServer/feedback/details/776328/port-sql-compact-to- windows-rt, – Polyfun