sp_configure (Transact-SQL)
适用于: SQL Server Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
显示或更改当前服务器的全局配置设置。
注意
有关数据库级配置选项,请参阅 ALTER DATABA标准版 SCOPED CONFIGURATION (Transact-SQL)。 若要配置 Soft-NUMA,请参阅 Soft-NUMA (SQL Server)。
语法
-- Syntax for SQL Server
sp_configure [ [ @configname = ] 'option_name'
[ , [ @configvalue = ] 'value' ] ]
-- Syntax for Parallel Data Warehouse
-- List all of the configuration options
sp_configure
[;]
-- Configure Hadoop connectivity
sp_configure [ @configname= ] 'hadoop connectivity',
[ @configvalue = ] { 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 }
[;]
RECONFIGURE
[;]
参数
[ @configname = ] 'option_name'
配置选项的名称。 option_name 的数据类型为 varchar(35),默认值为 NULL。 SQL Server 数据库引擎可识别属于配置名称的任何唯一字符串。 如果未指定该参数,则返回选项的完整列表。
有关可用配置选项及其设置的信息,请参阅服务器配置选项(SQL Server)。
[ @configvalue = ] 'value'
新配置设置。 value 的数据类型为 int,默认值为 NULL。 最大值取决于各个选项。
若要查看每个选项的最大值,请参阅 sys.configurations 目录视图的最大列。
返回代码值
0(成功)或 1(失败)
结果集
在没有参数的情况下执行时, sp_configure 返回一个结果集,其中包含五列,按升序顺序对选项进行排序,如下表所示。
config_value和run_value的值不会自动等效。 使用 sp_configure 更新配置设置后,系统管理员必须使用 RECONFIGURE 或 RECONFIGURE WITH OVERRIDE 更新正在运行的配置值。 有关详细信息,请参阅“备注”部分。
列名称 | 数据类型 | 说明 |
---|---|---|
name | nvarchar(35) | 配置选项的名称。 |
最小值 | int | 配置选项的最小值。 |
最大值 | int | 配置选项的最大值。 |
config_value | int | 使用 sp_configure (sys.configurations.value 中的 值)设置配置选项的值。 有关这些选项的详细信息,请参阅服务器配置选项(SQL Server)和 sys.configurations(Transact-SQL)。 |
run_value | int | 当前正在运行的配置选项值(sys.configurations.value_in_use 中的值)。 有关详细信息,请参阅 sys.configurations (Transact-SQL)。 |
注解
使用 sp_configure 显示或更改服务器级设置。 若要更改数据库级设置,请使用 ALTER DATABASE
。 若要更改仅影响当前用户会话的设置,请使用 SET
该语句。
某些服务器配置选项只能通过 ALTER 标准版RVER CONFIGURATION (Transact-SQL)使用。
SQL Server 大数据群集
某些操作(包括配置服务器(实例级)设置或手动将数据库添加到可用性组)需要连接到 SQL Server 实例。 某些操作(例如 sp_configure
、RESTORE DATABASE
或属于可用性组的数据库中的任何 DDL 命令)需要连接到 SQL Server 实例。 默认情况下,大数据群集不包含用于连接到实例的终结点。 必须手动公开此终结点。
有关说明,请参阅连接到主副本上的数据库。
更新运行的配置值
为选项指定新值时,结果集将在config_value列中显示此值。 此值最初不同于run_value列中的值,其中显示了当前正在运行的配置值。 若要更新run_value列中正在运行的配置值,系统管理员必须运行 RECONFIGURE 或 RECONFIGURE WITH OVERRIDE。
RECONFIGURE 和 RECONFIGURE WITH OVERRIDE 对每个配置选项都有效。 但是,基本 RECONFIGURE 语句会拒绝处于合理范围之外或可能导致选项冲突的任何选项值。 例如,如果恢复间隔值大于 60 分钟,或者相关性掩码值与关联 I/O 掩码值重叠,则 RECONFIGURE 将生成错误。 与此相反,RECONFIGURE WITH OVERRIDE 则接受具有正确数据类型的任何选项值,并使用指定的值强制进行重新配置。
注意
不合适的选项值会给服务器实例的配置造成不利影响。 请谨慎使用 RECONFIGURE WITH OVERRIDE。
RECONFIGURE 语句可以动态更新某些选项,而其他选项的更新则需要停止服务器再重新启动才能实现。 例如,最小服务器内存和最大服务器内存选项在 数据库引擎 中动态更新;因此,可以在不重启服务器的情况下更改它们。 相比之下,重新配置填充因子选项的运行值需要重启数据库引擎。
在配置选项上运行 RECONFIGURE 后,可以通过执行 sp_configure“option_name”来查看该选项是否已动态更新。 run_value和config_value列中的值应与动态更新的选项匹配。 还可以通过查看 sys.configurations 目录视图is_dynamic列来检查查看哪些选项是动态的。
更改也会写入 SQL Server 错误日志。
注意
如果指定值太高,则run_value列反映了数据库引擎已默认为动态内存的事实,而不是使用无效的设置。
有关详细信息,请参阅 RECONFIGURE (Transact-SQL)。
高级选项
某些配置选项(例如 关联掩码 和 恢复间隔)被指定为高级选项。 默认情况下,无法查看和更改这些选项。 若要使其可用,请将“ 显示高级选项 ”配置选项设置为 1。
注意
当“显示高级选项”选项设置为 1 时,此设置将应用于所有用户。 建议仅在完成需要查看高级选项的任务时暂时使用此状态并切换回 0。
有关配置选项及其设置的详细信息,请参阅服务器配置选项(SQL Server)。
权限
默认情况下,所有用户都具备不带参数或仅带第一个参数的 sp_configure 的执行权限。 若要使用这两个参数执行sp_configure以更改配置选项或运行 RECONFIGURE 语句,必须授予 ALTER 标准版TTINGS 服务器级权限。 ALTER SETTINGS 权限由 sysadmin 和 serveradmin 固定服务器角色隐式持有。
示例
A. 列出高级配置选项
以下示例显示如何设置并列出所有的配置选项。 先将 show advanced options
设置为 1
,便可显示高级配置选项。 更改该选项后,不带参数执行 sp_configure
将会显示全部配置选项。
USE master;
GO
EXEC sp_configure 'show advanced options', '1';
以下是显示的消息:“配置选项 'show advanced options' 已从 0 改为 1。 请运行 RECONFIGURE 语句进行安装。”
运行 RECONFIGURE
并显示全部配置选项:
RECONFIGURE;
EXEC sp_configure;
B. 更改配置选项
以下示例将系统 recovery interval
设置为 3
分钟。
USE master;
GO
EXEC sp_configure 'recovery interval', '3';
RECONFIGURE WITH OVERRIDE;
示例:Analytics Platform System (PDW)
°C 列出所有可用的配置设置
以下示例显示如何列出所有的配置选项。
EXEC sp_configure;
结果返回选项名称,后跟该选项的最小值和最大值。 config_value是 Azure Synapse Analytics 在重新配置完成后将使用的值。 run_value 是当前正在使用的值。 config_value 和 run_value 通常是相同的,除非该值正在进行更改。
D. 列出一个配置名称的配置设置
EXEC sp_configure @configname='hadoop connectivity';
E. 设置 hadoop 连接
除了运行sp_configure之外,设置 Hadoop 连接还需要执行几个步骤。 有关完整过程,请参阅 CREATE EXTERNAL DATA SOURCE (Transact-SQL)。
另请参阅
ALTER SERVER CONFIGURATION (Transact-SQL)
RECONFIGURE (Transact-SQL)
SET 语句 (Transact-SQL)
服务器配置选项 (SQL Server)
ALTER DATABASE (Transact-SQL)
系统存储过程 (Transact-SQL)
sys.configurations (Transact-SQL)
ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)
软件 NUMA (SQL Server)
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈