RT 我之前一直用的是 VS2015 自带的 SQL server 本地数据库,验证方式是 windows 身份验证 现在准备把部署本地 IIS 上, IIS 貌似不支持 windows 身份验证连接数据库,但我在 VS 上修改的数据库连接就会报错 求助怎么解决这个问题?
1
bdbai 2016-05-15 09:18:10 +08:00 via Android 1
检查一下 Debug 和 Release 两个版本的 Web.config 中连接字符串有没有出入?
|
6
bdbai 2016-05-15 09:48:51 +08:00 via Android 1
|
9
jeansfish 2016-05-15 10:27:15 +08:00 1
Integrated Security=True 改成 false 或者删掉,如果你要用用户名密码的话
|
11
andrewpsy 2016-05-15 10:47:20 +08:00 1
要不用 userid+password 要不用 integrated security, 两个一起用是怎么个意思。
|
12
CBBing OP |
14
andrewpsy 2016-05-15 10:51:57 +08:00 1
@CBBing 你是什么版本的 MSQL ?我从来没见过 AttachDbFilename 。
你把 DataSouce 拆开变成: DataSource=(localdb);initial category=mssqllocaldb 然后去掉 AttachDbFilename 试试。 |
16
andrewpsy 2016-05-15 10:55:46 +08:00 1
你是了这个没有?
<add name="AccountsContext" connectionString="Data Source=(LocalDb);Initial Category=MSSQLLocalDB;UserID=sa;Password=CBB123xyz" providerName="System.Data.SqlClient"/> |
21
beginor 2016-05-15 11:13:18 +08:00 via Android 1
IIS 的话需要修改应用程序池账户,默认的程序池账户权限太低,,话说 localdb 的性能没得说,就是有限制数据文件大小和网络访问
|
23
beginor 2016-05-15 11:21:32 +08:00 via Android 1
|
28
qiyuey 2016-05-15 11:51:24 +08:00 via Android 1
用专门的数据库服务器,不要用 localDb
|
30
qiyuey 2016-05-15 11:55:17 +08:00 via Android 1
@CBBing 数据量不大就直接导出 localDb 到 SQL 文件,然后再导入 Sql Server 里
|
31
jeansfish 2016-05-15 11:56:38 +08:00 1
|
32
jeansfish 2016-05-15 11:56:50 +08:00 1
这个呢?
|
34
jeansfish 2016-05-15 12:09:01 +08:00 1
Google 搜 IIS localdb 第一个就是这个
|
35
andrewpsy 2016-05-15 12:15:02 +08:00 1
@CBBing 我不甘心开了虚拟机用 VS2015 自己试了一下,以下:
0. 打开 VS2015 的 Sql Server Object Explorer 1. 展开 (localdb)\MSSQLLocalDB 2. 右键点击你的数据库,菜单里找到“ new query ”点击,输入以下三句后点击“ execute ” CREATE LOGIN [CBBing] WITH PASSWORD = 'CBB123xyz'; CREATE USER [CBBing] FOR LOGIN [CBBing]; exec sp_addrolemember 'db_owner', 'CBBing' 4. 把 connectionstring 改成:<add name="AccountsContext" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=E:\CNSOFT\MVCDEMO\MVCDEMO\APP_DATA\ACCOUNTS.MDF;UserID=CBBing;Password=CBB123xyz" providerName="System.Data.SqlClient"/> |
37
jsq2627 2016-05-15 19:50:31 +08:00 1
最好不要在完整 IIS 下用 LocalDB ,问题比较多
https://blogs.msdn.microsoft.com/sqlexpress/2011/12/08/using-localdb-with-full-iis-part-1-user-profile/ https://blogs.msdn.microsoft.com/sqlexpress/2011/12/08/using-localdb-with-full-iis-part-2-instance-ownership/ 要不就 IIS Express + LocalDB ,要不 IIS + SQL Server Express 。 LocalDB 本来就是特意为 IIS Express 设计的。 |