Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Topik ini menjelaskan cara membuat titik akhir pencerminan database yang menggunakan Autentikasi Windows di SQL Server dengan menggunakan Transact-SQL. Untuk mendukung pencerminan database atau grup ketersediaan AlwaysOn, setiap instans SQL Server memerlukan titik akhir pencerminan database. Instans server hanya dapat memiliki satu titik akhir pencerminan database, yang memiliki satu port. Titik akhir pencerminan database dapat menggunakan port apa pun yang tersedia di sistem lokal saat titik akhir dibuat. Semua sesi pencerminan database pada instans server mendengarkan port tersebut, dan semua koneksi masuk untuk pencerminan database menggunakan port tersebut.
Penting
Jika titik akhir pencerminan database ada dan sudah digunakan, kami sarankan Anda menggunakan titik akhir tersebut. Menghapus endpoint yang sedang digunakan akan mengganggu sesi yang sedang berlangsung.
Keamanan
Metode autentikasi dan enkripsi instans server dibuat oleh administrator sistem.
Peringatan
Algoritma RC4 tidak digunakan lagi. Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Kami menyarankan agar Anda menggunakan AES.
Izin
Memerlukan izin CREATE ENDPOINT, atau keanggotaan dalam peran server tetap sysadmin. Untuk informasi selengkapnya, lihat GRANT Izin Titik Akhir (Transact-SQL).
Menggunakan T-SQL
Untuk Membuat Titik Akhir Pencerminan Database yang Menggunakan Autentikasi Windows
Sambungkan ke instans SQL Server yang ingin Anda gunakan untuk membuat endpoint pencerminan database.
Dari bilah Standar, klik Kueri Baru.
Tentukan apakah titik akhir pencerminan database sudah ada dengan menggunakan pernyataan berikut:
SELECT name, role_desc, state_desc FROM sys.database_mirroring_endpoints;Penting
Jika titik akhir pencerminan database sudah ada untuk instans server, gunakan titik akhir tersebut untuk sesi lain yang Anda buat pada instans server.
Untuk menggunakan Transact-SQL untuk membuat titik akhir yang akan digunakan dengan Autentikasi Windows, gunakan
CREATE ENDPOINTpernyataan. Pernyataan ini mengambil bentuk umum berikut:CREATE ENDPOINT *\<endpointName>* STATE=STARTED AS TCP ( LISTENER_PORT = *\<listenerPortList>* ) FOR DATABASE_MIRRORING ( [ AUTHENTICATION = **WINDOWS** [ *\<authorizationMethod>* ] ] [ [**,**] ENCRYPTION = **REQUIRED** [ ALGORITHM { *\<algorithm>* } ] ] [**,**] ROLE = *\<role>* )Di mana:
<endpointName> adalah nama unik untuk titik akhir pencerminan database instans server.
STARTED menetapkan bahwa endpoint akan dijalankan dan mulai mendengarkan koneksi yang masuk. Titik akhir pencerminan basis data biasanya dibuat dengan status STARTED. Atau, Anda dapat memulai sesi dalam status STOP (default) atau status DISABLED.
<listenerPortList> adalah nomor port tunggal (nnnn) yang digunakan server untuk mendengarkan pesan pencerminan database. Hanya TCP yang diizinkan; menentukan protokol lain menyebabkan kesalahan.
Nomor port hanya dapat digunakan sekali per sistem komputer. Titik akhir pencerminan database dapat menggunakan port apa pun yang tersedia di sistem lokal saat titik akhir dibuat. Untuk mengidentifikasi port yang saat ini digunakan oleh titik akhir TCP pada sistem, gunakan pernyataan Transact-SQL berikut:
SELECT name, port FROM sys.tcp_endpoints;Penting
Setiap instans server memerlukan satu dan hanya satu port pendengar unik.
Untuk Autentikasi Windows, opsi AUTENTIKASI bersifat opsional, kecuali Anda ingin titik akhir hanya menggunakan NTLM atau Kerberos untuk mengautentikasi koneksi. <authorizationMethod> menentukan metode yang digunakan untuk mengautentikasi koneksi sebagai salah satu hal berikut: NTLM, KERBEROS, atau NEGOSIASI. Nilai default, NEGOTIATE, membuat endpoint menggunakan protokol negosiasi Windows untuk memilih NTLM atau Kerberos. Negosiasi memungkinkan koneksi dengan atau tanpa autentikasi, tergantung pada tingkat autentikasi titik akhir yang berlawanan.
Catatan
Untuk menggunakan autentikasi Kerberos untuk komunikasi antara titik akhir grup ketersediaan (AG), daftarkan Nama Perwakilan Layanan untuk Koneksi Kerberos untuk titik akhir pencerminan database yang digunakan oleh AG.
ENKRIPSI diatur ke DIPERLUKAN secara default. Ini berarti bahwa semua koneksi ke titik akhir ini harus menggunakan enkripsi. Namun, Anda dapat menonaktifkan enkripsi atau membuatnya opsional pada titik akhir. Alternatifnya adalah sebagai berikut:
Nilai Definisi NONAKTIF Menentukan bahwa data yang dikirim melalui koneksi tidak dienkripsi. DIDUKUNG Menetapkan bahwa data dienkripsi hanya jika endpoint lainnya menetapkan SUPPORTED atau REQUIRED. WAJIB DIISI Menentukan bahwa data yang dikirim melalui koneksi harus dienkripsi. Jika titik akhir memerlukan enkripsi, titik akhir lainnya harus memiliki ENKRIPSI yang diatur ke DIDUKUNG atau DIPERLUKAN.
<algoritma> menyediakan opsi untuk menentukan standar enkripsi untuk titik akhir. Nilai <algoritma> dapat berupa satu algoritma atau kombinasi algoritma berikut: RC4, AES, AES RC4, atau RC4 AES.
Algoritma AES untuk titik akhir pencerminan database menggunakan panjang kunci 128 bit.
AES RC4 menentukan bahwa titik akhir ini akan bernegosiasi untuk algoritma enkripsi, memberikan preferensi pada algoritma AES. RC4 AES menentukan bahwa titik akhir ini akan bernegosiasi untuk algoritma enkripsi, memberikan preferensi pada algoritma RC4. Jika kedua titik akhir menentukan kedua algoritma tetapi dalam urutan yang berbeda, titik akhir yang menerima koneksi akan menang. Berikan algoritma yang sama secara eksplisit untuk menghindari kesalahan koneksi antara server yang berbeda.
Peringatan
Algoritma RC4 tidak digunakan lagi. Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Kami menyarankan agar Anda menggunakan AES.
<peran> menentukan peran atau peran yang dapat dilakukan server. Menentukan ROLE wajib. Namun, peran titik akhir hanya relevan untuk pencerminan database. Untuk grup ketersediaan AlwaysOn, peran titik akhir diabaikan.
Untuk memungkinkan instans server berfungsi sebagai satu peran untuk satu sesi pencerminan database dan peran yang berbeda untuk sesi lain, tentukan ROLE=ALL. Untuk membatasi instans server menjadi mitra atau saksi, tentukan
ROLE = PARTNERatauROLE = WITNESS, masing-masing.Catatan
Untuk daftar fitur yang didukung oleh edisi di SQL Server, lihat Edisi dan fitur yang didukung dari SQL Server 2016.
Untuk deskripsi CREATE ENDPOINT lengkap sintaks, lihat CREATE ENDPOINT (Transact-SQL).
Catatan
Untuk mengubah titik akhir yang ada, gunakan ALTER ENDPOINT (Transact-SQL).
Contoh: Membuat Endpoint untuk Mendukung Pencerminan Database (Transact-SQL)
Contoh berikut membuat endpoint pencerminan database untuk instans server bawaan pada tiga sistem komputer yang terpisah:
| Peran instans server | Nama komputer host |
|---|---|
| Mitra (awalnya dalam peran utama) | SQLHOST01\. |
| Mitra (awalnya dalam peran cermin) | SQLHOST02\. |
| saksi | SQLHOST03\. |
Dalam contoh ini, ketiga endpoint menggunakan nomor port 7022, meskipun nomor port apa pun yang tersedia dapat digunakan. Opsi AUTENTIKASI tidak perlu, karena titik akhir menggunakan jenis default, Autentikasi Windows. Opsi ENCRYPTION juga tidak diperlukan, karena semua titik akhir dirancang untuk menegosiasikan metode autentikasi bagi koneksi, yang merupakan perilaku bawaan Autentikasi Windows. Selain itu, semua titik akhir memerlukan enkripsi, yang merupakan perilaku default.
Setiap instans server terbatas untuk berfungsi sebagai mitra atau saksi, dan titik akhir setiap server secara tegas menentukan peran mana (ROLE=MITRA atau ROLE=WITNESS).
Penting
Setiap instans server hanya dapat memiliki satu titik akhir. Oleh karena itu, jika Anda ingin instans server menjadi mitra dalam beberapa sesi dan saksi di sesi lain, tentukan ROLE=ALL.
--Endpoint for initial principal server instance, which
--is the only server instance running on SQLHOST01.
CREATE ENDPOINT endpoint_mirroring
STATE = STARTED
AS TCP ( LISTENER_PORT = 7022 )
FOR DATABASE_MIRRORING (ROLE=PARTNER);
GO
--Endpoint for initial mirror server instance, which
--is the only server instance running on SQLHOST02.
CREATE ENDPOINT endpoint_mirroring
STATE = STARTED
AS TCP ( LISTENER_PORT = 7022 )
FOR DATABASE_MIRRORING (ROLE=PARTNER);
GO
--Endpoint for witness server instance, which
--is the only server instance running on SQLHOST03.
CREATE ENDPOINT endpoint_mirroring
STATE = STARTED
AS TCP ( LISTENER_PORT = 7022 )
FOR DATABASE_MIRRORING (ROLE=WITNESS);
GO
Tugas Terkait
Untuk Mengonfigurasi Titik Akhir Pencerminan Database
Membuat Titik Akhir Pencerminan Database untuk Grup Ketersediaan AlwaysOn (SQL Server PowerShell)
Menggunakan Sertifikat untuk Titik Akhir Database Mirroring (Transact-SQL)
Tentukan URL Titik Akhir Saat Menambahkan atau Memodifikasi Replika Ketersediaan (SQL Server)
Untuk Menampilkan Informasi Tentang Titik Akhir Pencerminan Database