經過IIS不能鏈接遠程數據庫的問題

近期遇到一個奇怪的問題:在調試MES程序時發現,若是鏈接的是遠程的SQL SERVER數據庫(經過了IIS),則提示鏈接失敗,就是常常見到的數據庫不容許遠程鏈接的錯誤提示;html

並且又測試瞭如下幾種狀況:數據庫

1. 在蕪湖與石家莊都遇到這種狀況,並且數據庫服務器端未作任何改動;安全

2. 使用IIS鏈接本地的數據庫正常;服務器

3. 別人的機器在調試程序時能夠正常地鏈接遠程數據庫;asp.net

4. 使用本人機器的SQL SERVER客戶端能夠正常訪問遠程數據庫;測試

5. 使用本人機器,不使用IIS,直接使用最基本的代碼鏈接遠程的SQL SERVER數據庫,一切正常;.net

6. 從新註冊asp.net到IIS,並重啓IIS,仍然鏈接失敗;調試

 

所以能夠確定是本人機器的緣由,並且這個問題確定出如今了使用IIS訪問遠程數據庫的過程當中。htm

最可能的緣由:blog

1. IIS的配置;

2. 安全權限方面的問題;

最後,終於從網上查到一個相似的問題,將問題解決;不然就要重作系統了。

解決辦法:

修改IIS應用程序池的設置:找到程序對應的應用程序池,在「高級設置」中找到「標識」,而後爲其內置帳戶選擇「localsystem」(原來是ApplicationPoolIdentity)。

參考:http://www.cnblogs.com/zhangronghua/archive/2008/10/07/1305597.html

 

可是,這種解決方案是否最好,或者應該還有其餘的解決辦法,後來又查了一下關於IIS的標識的資料,ApplicationPoolIdentity是IIS7.5中新增的,並且更推薦使用它,估計默認就應該是它,也許改其餘哪一個地方的權限,也能夠解決這種問題。

參考:IIS7.5中應用程序池標識是什麼 http://www.veryhuo.com/a/view/72397.html

相關文章
相關標籤/搜索