1. 程式人生 > >無法開啟登入所請求的資料庫 "XXX"。登入失敗。 使用者 'IIS APPPOOL\XXX' 登入失敗。

無法開啟登入所請求的資料庫 "XXX"。登入失敗。 使用者 'IIS APPPOOL\XXX' 登入失敗。

為什麼會出現這種情況,是因為web.config的資料連線設定成了這個樣子:

 <add name="DbContext" connectionString="Data Source=localhost;Initial Catalog=CMS;Integrated Security=True;Max Pool Size=512;Min Pool Size=5;Connection Lifetime=15;connect timeout = 15;" providerName="System.Data.SqlClient" />

這裡設定了integrated security=True ,整合安全模式為真。在這種情況下要求網站程式池賬號與sqlserver執行使用的賬號一致。 我的應用程式池賬號:

我的sqlserver賬號:

明顯不同·。這裡可以把應用程式池賬號設定為network service,sqlserver的執行賬號也設定為network service,就可以避免此錯誤。這是第一種解決辦法。也是網上最多的一種解決辦法。

還有另外一種解決辦法,這種網上少。就是更改web.config的連線串。去掉整合模式,也就是去掉integrated security=True 。改成此種: