ALTER RESOURCE GOVERNOR (Transact-SQL)

Berlaku untuk:SQL ServerAzure SQL Managed Instance

Pernyataan ini digunakan untuk melakukan tindakan Resource Governor berikut di SQL Server:

  • Menerapkan perubahan konfigurasi yang ditentukan saat CREATE|ALTER|DROP WORKLOAD GROUP atau CREATE|ALTER|DROP RESOURCE POOL atau CREATE|ALTER|Pernyataan DROP EXTERNAL RESOURCE POOL dikeluarkan.

  • Mengaktifkan atau menonaktifkan Resource Governor.

  • Mengonfigurasi klasifikasi untuk permintaan masuk.

  • Reset grup beban kerja dan statistik kumpulan sumber daya.

  • Mengatur operasi I/O maksimum per volume disk.

Konvensi sintaks transact-SQL

Sintaksis

ALTER RESOURCE GOVERNOR   
      { DISABLE | RECONFIGURE }  
    | WITH ( CLASSIFIER_FUNCTION = { schema_name.function_name | NULL } )  
    | RESET STATISTICS  
    | WITH ( MAX_OUTSTANDING_IO_PER_VOLUME = value )   
[ ; ]  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

Argumen

MENONAKTIFKAN
Menonaktifkan Resource Governor. Menonaktifkan Resource Governor memiliki hasil berikut:

  • Fungsi pengklasifikasi tidak dijalankan.

  • Semua koneksi baru secara otomatis diklasifikasikan ke dalam grup default.

  • Permintaan yang dimulai sistem diklasifikasikan ke dalam grup beban kerja internal.

  • Semua grup beban kerja dan pengaturan kumpulan sumber daya yang ada diatur ulang ke nilai defaultnya. Dalam hal ini, tidak ada peristiwa yang diaktifkan ketika batas tercapai.

  • Pemantauan sistem normal tidak terpengaruh.

  • Perubahan konfigurasi dapat dilakukan, tetapi perubahan tidak berlaku sampai Resource Governor diaktifkan.

  • Setelah memulai ulang SQL Server, Resource Governor tidak akan memuat konfigurasinya, tetapi sebaliknya hanya akan memiliki grup dan kumpulan default dan internal.

KONFIGURASI ULANG
Ketika Resource Governor tidak diaktifkan, KONFIGURASI ULANG mengaktifkan Resource Governor. Mengaktifkan Resource Governor memiliki hasil berikut:

  • Fungsi pengklasifikasi dijalankan untuk koneksi baru sehingga beban kerja mereka dapat ditetapkan ke grup beban kerja.

  • Batas sumber daya yang ditentukan dalam konfigurasi Resource Governor dihormati dan diberlakukan.

  • Permintaan yang ada sebelum mengaktifkan Resource Governor dipengaruhi oleh perubahan konfigurasi apa pun yang dibuat saat Resource Governor dinonaktifkan.

Saat Resource Governor berjalan, KONFIGURASI ULANG menerapkan perubahan konfigurasi apa pun yang diminta saat CREATE|ALTER|DROP WORKLOAD GROUP atau CREATE|ALTER|DROP RESOURCE POOL atau CREATE|ALTER|Pernyataan DROP EXTERNAL RESOURCE POOL dijalankan.

Penting

ALTER RESOURCE GOVERNOR RECONFIGURE harus dikeluarkan agar perubahan konfigurasi diterapkan.

CLASSIFIER_FUNCTION = { schema_name. function_name | NULL }
Mendaftarkan fungsi klasifikasi yang ditentukan oleh schema_name.function_name. Fungsi ini mengklasifikasikan setiap sesi baru dan menetapkan permintaan sesi dan kueri ke grup beban kerja. Ketika NULL digunakan, sesi baru secara otomatis ditetapkan ke grup beban kerja default.

RESET STATISTIK
Mengatur ulang statistik pada semua grup beban kerja dan kumpulan sumber daya. Untuk informasi selengkapnya, lihat sys.dm_resource_governor_workload_groups (Transact-SQL) dan sys.dm_resource_governor_resource_pools (Transact-SQL).

MAX_OUTSTANDING_IO_PER_VOLUME = nilai
Berlaku untuk: SQL Server 2014 (12.x) dan yang lebih baru.

Mengatur operasi I/O antrean maksimum per volume disk. Operasi I/O ini dapat dibaca atau ditulis dalam berbagai ukuran. Nilai maksimum untuk MAX_OUTSTANDING_IO_PER_VOLUME adalah 100. Ini bukan persen. Pengaturan ini dirancang untuk menyetel tata kelola sumber daya IO dengan karakteristik IO volume disk. Pengaturan ini memberikan pemeriksaan keamanan tingkat sistem yang memungkinkan SQL Server memenuhi IOPS minimum untuk kumpulan sumber daya meskipun kumpulan lain memiliki MAX_IOPS_PER_VOLUME diatur ke tidak terbatas. Untuk informasi selengkapnya tentang MAX_IOPS_PER_VOLUME, lihat MEMBUAT KUMPULAN SUMBER DAYA.

Keterangan

ALTER RESOURCE GOVERNOR DISABLE, ALTER RESOURCE GOVERNOR RECONFIGURE, DAN ALTER RESOURCE GOVERNOR RESET STATISTICS tidak dapat digunakan di dalam transaksi pengguna.

Parameter RECONFIGURE adalah bagian dari sintaks Resource Governor dan tidak boleh dikacaukan dengan RECONFIGURE, yang merupakan pernyataan DDL terpisah.

Sebaiknya kenali status Resource Governor sebelum Anda menjalankan pernyataan DDL. Untuk informasi selengkapnya, lihat Resource Governor.

Izin

Memerlukan izin SERVER KONTROL.

Contoh

J. Memulai Resource Governor

Ketika SQL Server pertama kali diinstal Resource Governor dinonaktifkan. Contoh berikut memulai Resource Governor. Setelah pernyataan dijalankan, Resource Governor berjalan dan dapat menggunakan grup beban kerja dan kumpulan sumber daya yang telah ditentukan sebelumnya.

ALTER RESOURCE GOVERNOR RECONFIGURE;  

B. Menetapkan sesi baru ke grup default

Contoh berikut menetapkan semua sesi baru ke grup beban kerja default dengan menghapus fungsi pengklasifikasi yang ada dari konfigurasi Resource Governor. Ketika tidak ada fungsi yang ditetapkan sebagai fungsi pengklasifikasi, semua sesi baru ditetapkan ke grup beban kerja default. Perubahan ini hanya berlaku untuk sesi baru. Sesi yang ada tidak terpengaruh.

ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = NULL);  
GO  
ALTER RESOURCE GOVERNOR RECONFIGURE;  

C. Membuat dan mendaftarkan fungsi pengklasifikasi

Contoh berikut membuat fungsi pengklasifikasi bernama dbo.rgclassifier_v1. Fungsi ini mengklasifikasikan setiap sesi baru berdasarkan nama pengguna atau nama aplikasi dan menetapkan permintaan sesi dan kueri ke grup beban kerja tertentu. Sesi yang tidak dipetakan ke nama pengguna atau aplikasi yang ditentukan ditetapkan ke grup beban kerja default. Fungsi pengklasifikasi kemudian didaftarkan dan perubahan konfigurasi diterapkan.

-- Store the classifier function in the master database.  
USE master;  
GO  
SET ANSI_NULLS ON;  
GO  
SET QUOTED_IDENTIFIER ON;  
GO  
CREATE FUNCTION dbo.rgclassifier_v1() RETURNS sysname   
WITH SCHEMABINDING  
AS  
BEGIN  
-- Declare the variable to hold the value returned in sysname.  
    DECLARE @grp_name AS sysname  
-- If the user login is 'sa', map the connection to the groupAdmin  
-- workload group.   
    IF (SUSER_NAME() = 'sa')  
        SET @grp_name = 'groupAdmin'  
-- Use application information to map the connection to the groupAdhoc  
-- workload group.  
    ELSE IF (APP_NAME() LIKE '%MANAGEMENT STUDIO%')  
        OR (APP_NAME() LIKE '%QUERY ANALYZER%')  
            SET @grp_name = 'groupAdhoc'  
-- If the application is for reporting, map the connection to  
-- the groupReports workload group.  
    ELSE IF (APP_NAME() LIKE '%REPORT SERVER%')  
        SET @grp_name = 'groupReports'  
-- If the connection does not map to any of the previous groups,  
-- put the connection into the default workload group.  
    ELSE  
        SET @grp_name = 'default'  
    RETURN @grp_name  
END;  
GO  
-- Register the classifier user-defined function and update the   
-- the in-memory configuration.  
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION=dbo.rgclassifier_v1);  
GO  
ALTER RESOURCE GOVERNOR RECONFIGURE;  
GO  

D. Mereset Statistik

Contoh berikut mengatur ulang semua grup beban kerja dan statistik kumpulan sumber daya.

ALTER RESOURCE GOVERNOR RESET STATISTICS;  

E. Mengatur opsi MAX_OUTSTANDING_IO_PER_VOLUME

Contoh berikut mengatur opsi MAX_OUTSTANDING_IO_PER_VOLUME ke 20.

ALTER RESOURCE GOVERNOR  
WITH (MAX_OUTSTANDING_IO_PER_VOLUME = 20);   

Lihat Juga

BUAT KUMPULAN SUMBER DAYA (Transact-SQL)
UBAH KUMPULAN SUMBER DAYA (Transact-SQL)
DROP RESOURCE POOL (Transact-SQL)
BUAT KUMPULAN SUMBER DAYA EKSTERNAL (Transact-SQL)
JATUHKAN KUMPULAN SUMBER DAYA EKSTERNAL (Transact-SQL)
MENGUBAH KUMPULAN SUMBER DAYA EKSTERNAL (Transact-SQL)
CREATE WORKLOAD GROUP (Transact-SQL)
UBAH GRUP BEBAN KERJA (Transact-SQL)
DROP WORKLOAD GROUP (Transact-SQL)
Resource Governor
sys.dm_resource_governor_workload_groups (T-SQL)
sys.dm_resource_governor_resource_pools (T-SQL)