Katalog SSIS

Berlaku untuk:SQL Server SSIS Integration Runtime di Azure Data Factory

Katalog SSISDB adalah titik pusat untuk bekerja dengan proyek Integration Services (SSIS) yang telah Anda sebarkan ke server Integration Services. Misalnya, Anda mengatur parameter proyek dan paket, mengonfigurasi lingkungan untuk menentukan nilai runtime untuk paket, menjalankan dan memecahkan masalah paket, dan mengelola operasi server Integration Services.

Catatan

Artikel ini menjelaskan Katalog SSIS secara umum, dan Katalog SSIS yang berjalan secara lokal. Anda juga dapat membuat Katalog SSIS di Azure SQL Database, dan menyebarkan dan menjalankan paket SSIS di Azure. Untuk informasi selengkapnya, lihat Mengangkat dan mengalihkan beban kerja SQL Server Integration Services ke cloud.

Meskipun Anda juga dapat menjalankan paket SSIS di Linux, Katalog SSIS tidak didukung di Linux. Untuk informasi selengkapnya, lihat Mengekstrak, mengubah, dan memuat data di Linux dengan SSIS.

Objek yang disimpan dalam katalog SSISDB mencakup proyek, paket, parameter, lingkungan, dan riwayat operasional.

Anda memeriksa objek, pengaturan, dan data operasional yang disimpan dalam katalog SSISDB , dengan mengkueri tampilan dalam database SSISDB . Anda mengelola objek dengan memanggil prosedur tersimpan dalam database SSISDB atau dengan menggunakan UI katalog SSISDB . Dalam banyak kasus, tugas yang sama dapat dilakukan di UI atau dengan memanggil prosedur tersimpan.

Untuk mempertahankan database SSISDB , disarankan agar Anda menerapkan kebijakan perusahaan standar untuk mengelola database pengguna. Untuk informasi tentang membuat rencana pemeliharaan, lihat Rencana Pemeliharaan.

Katalog SSISDB dan database SSISDB mendukung Windows PowerShell. Untuk informasi selengkapnya tentang menggunakan SQL Server dengan Windows PowerShell, lihat SQL Server PowerShell. Untuk contoh cara menggunakan Windows PowerShell untuk menyelesaikan tugas seperti menyebarkan proyek, lihat entri blog, SSIS dan PowerShell di SQL Server 2012, pada blogs.msdn.com.

Untuk informasi selengkapnya tentang menampilkan data operasi, lihat Memantau Paket yang Berjalan dan Operasi Lainnya.

Anda mengakses katalog SSISDB di SQL Server Management Studio dengan menyambungkan ke Mesin Database SQL Server lalu memperluas simpul Katalog Layanan Integrasi di Object Explorer. Anda mengakses database SSISDB di SQL Server Management Studio dengan memperluas simpul Database di Object Explorer.

Catatan

Anda tidak dapat mengganti nama database SSISDB .

Catatan

Jika instans SQL Server tempat database SSISDB dilampirkan, berhenti, atau tidak merespons, proses ISServerExec.exe berakhir. Pesan ditulis ke log Peristiwa Windows.

Jika sumber daya SQL Server gagal sebagai bagian dari failover kluster, paket yang sedang berjalan tidak dimulai ulang. Anda dapat menggunakan titik pemeriksaan untuk memulai ulang paket. Untuk informasi selengkapnya, lihat Memulai Ulang Paket dengan Menggunakan Titik Pemeriksaan.

Fitur dan kemampuan

Pengidentifikasi Objek Katalog

Saat Anda membuat objek baru di katalog, tetapkan nama ke objek. Nama objek adalah pengidentifikasi. SQL Server menentukan aturan karakter mana yang dapat digunakan dalam pengidentifikasi. Nama untuk objek berikut harus mengikuti aturan pengidentifikasi.

  • Folder

  • Project

  • Lingkungan

  • Parameter

  • Variabel lingkungan

Folder, Proyek, Lingkungan

Pertimbangkan aturan berikut saat mengganti nama folder, proyek, atau lingkungan.

  • Karakter yang tidak valid termasuk karakter ASCII/Unicode 1 hingga 31, kuotasi ("), kurang dari (<), lebih besar dari (>), pipa (|), backspace (\b), null (\0), dan tab (\t).

  • Nama mungkin tidak berisi spasi di depan atau di belakang.

  • @ tidak diperbolehkan sebagai karakter pertama, tetapi karakter berikutnya mungkin menggunakan @.

  • Panjang nama harus lebih besar dari 0 dan kurang dari atau sama dengan 128.

Parameter

Pertimbangkan aturan berikut saat memberi nama parameter.

  • Karakter pertama nama harus berupa huruf seperti yang didefinisikan dalam Standar Unicode 2.0, atau garis bawah (_).

  • Karakter berikutnya dapat berupa huruf atau angka seperti yang didefinisikan dalam Standar Unicode 2.0, atau garis bawah (_).

Variabel lingkungan

Pertimbangkan aturan berikut saat memberi nama variabel lingkungan.

  • Karakter yang tidak valid termasuk karakter ASCII/Unicode 1 hingga 31, kuotasi ("), kurang dari (<), lebih besar dari (>), pipa (|), backspace (\b), null (\0), dan tab (\t).

  • Nama mungkin tidak berisi spasi di depan atau di belakang.

  • @ tidak diperbolehkan sebagai karakter pertama, tetapi karakter berikutnya mungkin menggunakan @.

  • Panjang nama harus lebih besar dari 0 dan kurang dari atau sama dengan 128.

  • Karakter pertama nama harus berupa huruf seperti yang didefinisikan dalam Standar Unicode 2.0, atau garis bawah (_).

  • Karakter berikutnya dapat berupa huruf atau angka seperti yang didefinisikan dalam Standar Unicode 2.0, atau garis bawah (_).

Konfigurasi Katalog

Anda menyempurnakan perilaku katalog dengan menyesuaikan properti katalog. Properti katalog menentukan bagaimana data sensitif dienkripsi, dan bagaimana operasi dan data penerapan versi proyek dipertahankan. Untuk mengatur properti katalog, gunakan kotak dialog Properti Katalog atau panggil prosedur tersimpan catalog.configure_catalog (Database SSISDB). Untuk menampilkan properti, gunakan kotak dialog atau kueri catalog.catalog_properties (Database SSISDB). Anda mengakses kotak dialog dengan mengklik kanan SSISDB di Object Explorer.

Operasi dan Pembersihan Versi Proyek

Data status untuk banyak operasi dalam katalog disimpan dalam tabel database internal. Misalnya, katalog melacak status eksekusi paket dan penyebaran proyek. Untuk mempertahankan ukuran data operasi, Pekerjaan Pemeliharaan Server SSIS di SQL Server Management Studio digunakan untuk menghapus data lama. Pekerjaan SQL Server Agent ini dibuat saat Integration Services diinstal.

Anda dapat memperbarui atau menyebarkan ulang proyek Integration Services dengan menyebarkannya dengan nama yang sama ke folder yang sama di katalog. Secara default, setiap kali Anda menyebarkan ulang proyek, katalog SSISDB mempertahankan versi proyek sebelumnya. Untuk mempertahankan ukuran data operasi, Pekerjaan Pemeliharaan Server SSIS digunakan untuk menghapus versi lama proyek.

Untuk menjalankan Pekerjaan Pemeliharaan Server SSIS, SSIS membuat login SQL Server ##MS_SSISServerCleanupJobLogin##. Login ini hanya untuk penggunaan internal oleh SSIS.

Properti katalog SSISDB berikut menentukan bagaimana pekerjaan SQL Server Agent ini berakibat. Anda bisa menampilkan dan mengubah properti dengan menggunakan kotak dialog Properti Katalog atau dengan menggunakan catalog.catalog_properties (Database SSISDB) dan catalog.configure_catalog (Database SSISDB).

Bersihkan Log Secara Berkala
Langkah pekerjaan untuk pembersihan operasi berjalan ketika properti ini diatur ke True.

Periode Retensi (hari)
Menentukan usia maksimum data operasi yang diizinkan (dalam hari). Data yang lebih lama dihapus.

Nilai minimum adalah satu hari. Nilai maksimum hanya dibatasi oleh nilai maksimum data int SQL Server. Untuk informasi tentang jenis data ini, lihat int, bigint, smallint, dan tinyint (Transact-SQL).

Hapus Versi Lama Secara Berkala
Langkah pekerjaan untuk pembersihan versi proyek berjalan ketika properti ini diatur ke True.

Jumlah Maksimum Versi per Proyek
Menentukan berapa banyak versi proyek yang disimpan dalam katalog. Versi proyek yang lebih lama dihapus.

Algoritma Enkripsi

Properti Algoritma Enkripsi menentukan jenis enkripsi yang digunakan untuk mengenkripsi nilai parameter sensitif. Anda dapat memilih dari jenis enkripsi berikut.

  • AES_256 (default)

  • AES_192

  • AES_128

  • DESX

  • TRIPLE_DES_3KEY

  • TRIPLE_DES

  • DES

Saat Anda menyebarkan proyek Integration Services ke server Integration Services, katalog secara otomatis mengenkripsi data paket dan nilai sensitif. Katalog juga secara otomatis mendekripsi data saat Anda mengambilnya. Katalog SSISDB menggunakan tingkat perlindungan ServerStorage . Untuk informasi selengkapnya, lihat Kontrol Akses untuk Data Sensitif dalam Paket.

Mengubah algoritma enkripsi adalah operasi intensif waktu. Pertama, server harus menggunakan algoritma yang ditentukan sebelumnya untuk mendekripsi semua nilai konfigurasi. Kemudian, server harus menggunakan algoritma baru untuk mengenkripsi ulang nilai. Selama waktu ini, tidak boleh ada operasi Layanan Integrasi lainnya di server. Dengan demikian, untuk mengaktifkan operasi Integration Services agar terus tidak terganggu, algoritma enkripsi adalah nilai baca-saja dalam kotak dialog di Management Studio.

Untuk mengubah pengaturan properti Algoritma Enkripsi, atur database SSISDB ke mode pengguna tunggal lalu panggil prosedur tersimpan catalog.configure_catalog. Gunakan ENCRYPTION_ALGORITHM untuk argumen property_name . Untuk nilai properti yang didukung, lihat catalog.catalog_properties (Database SSISDB). Untuk informasi selengkapnya tentang prosedur tersimpan, lihat catalog.configure_catalog (Database SSISDB).

Untuk informasi selengkapnya tentang mode pengguna tunggal, lihat Mengatur Database ke Mode Pengguna tunggal. Untuk informasi tentang algoritma enkripsi dan enkripsi di SQL Server, lihat topik di bagian , Enkripsi SQL Server.

Kunci master database digunakan untuk enkripsi. Kunci dibuat saat Anda membuat katalog.

Tabel berikut ini mencantumkan nama properti yang diperlihatkan dalam kotak dialog Properti Katalog dan properti terkait dalam tampilan database.

Nama Properti (kotak dialog Properti Katalog) Nama Properti (tampilan database)
Nama Algoritma Enkripsi ENCRYPTION_ALGORITHM
Bersihkan Log Secara Berkala OPERATION_CLEANUP_ENABLED​
Periode Retensi (hari) RETENTION_WINDOW
Hapus Versi Lama Secara Berkala VERSION_CLEANUP_ENABLED
Jumlah Maksimum Versi per Proyek MAX_PROJECT_VERSIONS
Tingkat Pengelogan Default di seluruh server SERVER_LOGGING_LEVEL

Izin

Proyek, lingkungan, dan paket terkandung dalam folder yang merupakan objek yang dapat diamankan. Anda dapat memberikan izin ke folder, termasuk izin MANAGE_OBJECT_PERMISSIONS. MANAGE_OBJECT_PERMISSIONS memungkinkan Anda mendelegasikan administrasi konten folder kepada pengguna tanpa harus memberikan keanggotaan pengguna ke peran ssis_admin. Anda juga dapat memberikan izin ke proyek, lingkungan, dan operasi. Operasi termasuk menginisialisasi Layanan Integrasi, menyebarkan proyek, membuat dan memulai eksekusi, memvalidasi proyek dan paket, dan mengonfigurasi katalog SSISDB .

Untuk informasi selengkapnya tentang peran database, lihat Peran Tingkat Database.

Katalog SSISDB menggunakan pemicu DDL, ddl_cleanup_object_permissions, untuk menegakkan integritas informasi izin untuk keamanan SSIS. Pemicu diaktifkan ketika prinsipal database, seperti pengguna database, peran database, atau peran aplikasi database, dihapus dari database SSISDB.

Jika kepala sekolah telah memberikan atau menolak izin kepada prinsipal lain, cabut izin yang diberikan oleh pemberi izin, sebelum prinsipal dapat dihapus. Jika tidak, pesan kesalahan dikembalikan ketika sistem mencoba menghapus prinsipal. Pemicu menghapus semua rekaman izin di mana prinsipal database adalah penerima hibah.

Disarankan agar pemicu tidak dinonaktifkan karena memastikan bahwa tidak ada catatan izin tanpa sumber setelah prinsipal database dihilangkan dari database SSISDB .

Mengelola Izin

Anda dapat mengelola izin dengan menggunakan antarmuka pengguna SQL Server Management Studio, prosedur tersimpan, dan Microsoft.SqlServer.Management.IntegrationServices namespace layanan.

Untuk mengelola izin menggunakan antarmuka pengguna SQL Server Management Studio, gunakan kotak dialog berikut:

  • Untuk folder, gunakan halaman Izin dari Kotak Dialog Properti Folder.

  • Untuk proyek, gunakan halaman Izin di Kotak Dialog Properti Proyek.

Untuk mengelola izin menggunakan Transact-SQL, panggil catalog.grant_permission (Database SSISDB), catalog.deny_permission (Database SSISDB), dan catalog.revoke_permission (Database SSISDB). Untuk melihat izin efektif untuk prinsipal saat ini untuk semua objek, kueri catalog.effective_object_permissions (Database SSISDB). Topik ini menyediakan deskripsi berbagai jenis izin. Untuk menampilkan izin yang telah ditetapkan secara eksplisit kepada pengguna, kueri catalog.explicit_object_permissions (Database SSISDB).

Folder

Folder berisi satu atau beberapa proyek dan lingkungan dalam katalog SSISDB . Anda dapat menggunakan tampilan catalog.folders (SSISDB Database) untuk mengakses informasi tentang folder di katalog. Anda dapat menggunakan prosedur tersimpan berikut untuk mengelola folder:

Proyek dan Paket

Setiap proyek dapat berisi beberapa paket. Baik proyek maupun paket dapat berisi parameter dan referensi ke lingkungan. Anda dapat mengakses parameter dan referensi lingkungan dengan menggunakan Kotak Dialog Konfigurasi.

Anda dapat melakukan tugas proyek lain dengan memanggil prosedur tersimpan berikut:

Tampilan ini memberikan detail tentang paket, proyek, dan versi proyek.

Parameter

Anda menggunakan parameter untuk menetapkan nilai ke properti paket pada saat eksekusi paket. Untuk mengatur nilai parameter paket atau proyek dan untuk menghapus nilai, panggil catalog.set_object_parameter_value (Database SSISDB) dan catalog.clear_object_parameter_value (Database SSISDB). Untuk mengatur nilai parameter untuk instans eksekusi, panggil catalog.set_execution_parameter_value (Database SSISDB). Anda dapat mengambil nilai parameter default dengan memanggil catalog.get_parameter_values (Database SSISDB).

Tampilan ini menunjukkan parameter untuk semua paket dan proyek, dan nilai parameter yang digunakan untuk instans eksekusi.

Lingkungan Server, Variabel Server, dan Referensi Lingkungan Server

Lingkungan server berisi variabel server. Nilai variabel dapat digunakan saat paket dijalankan atau divalidasi di server Layanan Integrasi.

Prosedur tersimpan berikut memungkinkan Anda melakukan banyak tugas manajemen lain untuk lingkungan dan variabel.

Dengan memanggil prosedur tersimpan catalog.set_environment_variable_protection (Database SSISDB), Anda dapat mengatur bit sensitivitas untuk variabel.

Untuk menggunakan nilai variabel server, tentukan referensi antara proyek dan lingkungan server. Anda dapat menggunakan prosedur tersimpan berikut untuk membuat dan menghapus referensi. Anda juga dapat menunjukkan apakah lingkungan dapat berada di folder yang sama dengan proyek atau di folder yang berbeda.

Untuk detail selengkapnya tentang lingkungan dan variabel, kueri tampilan ini.

Eksekusi dan Validasi

Eksekusi adalah instans eksekusi paket. Panggil catalog.create_execution (Database SSISDB) dan catalog.start_execution (Database SSISDB) untuk membuat dan memulai eksekusi. Untuk menghentikan eksekusi atau validasi paket/proyek, panggil catalog.stop_operation (Database SSISDB).

Untuk menyebabkan paket yang sedang berjalan menjeda dan membuat file cadangan, panggil prosedur tersimpan catalog.create_execution_dump. File cadangan menyediakan informasi tentang eksekusi paket yang dapat membantu Anda memecahkan masalah eksekusi. Untuk informasi selengkapnya tentang membuat dan mengonfigurasi file cadangan, lihat Membuat File Cadangan untuk Eksekusi Paket.

Untuk detail tentang eksekusi, validasi, pesan yang dicatat selama operasi, dan informasi kontekstual yang terkait dengan kesalahan, kueri tampilan ini.

Anda dapat memvalidasi proyek dan paket dengan memanggil prosedur tersimpan catalog.validate_project (Database SSISDB) dan catalog.validate_package (Database SSISDB). Tampilan catalog.validations (SSISDB Database) menyediakan detail tentang validasi seperti referensi lingkungan server yang dipertimbangkan dalam validasi, apakah itu validasi dependensi atau validasi penuh, dan apakah runtime 32-bit atau runtime 64-bit digunakan untuk menjalankan paket.

Membuat Katalog SSIS

Setelah merancang dan menguji paket di SQL Server Data Tools, Anda dapat menyebarkan proyek yang berisi paket ke server Integration Services. Sebelum Anda dapat menyebarkan proyek ke server Layanan Integrasi, server harus berisi katalog SSISDB . Program penginstalan untuk SQL Server 2012 (11.x) tidak secara otomatis membuat katalog; Anda perlu membuat katalog secara manual dengan menggunakan instruksi berikut.

Anda dapat membuat katalog SSISDB di SQL Server Management Studio. Anda juga membuat katalog secara terprogram dengan menggunakan Windows PowerShell.

Untuk membuat katalog SSISDB di SQL Server Management Studio

  1. Buka SQL Server Management Studio.

  2. Koneksi ke Mesin Database SQL Server.

  3. Di Object Explorer, perluas simpul server, klik kanan simpul Katalog Layanan Integrasi, lalu klik Buat Katalog.

  4. Klik Aktifkan Integrasi CLR.

    Katalog menggunakan prosedur tersimpan CLR.

  5. Klik Aktifkan eksekusi otomatis prosedur tersimpan Layanan Integrasi di startup SQL Server untuk mengaktifkan prosedur tersimpan catalog.startup untuk dijalankan setiap kali instans server SSIS dimulai ulang.

    Prosedur tersimpan melakukan pemeliharaan status operasi untuk katalog SSISDB. Ini memperbaiki status paket apa pun yang berjalan jika instans server SSIS tidak berfungsi.

  6. Masukkan kata sandi, lalu klik Ok.

    Kata sandi melindungi kunci master database yang digunakan untuk mengenkripsi data katalog. Simpan kata sandi di lokasi yang aman. Disarankan agar Anda juga mencadangkan kunci master database. Untuk informasi selengkapnya, lihat Mencadangkan Kunci Master Database.

Untuk membuat katalog SSISDB secara terprogram

  1. Jalankan skrip PowerShell berikut:

    # Load the IntegrationServices Assembly  
    [Reflection.Assembly]::LoadWithPartialName("Microsoft.SqlServer.Management.IntegrationServices")  
    
    # Store the IntegrationServices Assembly namespace to avoid typing it every time  
    $ISNamespace = "Microsoft.SqlServer.Management.IntegrationServices"  
    
    Write-Host "Connecting to server ..."  
    
    # Create a connection to the server  
    $sqlConnectionString = "Data Source=localhost;Initial Catalog=master;Integrated Security=SSPI;"  
    $sqlConnection = New-Object System.Data.SqlClient.SqlConnection $sqlConnectionString  
    
    # Create the Integration Services object  
    $integrationServices = New-Object $ISNamespace".IntegrationServices" $sqlConnection  
    
    # Provision a new SSIS Catalog  
    $catalog = New-Object $ISNamespace".Catalog" ($integrationServices, "SSISDB", "P@assword1")  
    $catalog.Create()  
    
    

    Untuk contoh selengkapnya tentang cara menggunakan Windows PowerShell dan Microsoft.SqlServer.Management.IntegrationServices namespace layanan, lihat entri blog, SSIS dan PowerShell di SQL Server 2012, pada blogs.msdn.com. Untuk gambaran umum namespace layanan dan contoh kode, lihat entri blog, Sekilas Model Objek Terkelola Katalog SSIS, pada blogs.msdn.com.

Kotak Dialog Properti Katalog

Gunakan kotak dialog Properti Katalog untuk mengonfigurasi katalog SSISDB. Properti katalog menentukan bagaimana data sensitif dienkripsi, bagaimana operasi dan data penerapan versi proyek dipertahankan, dan kapan waktu operasi validasi habis. Katalog SSISDB adalah titik penyimpanan dan administrasi pusat untuk proyek, paket, parameter, dan lingkungan Layanan Integrasi.

Anda juga dapat melihat properti katalog dalam catalog.catalog_properties tampilan, dan mengatur properti dengan menggunakan prosedur tersimpan catalog.configure_catalog . Untuk informasi selengkapnya, lihat catalog.catalog_properties (Database SSISDB) dan catalog.configure_catalog (Database SSISDB).

Apa yang ingin Anda lakukan?

Buka Kotak Dialog Properti Katalog

  1. Buka SQL Server Management Studio.

  2. Koneksi Mesin Database Microsoft SQL Server.

  3. Di Object Explorer, perluas simpul Layanan Integrasi, klik kanan SSISDB, lalu klik Properti.

Mengonfigurasi Opsi

Opsi

Tabel berikut ini menjelaskan properti tertentu dalam kotak dialog dan properti terkait dalam catalog.catalog_properties tampilan.

Nama Properti (kotak dialog Properti Katalog) Nama Properti (tampilan catalog.catalog_properties) Deskripsi
Nama Algoritma Enkripsi ENCRYPTION_ALGORITHM Menentukan jenis enkripsi yang digunakan untuk mengenkripsi nilai parameter sensitif dalam katalog. Berikut ini adalah nilai yang mungkin:

DES

TRIPLE_DES

TRIPLE_DES_3KEY

DESPX

AES_128

AES_192

AES_256 (default)
Jumlah Maksimum Versi per Proyek MAX_PROJECT_VERSIONS Tentukan berapa banyak versi proyek yang disimpan dalam katalog. Versi proyek lama yang melebihi maksimum dihapus saat pekerjaan pembersihan versi proyek berjalan.
Bersihkan Log Secara Berkala OPERATION_CLEANUP_ENABLED Atur properti ke True untuk menunjukkan bahwa pekerjaan SQL Server Agent, pembersihan operasi, berjalan. Jika tidak, atur properti ke False.
Periode Retensi (hari) RETENTION_WINDOW Tentukan usia maksimum data operasi yang diizinkan (dalam hari). Data yang lebih lama dari jumlah hari yang ditentukan dihapus oleh pekerjaan Agen SQL, pembersihan operasi.

Mencadangkan, Memulihkan, dan Memindahkan Katalog SSIS

Berlaku untuk: SQL Server 2016 (13.x) dan versi Not supported. yang lebih baru Azure SQL DatabaseNot supported.Azure Synapse Analytics Analytics Not supported. Platform System (PDW)

SQL Server 2019 Integration Services (SSIS) menyertakan database SSISDB. Anda mengkueri tampilan dalam database SSISDB untuk memeriksa objek, pengaturan, dan data operasional yang disimpan dalam katalog SSISDB . Topik ini menyediakan instruksi untuk mencadangkan dan memulihkan database.

Katalog SSISDB menyimpan paket yang telah Anda sebarkan ke server Layanan Integrasi. Untuk informasi selengkapnya tentang katalog, lihat Katalog SSIS.

Untuk Mencadangkan Database SSIS

  1. Buka SQL Server Management Studio dan sambungkan ke instans SQL Server.

  2. Cadangkan kunci master untuk database SSISDB, dengan menggunakan pernyataan BACKUP MASTER KEY Transact-SQL. Kunci disimpan dalam file yang Anda tentukan. Gunakan kata sandi untuk mengenkripsi kunci master dalam file.

    Untuk informasi selengkapnya tentang pernyataan, lihat BACKUP MASTER KEY (Transact-SQL).

    Dalam contoh berikut, kunci master diekspor ke c:\temp directory\RCTestInstKey file. Kata LS2Setup! sandi digunakan untuk mengenkripsi kunci master.

    backup master key to file = 'c:\temp\RCTestInstKey'  
           encryption by password = 'LS2Setup!'  
    
    
  3. Cadangkan database SSISDB dengan menggunakan kotak dialog Database Cadangan di SQL Server Management Studio. Untuk informasi selengkapnya, lihat Cara: Mencadangkan Database (SQL Server Management Studio).

  4. Buat skrip CREATE LOGIN untuk ##MS_SSISServerCleanupJobLogin##, dengan melakukan hal-hal berikut. Untuk informasi selengkapnya, lihat MEMBUAT LOGIN (Transact-SQL).

    1. Di Object Explorer di SQL Server Management Studio, perluas simpul Keamanan lalu perluas node Login .

    2. Klik kanan ##MS_SSISServerCleanupJobLogin##, lalu klik Masuk Skrip sebagai>BUAT Ke>Jendela Editor Kueri Baru.

  5. Jika Anda memulihkan database SSISDB ke instans SQL Server tempat katalog SSISDB tidak pernah dibuat, buat skrip CREATE PROCEDURE untuk sp_ssis_startup, dengan melakukan hal-hal berikut. Untuk informasi selengkapnya, lihat CREATE PROCEDURE (Transact-SQL).

    1. Di Object Explorer, perluas simpul Database lalu perluas simpul Prosedur TersimpanProgrammability>master.>

    2. Klik kanan dbo.sp_ssis_startup, lalu klik Prosedur Tersimpan Skrip sebagai>BUAT Ke>Jendela Editor Kueri Baru.

  6. Konfirmasikan bahwa SQL Server Agent telah dimulai

  7. Jika Anda memulihkan database SSISDB ke instans SQL Server tempat katalog SSISDB tidak pernah dibuat, buat skrip untuk Pekerjaan Pemeliharaan Server SSIS dengan melakukan hal-hal berikut. Skrip dibuat di SQL Server Agent secara otomatis saat katalog SSISDB dibuat. Pekerjaan ini membantu membersihkan log operasi pembersihan di luar jendela retensi dan menghapus versi proyek yang lebih lama.

    1. Di Object Explorer, perluas simpul SQL Server Agent lalu perluas simpul Pekerjaan .

    2. Klik kanan Pekerjaan Pemeliharaan Server SSIS, lalu klik Pekerjaan Skrip sebagai>BUAT Ke>Jendela Editor Kueri Baru.

Untuk Memulihkan Database SSIS

  1. Jika Anda memulihkan database SSISDB ke instans SQL Server tempat katalog SSISDB tidak pernah dibuat, aktifkan runtime bahasa umum (clr) dengan menjalankan sp_configure prosedur tersimpan. Untuk informasi selengkapnya, lihat opsi sp_configure (Transact-SQL) dan clr diaktifkan.

    use master   
           sp_configure 'clr enabled', 1  
           reconfigure  
    
    
  2. Jika Anda memulihkan database SSISDB ke instans SQL Server tempat katalog SSISDB tidak pernah dibuat, buat kunci asimetris dan masuk dari kunci asimetris, dan berikan izin TIDAK AMAN ke login.

    Create Asymmetric Key MS_SQLEnableSystemAssemblyLoadingKey  
           FROM Executable File = 'C:\Program Files\Microsoft SQL Server\YourSQLServerDefaultCompatibilityLevel\DTS\Binn\Microsoft.SqlServer.IntegrationServices.Server.dll'  
    

    Anda dapat menemukan nilai untuk YourSQLServerDefaultCompatibilityLevel dari daftar tingkat kompatibilitas default SQL Server.

    Prosedur tersimpan CLR Integration Services memerlukan izin TIDAK AMAN untuk diberikan ke login karena login memerlukan akses tambahan ke sumber daya terbatas, seperti Microsoft Win32 API. Untuk informasi selengkapnya tentang izin kode TIDAK AMAN, lihat Membuat Assembly.

    Create Login ##MS_SQLEnableSystemAssemblyLoadingUser## FROM Asymmetric Key MS_SQLEnableSystemAssemblyLoadingKey   
    Grant Unsafe Assembly to ##MS_SQLEnableSystemAssemblyLoadingUser##    
    
  3. Pulihkan database SSISDB dari cadangan dengan menggunakan kotak dialog Pulihkan Database di SQL Server Management Studio. Untuk mengetahui informasi selengkapnya, lihat topik berikut:

  4. Jalankan skrip yang Anda buat di Untuk Mencadangkan Database SSIS untuk ##MS_SSISServerCleanupJobLogin##, sp_ssis_startup, dan Pekerjaan Pemeliharaan Server SSIS. Konfirmasikan bahwa SQL Server Agent telah dimulai.

  5. Jalankan pernyataan berikut untuk mengatur prosedur sp_ssis_startup untuk eksekusi otomatis. Untuk informasi selengkapnya, lihat sp_procoption (Transact-SQL).

    EXEC sp_procoption N'sp_ssis_startup','startup','on'  
    
  6. Petakan pengguna SSISDB ##MS_SSISServerCleanupJobUser## (database SSISDB) ke ##MS_SSISServerCleanupJobLogin##, dengan menggunakan kotak dialog Properti Masuk di SQL Server Management Studio.

  7. Pulihkan kunci master dengan menggunakan salah satu metode berikut. Untuk informasi selengkapnya tentang enkripsi, lihat Hierarki Enkripsi.

    • Metode 1

      Gunakan metode ini jika Anda telah melakukan pencadangan kunci master database, dan Anda memiliki kata sandi yang digunakan untuk mengenkripsi kunci master.

             Restore master key from file = 'c:\temp\RCTestInstKey'  
             Decryption by password = 'LS2Setup!' -- 'Password used to encrypt the master key during SSISDB backup'  
             Encryption by password = 'LS3Setup!' -- 'New Password'  
             Force  
      
      

      Catatan

      Konfirmasikan bahwa akun layanan SQL Server memiliki izin untuk membaca file kunci cadangan.

      Catatan

      Anda melihat pesan peringatan berikut ditampilkan di SQL Server Management Studio jika kunci master database belum dienkripsi oleh kunci master layanan. Abaikan pesan peringatan.

      Kunci master saat ini tidak dapat didekripsi. Kesalahan diabaikan karena opsi FORCE ditentukan.

      Argumen FORCE menentukan bahwa proses pemulihan harus berlanjut meskipun kunci master database saat ini tidak terbuka. Untuk katalog SSISDB, karena kunci master database belum dibuka pada instans tempat Anda memulihkan database, Anda akan melihat pesan ini.

    • Metode 2

      Gunakan metode ini jika Anda memiliki kata sandi asli yang digunakan untuk membuat SSISDB.

      open master key decryption by password = 'LS1Setup!' --'Password used when creating SSISDB'  
             Alter Master Key Add encryption by Service Master Key  
      
  8. Tentukan apakah skema katalog SSISDB dan biner Integration Services (rakitan ISServerExec dan SQLCLR) kompatibel, dengan menjalankan catalog.check_schema_version.

  9. Untuk mengonfirmasi bahwa database SSISDB telah berhasil dipulihkan, lakukan operasi terhadap katalog SSISDB seperti menjalankan paket yang telah disebarkan ke server Layanan Integrasi. Untuk informasi selengkapnya, lihat Menjalankan Paket Integration Services (SSIS).

Untuk Memindahkan Database SSIS

  • Ikuti instruksi untuk memindahkan database pengguna. Untuk informasi selengkapnya, lihat Memindahkan Database Pengguna.

    Pastikan Anda mencadangkan kunci master untuk database SSISDB dan melindungi file cadangan. Untuk informasi selengkapnya, lihat Untuk Mencadangkan Database SSIS.

    Pastikan bahwa objek relevan Integration Services (SSIS) dibuat di instans SQL Server baru tempat katalog SSISDB belum dibuat.

Meningkatkan Katalog SSIS (SSISDB)

Jalankan Wizard Peningkatan SSISDB untuk meningkatkan database Katalog SSIS, SSISDB, saat database lebih lama dari versi instans SQL Server saat ini. Database mungkin lebih lama ketika salah satu kondisi berikut ini benar.

  • Anda memulihkan database dari versi SQL Server yang lebih lama.

  • Anda tidak menghapus database dari Grup Ketersediaan AlwaysOn sebelum memutakhirkan instans SQL Server. Kondisi ini mencegah peningkatan otomatis database. Untuk informasi selengkapnya, lihat Meningkatkan SSISDB dalam grup ketersediaan.

Wizard hanya dapat memutakhirkan database pada instans server lokal.

Tingkatkan Katalog SSIS (SSISDB) dengan menjalankan Wizard Peningkatan SSISDB

  1. Cadangkan database Katalog SSIS, SSISDB.

  2. Di SQL Server Management Studio, perluas server lokal, lalu perluas Katalog Layanan Integrasi.

  3. Klik kanan pada SSISDB, lalu pilih Peningkatan Database untuk meluncurkan Wizard Peningkatan SSISDB. Atau luncurkan Wizard Peningkatan SSISDB dengan menjalankan C:\Program Files\Microsoft SQL Server\140\DTS\Binn\ISDBUpgradeWizard.exe dengan izin yang ditingkatkan di server lokal.

    Launch the SSISDB upgrade wizard

  4. Pada halaman Pilih Instans , pilih instans SQL Server di server lokal.

    Penting

    Wizard hanya dapat memutakhirkan database pada instans server lokal.

    Pilih kotak centang untuk menunjukkan bahwa Anda telah mencadangkan database SSISDB sebelum menjalankan wizard.

    Select the server in the SSISDB Upgrade Wizard

  5. Pilih Tingkatkan untuk memutakhirkan database Katalog SSIS.

  6. Pada halaman Hasil , tinjau hasilnya.

    Review the results in the SSISDB Upgrade Wizard

Always On untuk Katalog SSIS (SSISDB)

Fitur Grup Ketersediaan AlwaysOn adalah solusi ketersediaan tinggi dan pemulihan bencana yang menyediakan alternatif tingkat perusahaan untuk pencerminan database. Grup ketersediaan mendukung lingkungan failover untuk sekumpulan database pengguna yang diskrit, yang dikenal sebagai database ketersediaan, yang gagal bersama-sama. Untuk informasi selengkapnya, lihat Grup Ketersediaan AlwaysOn.

Untuk menyediakan ketersediaan tinggi untuk katalog SSIS (SSISDB) dan kontennya (proyek, paket, log eksekusi, dll.), Anda dapat menambahkan database SSISDB (sama seperti database pengguna lainnya) ke Grup Ketersediaan AlwaysOn. Ketika failover terjadi, salah satu node sekunder secara otomatis menjadi node utama baru.

Catatan

Grup ketersediaan yang terkandung, yang diperkenalkan di SQL Server 2022, belum didukung.

Penting

Ketika failover terjadi, paket yang sedang berjalan tidak dimulai ulang atau dilanjutkan.

Di bagian ini:

  1. Prasyarat

  2. Mengonfigurasi dukungan SSIS untuk Always On

  3. Meningkatkan SSISDB dalam grup ketersediaan

Prasyarat

Lakukan langkah-langkah prasyarat berikut sebelum mengaktifkan dukungan AlwaysOn untuk database SSISDB.

  1. Siapkan kluster failover Windows. Lihat Menginstal Fitur dan Alat Kluster Failover untuk posting blog Windows Server 2012 untuk instruksi. Instal fitur dan alat pada semua node kluster.

  2. Instal SQL Server 2016 dengan fitur Integration Services (SSIS) pada setiap node kluster.

  3. Aktifkan Grup Ketersediaan AlwaysOn untuk setiap instans SQL Server. Lihat Mengaktifkan Grup Ketersediaan AlwaysOn untuk detailnya.

Mengonfigurasi dukungan SSIS untuk Always On

Penting

  • Anda harus melakukan langkah-langkah ini pada simpul utama grup ketersediaan.
  • Anda harus mengaktifkan dukungan SSIS untuk Always Onsetelah menambahkan SSISDB ke Grup Ketersediaan AlwaysOn.

Langkah 1: Buat Katalog Layanan Integrasi

  1. Luncurkan SQL Server Management Studio dan sambungkan ke instans SQL Server di kluster yang ingin Anda tetapkan sebagai simpul utama grup ketersediaan tinggi AlwaysOn untuk SSISDB.

  2. Di Object Explorer, perluas simpul server, klik kanan simpul Katalog Layanan Integrasi, lalu klik Buat Katalog.

  3. Klik Aktifkan Integrasi CLR. Katalog menggunakan prosedur tersimpan CLR.

  4. Klik Aktifkan eksekusi otomatis prosedur tersimpan Layanan Integrasi di startup SQL Server untuk mengaktifkan prosedur tersimpan catalog.startup untuk dijalankan setiap kali instans server SSIS dimulai ulang. Prosedur tersimpan melakukan pemeliharaan status operasi untuk katalog SSISDB. Ini memperbaiki status paket apa pun yang berjalan jika dan ketika instans server SSIS turun.

  5. Masukkan kata sandi, lalu klik Ok. Kata sandi melindungi kunci master database yang digunakan untuk mengenkripsi data katalog. Simpan kata sandi di lokasi yang aman. Disarankan agar Anda juga mencadangkan kunci master database. Untuk informasi selengkapnya, lihat Mencadangkan Kunci Master Database.

Langkah 2: Tambahkan SSISDB ke Grup Ketersediaan AlwaysOn

Menambahkan database SSISDB ke Grup Ketersediaan AlwaysOn hampir sama dengan menambahkan database pengguna lain ke dalam grup ketersediaan. Lihat Menggunakan Wizard Grup Ketersediaan.

Berikan kata sandi yang Anda tentukan saat membuat Katalog SSIS di halaman Pilih Database dari wizard Grup Ketersediaan Baru.

New Availability Group

Penting

Untuk mencegah masalah dengan kunci master setelah failover, gunakan metode Database lengkap dan pencadangan log untuk menambahkan database SSISDB ke Grup Ketersediaan AlwaysOn.

Langkah 3: Aktifkan dukungan SSIS untuk Always On

Setelah Anda membuat Katalog Layanan Integrasi, klik kanan simpul Katalog Layanan Integrasi, dan klik Aktifkan Dukungan AlwaysOn. Anda akan melihat kotak dialog Aktifkan Dukungan untuk AlwaysOn berikut ini. Jika item menu ini dinonaktifkan, konfirmasikan bahwa Anda memiliki semua prasyarat yang terinstal dan klik Refresh.

Enable Support for Always On

Peringatan

Failover otomatis database SSISDB tidak didukung sampai Anda mengaktifkan Dukungan SSIS untuk AlwaysOn.

Replika sekunder yang baru ditambahkan dari grup ketersediaan AlwaysOn ditampilkan dalam tabel. Klik tombol Koneksi... untuk setiap replika dalam daftar dan masukkan kredensial autentikasi untuk menyambungkan ke replika. Akun pengguna harus menjadi anggota grup sysadmin pada setiap replika untuk mengaktifkan dukungan SSIS untuk Always On. Setelah Anda berhasil menyambungkan ke setiap replika, klik OK untuk mengaktifkan dukungan SSIS untuk AlwaysOn.

Jika opsi Aktifkan dukungan AlwaysOn pada menu konteks tampaknya dinonaktifkan setelah Anda menyelesaikan prasyarat lainnya, coba hal-hal berikut:

  1. Refresh menu konteks dengan mengklik opsi Refresh .
  2. Pastikan Anda menyambungkan ke simpul utama. Anda harus mengaktifkan dukungan AlwaysOn pada simpul utama.
  3. Pastikan versi SQL Server adalah 13.0 atau lebih tinggi. SSIS hanya mendukung Always On pada SQL Server 2016 dan versi yang lebih baru.

Meningkatkan SSISDB dalam grup ketersediaan

Jika Anda meningkatkan SQL Server dari versi sebelumnya, dan SSISDB berada dalam grup ketersediaan AlwaysOn, peningkatan Anda mungkin diblokir oleh aturan "SSISDB di Grup Ketersediaan AlwaysOn". Pemblokiran ini terjadi karena peningkatan berjalan dalam mode pengguna tunggal, sementara database ketersediaan harus berupa database multi-pengguna. Oleh karena itu, selama peningkatan atau patching, semua database ketersediaan termasuk SSISDB diambil secara offline dan tidak ditingkatkan atau di-patch. Untuk membiarkan peningkatan berlanjut, pertama-tama hapus SSISDB dari grup ketersediaan, lalu tingkatkan atau patch setiap simpul, lalu tambahkan SSISDB kembali ke grup ketersediaan.

Jika Anda diblokir oleh aturan "SSISDB di Grup Ketersediaan AlwaysOn", ikuti langkah-langkah ini untuk meningkatkan SQL Server.

  1. Hapus database SSISDB dari grup ketersediaan. Untuk informasi selengkapnya, lihat Menghapus Database Sekunder dari Grup Ketersediaan (SQL Server) dan Menghapus Database Utama dari Grup Ketersediaan (SQL Server).

  2. Klik Jalankan ulang di wizard pemutakhiran. Aturan "SSISDB di Grup Ketersediaan AlwaysOn" lolos.

  3. Klik Berikutnya untuk melanjutkan pemutakhiran.

  4. Setelah Anda memutakhirkan semua simpul, tambahkan database SSISDB kembali ke grup ketersediaan AlwaysOn. Untuk informasi selengkapnya, lihat Menambahkan Database ke Grup Ketersediaan (SQL Server).

Jika Anda tidak diblokir saat meningkatkan SQL Server, dan SSISDB berada dalam grup ketersediaan AlwaysOn, tingkatkan SSISDB secara terpisah setelah Anda meningkatkan mesin database SQL Server. Gunakan Wizard Peningkatan SSIS untuk memutakhirkan SSISDB seperti yang dijelaskan dalam prosedur berikut.

  1. Pindahkan database SSISDB dari grup ketersediaan, atau hapus grup ketersediaan jika SSISDB adalah satu-satunya database dalam grup ketersediaan. Luncurkan SQL Server Management Studio pada simpul utama grup ketersediaan untuk melakukan tugas ini.

  2. Hapus database SSISDB dari semua simpul replika.

  3. Tingkatkan database SSISDB pada simpul utama. DiObject Explorer di SQL Server Management Studio, perluas Katalog Layanan Integrasi, klik kanan SSISDB, lalu pilih Peningkatan Database. Ikuti instruksi di Wizard Peningkatan SSISDB untuk memutakhirkan database. Luncurkan Wizard Peningkatan SSIDB secara lokal pada simpul utama.

  4. Ikuti instruksi di Langkah 2: Tambahkan SSISDB ke Grup Ketersediaan AlwaysOn untuk menambahkan SSISDB kembali ke grup ketersediaan.

  5. Ikuti instruksi di Langkah 3: Aktifkan dukungan SSIS untuk Always On.

Katalog dan delegasi SSISDB dalam skenario double-hop

Secara default, pemanggilan paket SSIS jarak jauh yang disimpan di bawah katalog SSISDB tidak mendukung delegasi kredensial, kadang-kadang disebut sebagai lompatan ganda.

Bayangkan skenario di mana pengguna masuk ke komputer klien A dan meluncurkan SQL Server Management Studio (SSMS). Dari dalam SSMS, pengguna terhubung ke SQL Server yang dihosting di komputer B, yang memiliki katalog SSISDB. Paket SSIS disimpan di bawah katalog SSISDB ini dan paket pada gilirannya terhubung ke layanan SQL Server yang berjalan pada mesin C (paket juga dapat mengakses layanan lain). Ketika pengguna memanggil eksekusi paket SSIS dari komputer A, SSMS terlebih dahulu berhasil meneruskan kredensial pengguna dari mesin A ke mesin B (di mana proses runtime SSIS menjalankan paket). Proses runtime eksekusi SSIS (ISServerExec.exe) sekarang diperlukan untuk mendelegasikan kredensial pengguna dari mesin B ke mesin C agar eksekusi berhasil diselesaikan. Namun, delegasi kredensial tidak diaktifkan secara default.

Pengguna dapat mengaktifkan delegasi kredensial dengan memberikan hak Percayai pengguna ini untuk delegasi ke layanan apa pun (Hanya Kerberos) ke akun layanan SQL Server (pada mesin B), yang meluncurkan ISServerExec.exe sebagai proses anak. Proses ini disebut sebagai menyiapkan delegasi yang tidak dibatasi atau delegasi terbuka untuk akun layanan SQL Server. Sebelum Anda memberikan hak ini, pertimbangkan apakah memenuhi persyaratan keamanan organisasi Anda.

SSISDB tidak mendukung delegasi yang dibatasi. Dalam lingkungan double-hop, jika akun layanan SQL Server yang menghosting katalog SSISDB (mesin B dalam contoh kami) disiapkan untuk delegasi yang dibatasi, ISServerExec.exe tidak akan dapat mendelegasikan kredensial ke komputer ketiga (mesin C). Ini berlaku untuk skenario di mana Windows Credential Guard diaktifkan, yang secara wajib memerlukan delegasi yang dibatasi untuk disiapkan.

Konten Terkait