sp_configure (Transact-SQL)
適用対象: SQL Server
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
現在のサーバーのグローバル構成設定を表示または変更します。
注意
データベース レベルの構成オプションについては、「 ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL)」を参照してください。 ソフト 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 は 5 つの列を含む結果セットを返し、次の表に示すように、オプションをアルファベット順に昇順で並べ替えます。
config_valueとrun_valueの値は、自動的には同じではありません。 sp_configureを使用して構成設定を更新した後、システム管理者は RECONFIGURE または RECONFIGURE WITH OVERRIDE を使用して、実行中の構成値を更新する必要があります。 詳細については、「解説」を参照してください。
列名 | データ型 | 説明 |
---|---|---|
name | nvarchar(35) | 構成オプションの名前。 |
minimum | int | 構成オプションの最小値。 |
maximum | 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 SERVER 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 ステートメントにより動的に更新されます。その他のオプションを使用する場合は、サーバーの停止と再起動が必要になります。 たとえば、 最小サーバー メモリ オプションと 最大サーバー メモリ サーバー メモリ オプションは、データベース エンジンで動的に更新されます。そのため、サーバーを再起動せずに変更できます。 これに対し、 fill factor オプションの実行値を再構成するには、データベース エンジンを再起動する必要があります。
構成オプションで 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 SETTINGS サーバー レベルのアクセス許可が付与されている必要があります。 ALTER SETTINGS 権限は、 sysadmin 固定サーバー ロールと serveradmin 固定サーバー ロールでは暗黙のうちに付与されています。
例
A. 詳細構成オプションの一覧表示
次の例は、すべての構成オプションを設定および一覧表示する方法を示しています。 高度な構成オプションは、最初に を に1
設定show advanced options
することで表示されます。 このオプションを変更すると、パラメーターなしで を実行すると 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. 1 つの構成名の構成設定を一覧表示する
EXEC sp_configure @configname='hadoop connectivity';
E. Hadoop 接続を設定する
Hadoop 接続を設定するには、sp_configureの実行に加えて、さらにいくつかの手順が必要です。 完全な手順については、「 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)