首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >到SQL server的连接突然停止工作。

到SQL server的连接突然停止工作。
EN

Stack Overflow用户
提问于 2020-09-27 09:32:56
回答 1查看 234关注 0票数 0

我以前让它起作用的。我所做的唯一改变就是通过生成脚本并在服务器中导入数据库来导出数据库。

网络服务器: IIS / ASP.NET Web应用程序

连接字符串:

代码语言:javascript
复制
  <add key="ConnectionString" value="Data Source=SERVER; 
Initial Catalog=tkl;Persist Security Info=True;
User ID=tkl;Password=PASS; Connection Lifetime=150; 
Connect Timeout=150; Pooling=true;Min Pool Size=20;Max Pool Size=500" />

错误:

代码语言:javascript
复制
  2020-09-27 05:23:44.6361|ERROR|System.Data.SqlClient.SqlException (0x80131904): 
Cannot open database "tkl" requested by the login. The login failed.
    Login failed for user 'tkl'.
       at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling, SqlAuthenticationProviderManager sqlAuthProviderManager)

用户' TKL‘既存在于TKL数据库中,也存在于Server上。我不知道这里出了什么问题。可能我需要设置一些权限。任何帮助都很感谢.

更新:

SQL日志:

登录用户“tkl”失败。原因:未能打开显式指定的数据库“tkl”。客户:

同时启用了窗口和SQL身份验证。我也可以尝试发布“tkl”用户对象权限。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-27 10:02:09

错误告诉您,LOGIN无法访问要连接的数据库。仅仅因为数据库具有与服务器上的USER名称相同的LOGIN,并不意味着LOGIN可以访问数据库。

USER对象通过SID映射到LOGIN对象,而不是名称。这意味着您可以有两个对象,它们的不同名称相互映射,以及两个名称相同的对象没有相互映射。

最有可能的是,在这里,您只需要使用ALTER USER来更正映射:

代码语言:javascript
复制
USE YourDatabase;
GO

ALTER USER tkl WITH LOGIN = tkl;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64086945

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档