Dukungan untuk Server Tertaut dengan Oracle OLEDB di Amazon RDS for SQL Server - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Dukungan untuk Server Tertaut dengan Oracle OLEDB di Amazon RDS for SQL Server

Server tertaut dengan Oracle Provider for OLEDB di RDS for SQL Server memungkinkan Anda mengakses sumber data eksternal di basis data Oracle. Anda dapat membaca data dari sumber data Oracle jarak jauh dan menjalankan perintah di server basis data Oracle jarak jauh di luar instans DB RDS for SQL Server Anda. Dengan menggunakan server tertaut dengan Oracle OLEDB, Anda dapat:

  • Mengakses langsung sumber data selain SQL Server

  • Mengueri beragam sumber data Oracle dengan kueri yang sama tanpa perlu memindahkan data

  • Mengeluarkan kueri, pembaruan, perintah, dan transaksi terdistribusi pada sumber data di seluruh ekosistem perusahaan

  • Mengintegrasikan koneksi ke basis data Oracle dari dalam Microsoft Business Intelligence Suite (SSIS, SSRS, SSAS)

  • Memigrasi dari basis data Oracle ke RDS for SQL Server

Anda dapat mengaktifkan satu atau beberapa server tertaut untuk Oracle di RDS yang sudah ada atau baru untuk instans DB SQL Server. Kemudian, Anda dapat mengintegrasikan sumber data Oracle eksternal dengan instans DB.

Versi dan Wilayah yang didukung

RDS for SQL Server mendukung server tertaut dengan Oracle OLEDB di semua Wilayah untuk SQL Server Standard dan Enterprise Editions di versi berikut:

  • SQL Server 2022, semua versi

  • SQL Server 2019, semua versi

  • SQL Server 2017, semua versi

Server tertaut dengan Oracle OLEDB didukung untuk versi Oracle Database berikut:

  • Oracle Database 21c, semua versi

  • Oracle Database 19c, semua versi

  • Oracle Database 18c, semua versi

Batasan dan rekomendasi

Perlu diingat bahwa batasan dan rekomendasi berikut yang berlaku untuk server tertaut dengan Oracle OLEDB:

  • Mengizinkan lalu lintas jaringan dengan menambahkan port TCP yang berlaku dalam grup keamanan untuk setiap instans DB RDS for SQL Server. Misalnya, jika Anda mengonfigurasi server tertaut antara instans DB EC2 Oracle dan instans DB RDS for SQL Server, Anda harus mengizinkan lalu lintas dari alamat IP instans DB EC2 Oracle. Anda juga harus mengizinkan lalu lintas pada port yang digunakan SQL Server untuk memproses komunikasi basis data. Untuk informasi selengkapnya mengenai Grup Keamanan, lihat Mengontrol akses dengan grup keamanan.

  • Lakukan boot ulang pada instans DB RDS for SQL Server setelah mengaktifkan, menonaktifkan, atau memodifikasi opsi OLEDB_ORACLE di grup opsi Anda. Status grup opsi menampilkan pending_reboot untuk peristiwa ini dan diperlukan.

  • Hanya autentikasi sederhana yang didukung dengan nama pengguna dan kata sandi untuk sumber data Oracle.

  • Open Database Connectivity (ODBC) tidak didukung. Hanya driver OLEDB versi terbaru yang didukung.

  • Transaksi terdistribusi (XA) didukung. Untuk mengaktifkan transaksi terdistribusi, aktifkan opsi MSDTC Grup Opsi untuk instans DB Anda dan pastikan transaksi XA diaktifkan. Untuk informasi selengkapnya, lihat Dukungan untuk Microsoft Distributed Transaction Coordinator di RDS for SQL Server.

  • Membuat nama sumber data (DSN) untuk digunakan sebagai pintasan string koneksi tidak didukung.

  • Penelusuran driver OLEDB tidak didukung. Anda dapat menggunakan SQL Server Extended Events untuk melacak peristiwa OLEDB. Untuk informasi lebih lanjut, lihat Mengatur Peristiwa yang Diperluas di RDS for SQL Server.

  • Akses ke folder katalog untuk server tertaut Oracle tidak didukung menggunakan SQL Server Management Studio (SSMS).

Mengaktifkan server tertaut menggunakan Oracle

Aktifkan server tertaut menggunakan Oracle dengan menambahkan opsi OLEDB_ORACLE ke instans DB RDS for SQL Server Anda. Gunakan proses berikut:

  1. Buat grup opsi baru, atau pilih grup opsi yang sudah ada.

  2. Tambahkan opsi OLEDB_ORACLE untuk grup opsi.

  3. Pilih versi driver OLEDB yang akan digunakan.

  4. Kaitkan grup opsi dengan instans DB.

  5. Boot ulang instans DB.

Membuat grup opsi untuk OLEDB_ORACLE

Untuk dapat bekerja dengan server tertaut menggunakan Oracle, buat grup opsi atau ubah grup opsi yang sesuai dengan edisi SQL Server dan versi instans DB yang akan Anda gunakan. Untuk menyelesaikan prosedur ini, gunakan AWS Management Console atau AWS CLI.

Prosedur berikut akan membuat grup opsi untuk SQL Server Standard Edition 2019.

Untuk membuat grup opsi
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Grup opsi.

  3. Pilih Buat grup.

  4. Di jendela Buat grup opsi, lakukan hal berikut:

    1. Untuk Nama, ketikkan nama untuk grup opsi yang unik dalam akun AWS Anda, seperti oracle-oledb-se-2019. Nama tersebut hanya boleh berisi huruf, angka, dan tanda hubung.

    2. Untuk Deskripsi, masukkan deskripsi singkat grup opsi, seperti OLEDB_ORACLE option group for SQL Server SE 2019. Deskripsi digunakan untuk tampilan.

    3. Untuk Mesin, pilih sqlserver-se.

    4. Untuk Versi mesin utama, pilih 15.00.

  5. Pilih Buat.

Prosedur berikut akan membuat grup opsi untuk SQL Server Standard Edition 2019.

Untuk membuat grup opsi
  • Gunakan salah satu perintah berikut ini.

    Untuk Linux, macOS, atau Unix:

    aws rds create-option-group \ --option-group-name oracle-oledb-se-2019 \ --engine-name sqlserver-se \ --major-engine-version 15.00 \ --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019"

    Untuk Windows:

    aws rds create-option-group ^ --option-group-name oracle-oledb-se-2019 ^ --engine-name sqlserver-se ^ --major-engine-version 15.00 ^ --option-group-description "OLEDB_ORACLE option group for SQL Server SE 2019"

Menambahkan opsi OLEDB_ORACLE ke grup opsi

Selanjutnya, gunakan AWS Management Console atau AWS CLI untuk menambahkan opsi OLEDB_ORACLE ke grup opsi Anda.

Untuk menambahkan opsi OLEDB_ORACLE
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Grup opsi.

  3. Pilih grup opsi yang baru saja Anda buat, yaitu oracle-oledb-se-2019 dalam contoh ini.

  4. Pilih Tambah opsi.

  5. Di bagian Detail opsi, pilih OLEDB_ORACLE untuk Nama opsi.

  6. Di bagian Penjadwalan, pilih apakah akan menambahkan opsi langsung atau pada masa pemeliharaan berikutnya.

  7. Pilih Tambah opsi.

Untuk menambahkan opsi OLEDB_ORACLE
  • Tambahkan opsi OLEDB_ORACLE untuk grup opsi.

    Untuk Linux, macOS, atau Unix:

    aws rds add-option-to-option-group \ --option-group-name oracle-oledb-se-2019 \ --options OptionName=OLEDB_ORACLE \ --apply-immediately

    Untuk Windows:

    aws rds add-option-to-option-group ^ --option-group-name oracle-oledb-se-2019 ^ --options OptionName=OLEDB_ORACLE ^ --apply-immediately

Mengaitkan grup opsi dengan instans DB

Untuk mengaitkan grup opsi OLEDB_ORACLE dan grup parameter dengan instans DB Anda, gunakan AWS Management Console atau AWS CLI

Agar dapat menyelesaikan pengaktifan server tertaut untuk Oracle, kaitkan grup opsi OLEDB_ORACLE Anda dengan instans DB baru atau yang sudah ada:

Anda dapat mengaitkan grup opsi OLEDB_ORACLE dan grup parameter dengan instans DB baru atau yang sudah ada.

Untuk membuat instans dengan grup opsi OLEDB_ORACLE dan grup parameter
  • Tentukan tipe mesin DB yang sama dan versi utama yang Anda gunakan saat membuat grup opsi.

    Untuk Linux, macOS, atau Unix:

    aws rds create-db-instance \ --db-instance-identifier mytestsqlserveroracleoledbinstance \ --db-instance-class db.m5.2xlarge \ --engine sqlserver-se \ --engine-version 15.0.4236.7.v1 \ --allocated-storage 100 \ --manage-master-user-password \ --master-username admin \ --storage-type gp2 \ --license-model li \ --domain-iam-role-name my-directory-iam-role \ --domain my-domain-id \ --option-group-name oracle-oledb-se-2019 \ --db-parameter-group-name my-parameter-group-name

    Untuk Windows:

    aws rds create-db-instance ^ --db-instance-identifier mytestsqlserveroracleoledbinstance ^ --db-instance-class db.m5.2xlarge ^ --engine sqlserver-se ^ --engine-version 15.0.4236.7.v1 ^ --allocated-storage 100 ^ --manage-master-user-password ^ --master-username admin ^ --storage-type gp2 ^ --license-model li ^ --domain-iam-role-name my-directory-iam-role ^ --domain my-domain-id ^ --option-group-name oracle-oledb-se-2019 ^ --db-parameter-group-name my-parameter-group-name
Untuk memodifikasi instans dan mengaitkan grup opsi OLEDB_ORACLE
  • Gunakan salah satu perintah berikut ini.

    Untuk Linux, macOS, atau Unix:

    aws rds modify-db-instance \ --db-instance-identifier mytestsqlserveroracleoledbinstance \ --option-group-name oracle-oledb-se-2019 \ --db-parameter-group-name my-parameter-group-name \ --apply-immediately

    Untuk Windows:

    aws rds modify-db-instance ^ --db-instance-identifier mytestsqlserveroracleoledbinstance ^ --option-group-name oracle-oledb-se-2019 ^ --db-parameter-group-name my-parameter-group-name ^ --apply-immediately

Memodifikasi properti penyedia OLEDB

Anda dapat melihat dan mengubah properti penyedia OLEDB. Hanya pengguna master yang dapat melakukan tugas ini. Semua server tertaut untuk Oracle yang dibuat di instans DB menggunakan properti yang sama dari penyedia OLEDB tersebut. Panggil prosedur tersimpan sp_MSset_oledb_prop untuk mengubah properti penyedia OLEDB.

Untuk mengubah properti penyedia OLEDB

USE [master] GO EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'AllowInProcess', 1 EXEC sp_MSset_oledb_prop N'OraOLEDB.Oracle', N'DynamicParameters', 0 GO

Properti berikut dapat dimodifikasi:

Nama properti Nilai yang Direkomendasikan (1 = Aktif, 0 = Mati) Deskripsi

Dynamic parameter

1

Mengizinkan placeholder SQL (diwakili oleh '?') dalam kueri parameter.

Nested queries

1

Mengizinkan pernyataan SELECT bertingkat dalam klausa FROM, seperti subkueri.

Level zero only

0

Hanya antarmuka OLEDB tingkat dasar yang dipanggil untuk penyedia.

Allow inprocess

1

Jika diaktifkan, Microsoft SQL Server memungkinkan penyedia untuk dipakai sebagai server dalam proses. Atur properti ini ke 1 untuk menggunakan server tertaut Oracle.

Non transacted updates

0

Jika bukan nol, SQL Server memungkinkan pembaruan.

Index as access path

Salah

Jika bukan nol, SQL Server mencoba menggunakan indeks penyedia untuk mengambil data.

Disallow adhoc access

Salah

Jika diatur, SQL Server tidak mengizinkan menjalankan kueri pass-through terhadap penyedia OLEDB. Meskipun opsi ini dapat dicentang, terkadang ini merupakan pilihan tepat untuk menjalankan kueri pass-through.

Supports LIKE operator

1

Menunjukkan bahwa penyedia mendukung kueri menggunakan kata kunci LIKE.

Memodifikasi properti driver OLEDB

Anda dapat melihat dan mengubah properti driver OLEDB saat membuat server tertaut untuk Oracle. Hanya pengguna master yang dapat melakukan tugas ini. Properti driver menentukan cara driver OLEDB menangani data saat menggunakan sumber data Oracle jarak jauh. Properti driver khusus untuk setiap server tertaut Oracle yang dibuat di instans DB. Panggil prosedur tersimpan master.dbo.sp_addlinkedserver untuk mengubah properti driver OLEDB.

Contoh: Untuk membuat server tertaut dan mengubah properti driver FetchSize OLEDB

EXEC master.dbo.sp_addlinkedserver @server = N'Oracle_link2', @srvproduct=N'Oracle', @provider=N'OraOLEDB.Oracle', @datasrc=N'my-oracle-test.cnetsipka.us-west-2.rds.amazonaws.com:1521/ORCL, @provstr='FetchSize=200' GO
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'Oracle_link2', @useself=N'False', @locallogin=NULL, @rmtuser=N'master', @rmtpassword='Test#1234' GO
catatan

Tetapkan kata sandi selain prompt yang ditampilkan di sini sebagai praktik terbaik keamanan.

Menonaktifkan server tertaut menggunakan Oracle

Untuk menonaktifkan server tertaut menggunakan Oracle, hapus opsi OLEDB_ORACLE dari grup opsi.

penting

Menghapus opsi tidak akan menghapus konfigurasi server tertaut yang sudah ada di instans DB. Anda harus melepaskannya secara manual untuk dapat menghapusnya dari instans DB.

Anda dapat mengaktifkan kembali opsi OLEDB_ORACLE setelah dihapus agar bisa menggunakan kembali konfigurasi server tertaut yang sebelumnya dikonfigurasi di instans DB.

Prosedur berikut akan menghapus opsi OLEDB_ORACLE.

Untuk menghapus opsi OLEDB_ORACLE dari grup opsi
  1. Masuk ke AWS Management Console lalu buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Grup opsi.

  3. Pilih grup opsi dengan opsi OLEDB_ORACLE (oracle-oledb-se-2019 dalam contoh sebelumnya).

  4. Pilih Hapus opsi.

  5. Di bagian Opsi penghapusan, pilih OLEDB_ORACLE untuk Opsi yang akan dihapus.

  6. Di bagian Langsung terapkan, pilih Ya untuk segera menghapus opsi, atau Tidak untuk menghapusnya selama masa pemeliharaan berikutnya.

  7. Pilih Hapus.

Prosedur berikut akan menghapus opsi OLEDB_ORACLE.

Untuk menghapus opsi OLEDB_ORACLE dari grup opsi
  • Gunakan salah satu perintah berikut ini.

    Untuk Linux, macOS, atau Unix:

    aws rds remove-option-from-option-group \ --option-group-name oracle-oledb-se-2019 \ --options OLEDB_ORACLE \ --apply-immediately

    Untuk Windows:

    aws rds remove-option-from-option-group ^ --option-group-name oracle-oledb-se-2019 ^ --options OLEDB_ORACLE ^ --apply-immediately