SqlException 服务器主体无法在当前安全上下文下访问数据库

遇到一个错误如下

System.Data.SqlClient.SqlException
  HResult=0x80131904
  Message=服务器主体 "用户名" 无法在当前安全上下文下访问数据库 "数据库名"。
  Source=.Net SqlClient Data Provider
  StackTrace:
<无法计算异常堆栈跟踪>

解决方案
查看看到哪些数据库开了trustworthy属性,命令如下:
SELECT name, database_id, is_trustworthy_on FROM sys.databases,默认就msdb开的有。

要打开数据库trustworthy属性,命令如下:
ALTER DATABASE 数据库名 SET TRUSTWORTHY ON

授权用户访问,命令如下:

ALTER AUTHORIZATION ON DATABASE::数据库名 TO [用户名]

原文地址:https://www.cnblogs.com/812931637Z/p/10814740.html

时间: 2024-12-11 11:49:32

SqlException 服务器主体无法在当前安全上下文下访问数据库的相关文章

sqlserver 服务器主体 无法在当前安全上下文下访问数据库

今天使用sqlserver,发现了一个问题,就是使用 insert into 数据库名.dbo.表名(字段) values(值) 这样语句的时候,会返回错误: sqlserver 服务器主体 无法在当前安全上下文下访问数据库. 于是在网上找了一下资料,发现是因为trustworthy数据库属性用于指明 SQL Server 实例是否信任该数据库以及其中的内容.默认情况下,此设置为 OFF,但是可以使用 ALTER DATABASE 语句将其设置为 ON. 查看看到哪些数据库开了trustwort

sql server service broker中调用存储过程执行跨库操作,不管怎么设置都一直提示 服务器主体 &quot;sa&quot; 无法在当前安全上下文下访问数据库 &quot;dbname&quot;。

用sql server自带的消息队列service borker,调用存储过程中,执行了一个跨库的操作,先是用了一个用户,权限什么都给够了,但是一直提示 服务器主体 "user" 无法在当前安全上下文下访问数据库 "dbname". 想着是架构方面的问题,换sa还是不行.查到微软的一篇文章 提示需要开数据库的 ALTER DATABASE current_db SET TRUSTWORTHY ON 我把跨的那个库设置了还是不行.最后自己写测试代码,代码如下: cre

如果在本地搭一个服务器和mysql数据库环境,如果使用java来访问数据库

我们可以使用speedamp来搭一个服务器环境,可以在http://download.csdn.net/detail/baidu_nod/7630265下载 解压后无需安装直接可以使用,点击SpeedAMP.exe,然后可以通过http://localhost/phpmyadmin/index.php来访问本地数据库 java可以通过jdbc来访问数据库,比较重要的是下载一个mysql-connector-java-5.1.22-bin.jar文件,然后在java工程中引用, 在代码里可以这样来

Linux服务器集群架构部署搭建(六)数据库服务器MySQL编译安装及主从同步配置(1)

命运是大海,当你能够畅游时,你就要纵情游向你的所爱,因为你不知道狂流什么会到来,卷走一切希望与梦想. 作者:燁未央_Estelle声明:测试学习,不足之处,欢迎指正. 第一章 数据库企业应用场景 1.1 数据库的企业应用 MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性.MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言.MySQL软件采用了双授权政策,它分为社区版和商业版,由于其体积小.速度快.总

php中apache服务器使用及配置④ apache虚拟主机 web访问时序图

虚拟主机的配置 思考问题!http://localhost/news.html http://www.sohu.comhttp://www.taobao.com.cn目前我们是 http://localhost/myblog/需求我希望http://www.shunping.comhttp://www.sohu.com配置虚拟主机的步骤如下:1. 启用 httpd-vhosts.conf在 httpd.conf 文件中# Virtual hosts ,虚拟主机Include conf/extra

跨服务器访问数据库

如果两个数据库在不同的服务器实例上,那么可以先建立链接服务器,然后再查询: --1.建立链接服务器,通过@datasrc指定数据源,适合链接其他多种数据库 EXEC master.dbo.sp_addlinkedserver @server = N'Link', @srvproduct='ms', @provider=N'SQLNCLI', @datasrc=N'远程服务器ip,端口' EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Link

使用云监控实现GPU云服务器的GPU监控和报警(下)-云监控插件监控

摘要: 目录 使用云监控实现GPU云服务器的GPU监控和报警(上) - 自定义监控 使用云监控实现GPU云服务器的GPU监控和报警(下)-云监控插件监控 1 背景 上一篇文章我们介绍了如何使用阿里云云监控服务提供的自定义监控功能,利用自定义监控提供的API或者SDK,通过自定义脚本可以将GP. 1 背景上一篇文章我们介绍了如何使用阿里云云监控服务提供的自定义监控功能,利用自定义监控提供的API或者SDK,通过自定义脚本可以将GPU云主机内采集的GPU数据上报,在云监控控制台上添加相应的GPU监控

SQL Server 服务器主体拥有一个或多个端点无法删除;错误15141

一.问题描述 当前数据库实例之前已经加入过一个域环境同时也是alwayson集群的一个副本,现在已经退出了以前的域加入一个新域,而且配置的数据库启动服务的域用户和密码和之前的一样.重新使用之前已经存在的域用户登入数据库提示用户名不存在,而且用户无法删除提示已经存在端点,查找发现这个端点就是创建Alwayson时生成的. 二.问题处理 USE [master] GO /****** Object: Endpoint [Hadr_endpoint] Script Date: 2017/9/20 17

关于在阿里云ESC服务器解析域名并绑定服务器IP后上传文件通过域名访问步骤教程

第一步:登录阿里云官网,获取服务器ECS的指定公网IP地址. 1.输入阿里云官网账号进入首页,如下图: 2.点击进入"管理控制台",如下图: 3.点击"云服务器ECS",进入你购买的服务器概览界面,如下图: 4.点击左侧"实例"选项,进入你名下服务器信息界面,如下图:注意你购买服务器所在地. 获取服务器公网地址. 第二步:登录你所购买域名的供应商进行解析域名绑定服务器IP地址:如(万网)(现万网与阿里云整合在一起,所以你再阿里云也可以解析域名到你