我正在開發一個小型應用程序,該應用程序將用作使用MySQL作爲後端數據庫的Web應用程序的查看器(排序儀表板)。該應用程序將只做SELECT,沒有INSERT或UPDATE或任何改變數據的東西。我知道構建此應用程序的首選方法是創建一個可訪問數據庫的Web服務,然後讓客戶端應用程序調用Web服務。這樣你可以真正保護你的MySQL數據庫只允許本地主機訪問。實際上如何不安全地直接從應用程序訪問MySQL?
另一方面,擁有Web服務會提高應用程序所需的複雜性和資源。我不僅需要編寫這個過程兩次,我必須編寫兩套測試套件和集成測試,並且由於客戶端是用.net c#編寫的,而在php的後端,我必須開發某種交換格式並保留在整個開發過程中在兩種語言和IDE之間切換。
我可能會寫這個服務,但是我想知道的是那裏的體驗是什麼?我瘋狂地考慮直接從客戶端訪問MySQL,或者甲骨文的優秀工程師爲保護他們的數據庫做了不錯的工作,至少對於只有讀權限的用戶來說。
通常可以這樣做。創建MySql用戶並賦予它們對錶的特定權限,並僅允許他們選擇。讓人們使用他們的MySql用戶登錄。我也不明白爲什麼不。 – sinni800
數以百萬計的PHP網頁直接從視圖中訪問MySQL(=單個PHP腳本來完成創建HTML的全部內容) – CodeZombie
如果您的應用中只有有限的讀取查詢類型,我會堅持使用只是因爲它比較容易編寫,比如5個查詢以json/csv或其他方式返回數據,不需要外部php庫,沒有IDE等等。否則,我會遠程連接,但如果我沒有任何東西隱藏在數據庫中(表格列未在應用程序中使用)。 – ashein