阻止了对组件,Sever数据常见难点

数据库

exec sp_configure ‘show advanced options’,1 reconfigure
exec sp_configure ‘Ad Hoc Distributed Queries’,1 reconfigure
SELECT * into T_System_Organization_bak_20180308
from openrowset (‘SQLOLEDB’ , ’10.***.***.***,端口 ; ‘用户名’ ;
‘密码’ ,[数据库名称].dbo.表名)
exec sp_configure ‘Ad Hoc Distributed Queries’,0 reconfigure
exec sp_configure ‘show advanced options’,0 reconfigure

一、执行存储过程内存持续不下降,解决方案。

SQL Server 阻止了对组件 \’Ad Hoc Distributed Queries\’ 的访问

ALTER procedure [dbo].[ClearMemory]   
as
begin 
–清除所有缓存 
DBCC FREEPROCCACHE
DBCC FREESESSIONCACHE
DBCC FREESYSTEMCACHE(‘All’)
DBCC DROPCLEANBUFFERS
–打开高级配置 
exec sp_configure ‘show advanced options’, 1 
–设置最大内存值,清除现有缓存空间 
exec sp_configure ‘max server memory’, 512 
EXEC (‘RECONFIGURE’) 
–设置等待时间 
WAITFOR DELAY ’00:00:01′ 
–重新设置最大内存值 
EXEC  sp_configure ‘max server memory’, 6000 
EXEC (‘RECONFIGURE’) 
–关闭高级配置 
exec sp_configure ‘show advanced options’,0
end 

    在Sql Server中查询一下Excel文件的时候出现问题:
SELECT *  FROM OPENROWSET( ‘MICROSOFT.JET.OLEDB.4.0′,’Excel
8.0;IMEX=1;HDR=YES;DATABASE=D:\a.xls’,[sheet1$])
    结果提示:
    SQL Server 阻止了对组件 ‘Ad Hoc Distributed Queries’ 的
STATEMENT’OpenRowset/OpenDatasource’
的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用
sp_configure 启用 ‘Ad Hoc Distributed Queries’。有关启用 ‘Ad Hoc
Distributed Queries’ 的详细信息,请参阅 SQL Server 联机丛书中的
“外围应用配置器”。
查询相关资料,找到解决方法:

二、SQL Server 阻止了对组件 ‘Ad
Hoc Distributed Queries’ 的 STATEMENT
‘OpenRowset…

    启用Ad Hoc Distributed Queries:
exec sp_configure ‘show advanced options’,1
reconfigure
exec sp_数据库,configure ‘Ad Hoc Distributed Queries’,1
reconfigure
    使用完成后,关闭Ad Hoc Distributed Queries:
exec sp_configure ‘Ad Hoc Distributed Queries’,0
reconfigure
exec sp_configure ‘show advanced options’,0
reconfigure

**错误:消息15281,级别16,状态1,第1 行
 SQL Server 阻止了对组件’Ad Hoc Distributed
Queries’ 的STATEMENT ‘OpenRowset/OpenDatasource’ 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用sp_configure 启用’Ad
Hoc Distributed Queries’。有关启用’Ad Hoc Distributed
Queries’ 的详细信息,请参阅SQL
Server 联机丛书中的”外围应用配置器”。**

SELECT   *
FROM      OPENDATASOURCE(
         ‘SQLOLEDB’,
         ‘Data Source=ServerName;User ID=sa;Password=sa’
         ).DataBaseName.dbo.Table

解决办法:  –启用Ad Hoc Distributed Queries:新建查询,输入

 

 exec sp_configure ‘show advanced options’,1

本文来自CSDN博客,转载请标明出处:

reconfigure

exec sp_configure ‘Ad Hoc Distributed Queries’,1

reconfigure

 

–使用完成后,关闭Ad Hoc Distributed Queries:

exec sp_configure ‘Ad Hoc Distributed
Queries’,0

reconfigure

exec sp_configure ‘show advanced options’,0
reconfigure  

 

  

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图