Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengkonfigurasi Layanan Data Oracle Rest (ORDS)
Topik berikut mencantumkan opsi konfigurasi untuk ORDS 21 dan 22:
Topik
Menginstal dan mengkonfigurasi ORDS 21 dan yang lebih rendah
Anda sekarang siap untuk menginstal dan mengonfigurasi Oracle Rest Data Services (ORDS) untuk digunakan dengan Oracle APEX. Untuk Oracle APEX versi 5.0 dan yang lebih baru, gunakan ORDS versi 19.1 hingga 21. Untuk mempelajari cara menginstal ORDS 22 dan yang lebih tinggi, lihatMenginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi.
Instal listener di host terpisah seperti EC2 instans Amazon, server lokal di perusahaan Anda, atau komputer desktop Anda. Untuk contoh di bagian ini, kami berasumsi bahwa nama host Anda adalah myapexhost.example.com
, dan bahwa host Anda menjalankan Linux.
Untuk menginstal dan mengkonfigurasi ORDS 21 dan yang lebih rendah untuk digunakan dengan Oracle APEX
-
Pergi ke layanan data Oracle REST
, dan periksa Readme. Pastikan Anda telah menginstal versi Java yang diperlukan. -
Buat direktori baru untuk instalasi ORDS Anda.
mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
-
Unduh file
ords.
dari layanan data Oracle RESTversion.number
.zip. -
Ekstrak file ke dalam direktori
/home/apexuser/ORDS
. -
Jika Anda menginstal ORDS dalam basis data multi-penghuni, tambahkan baris berikut ke file
/home/apexuser/ORDS/params/ords_params.properties
:pdb.disable.lockdown=false
-
Berikan pengguna master hak istimewa yang diperlukan untuk menginstal ORDS.
Setelah opsi untuk Oracle APEX diinstal, berikan pengguna master hak istimewa yang diperlukan untuk menginstal skema ORDS. Anda dapat melakukannya dengan menghubungkan ke basis data dan menjalankan perintah berikut. Ganti
dengan nama pengguna master dengan huruf besar.MASTER_USER
penting
Jika Anda memasukkan nama pengguna, gunakan huruf besar kecuali Anda membuat pengguna dengan pengidentifikasi peka huruf besar/kecil. Misalnya, jika Anda menjalankan
CREATE USER myuser
atauCREATE USER MYUSER
, kamus data akan menyimpanMYUSER
. Namun, jika Anda menggunakan tanda kutip ganda diCREATE USER "MyUser"
, kamus data akan menyimpanMyUser
. Untuk informasi lebih lanjut, lihat Pemberian SELECT atau EXECUTE hak istimewa untuk objek SYS.exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', '
MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER
', 'EXECUTE', true);catatan
Perintah ini berlaku untuk ORDS versi 19.1 dan yang lebih baru.
-
Instal skema ORDS menggunakan file ords.war yang diunduh.
java -jar ords.war install advanced
Program ini meminta Anda untuk memberikan informasi berikut. Nilai default-nya ada dalam tanda kurung. Untuk informasi lebih lanjut, lihat Introduction to Oracle REST data services
di dokumentasi Oracle. -
Masukkan lokasi untuk menyimpan data konfigurasi:
Masukkan
/home/apexuser/ORDS
. Ini adalah lokasi file konfigurasi ORDS. -
Tentukan tipe koneksi basis data yang akan digunakan. Masukkan nomor untuk [1] Basic [2] TNS [3] Custom URL [1]:
Pilih tipe koneksi yang diinginkan.
-
Masukkan nama server database [localhost]:
DB_instance_endpoint
Pilih default atau masukkan nilai yang benar.
-
Masukkan port pendengar database [1521]:
DB_instance_port
Pilih default atau masukkan nilai yang benar.
-
Masukkan 1 untuk menentukan nama layanan basis data, atau 2 untuk menentukan SID basis data [1]:
Pilih
2
untuk menentukan SID basis data. -
SID basis data [xe]
Pilih default atau masukkan nilai yang benar.
-
Masukkan 1 jika Anda ingin memverifikasi/menginstal skema Oracle REST Data Services atau 2 untuk melewati langkah ini [1]:
Pilih
1
. Langkah ini membuat pengguna proxy Oracle REST Data Services bernama ORDS_PUBLIC_USER. -
Masukkan kata sandi basis data untuk ORDS_PUBLIC_USER:
Masukkan kata sandi, lalu konfirmasi.
-
Perlu login dengan hak administrator untuk memverifikasi skema Oracle REST Data Services.
Masukkan nama pengguna administrator:
master_user
Masukkan kata sandi database untuk
master_user
:master_user_password
Konfirmasikan kata sandi:
master_user_password
catatan
Tetapkan kata sandi selain penggugah (prompt) yang ditampilkan di sini sebagai praktik terbaik keamanan.
-
Masukkan ruang tabel default untuk ORDS_METADATA [SYSAUX].
Masukkan ruang tabel sementara untuk ORDS_METADATA [TEMP].
Masukkan ruang tabel default untuk ORDS_PUBLIC_USER [USERS].
Masukkan ruang tabel sementara untuk ORDS_PUBLIC_USER [TEMP].
-
Masukkan 1 jika Anda ingin menggunakan PL/SQL Gateway atau 2 untuk melewati langkah ini. Jika Anda menggunakan Oracle Application Express atau bermigrasi dari mod_plsql, Anda harus memasukkan 1 [1].
Pilih default.
-
Masukkan nama pengguna basis data PL/SQL Gateway [APEX_PUBLIC_USER]
Pilih default.
-
Masukkan kata sandi basis data untuk APEX_PUBLIC_USER:
Masukkan kata sandi, lalu konfirmasi.
-
Masukkan 1 untuk menentukan kata sandi bagi pengguna database Application Express RESTful Services (APEX_LISTENER, APEX_REST_PUBLIC_USER) atau 2 untuk melewati langkah ini [1]:
Pilih
2
untuk APEX 4.1.1.V1; pilih1
untuk semua versi APEX lainnya. -
[Tidak diperlukan untuk APEX 4.1.1.v1] Kata sandi basis data untuk APEX_LISTENER
Masukkan kata sandi (jika diperlukan), lalu konfirmasi.
-
[Tidak diperlukan untuk APEX 4.1.1.v1] Kata sandi basis data untuk APEX_REST_PUBLIC_USER
Masukkan kata sandi (jika diperlukan), lalu konfirmasi.
-
Masukkan nomor untuk memilih fitur yang akan diaktifkan:
Masukkan
1
untuk mengaktifkan semua fitur: SQL Developer Web, REST Enabled SQL, dan Database API. -
Masukkan 1 jika Anda ingin memulai dalam mode mandiri atau 2 untuk keluar [1]:
Masukkan
1
. -
Masukkan lokasi sumber daya statis APEX:
Jika Anda mengekstrak file instalasi APEX ke
/home/apexuser
, masukkan/home/apexuser/apex/images
. Jika tidak, masukkan
, diunzip_path
/apex/imagesunzip_path
mana direktori tempat Anda membuka ritsleting file. -
Masukkan 1 jika menggunakan HTTP atau 2 jika menggunakan HTTPS [1]:
Jika Anda memasukkan
1
, tentukan port HTTP. Jika Anda memasukkan2
, tentukan port HTTPS dan nama host SSL. Opsi HTTPS meminta Anda untuk menentukan bagaimana Anda akan memberikan sertifikat:-
Memasukkan
1
untuk menggunakan sertifikat yang ditandatangani sendiri. -
Memasukkan
2
untuk memberikan sertifikat Anda sendiri. Jika Anda memasukkan2
, tentukan jalur untuk sertifikat SSL dan jalur untuk kunci privat sertifikat SSL.
-
-
-
Tetapkan kata sandi untuk pengguna
admin
APEX. Untuk melakukannya, gunakan SQL*Plus untuk menghubungkan ke instans DB Anda sebagai pengguna master, lalu jalankan perintah berikut.EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to
master
; @/home/apexuser/apex/apxchpwd.sqlGanti
dengan nama pengguna master Anda. Saat diminta oleh skripmaster
apxchpwd.sql
, masukkan kata sandiadmin
yang baru. -
Mulai pendengar ORDS. Jalankan kode berikut.
java -jar ords.war
Pertama kali Anda memulai ORDS, Anda diminta untuk memberikan lokasi sumber daya statis APEX. Folder gambar ini terletak di direktori
/apex/images
di direktori instalasi untuk APEX. -
Kembali ke jendela administrasi Oracle APEX di browser Anda dan pilih Administrasi. Selanjutnya, pilih Application Express Internal Administration. Saat Anda diminta untuk memberikan kredensial, masukkan informasi berikut ini:
-
Nama pengguna –
admin
-
Kata sandi - kata sandi yang Anda tetapkan menggunakan skrip
apxchpwd.sql
Pilih Masuk, lalu tetapkan kata sandi baru untuk pengguna
admin
. -
Pendengar Anda sekarang siap digunakan.
Menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi
Anda sekarang siap untuk menginstal dan mengonfigurasi Oracle Rest Data Services (ORDS) untuk digunakan dengan Oracle APEX. Untuk contoh di bagian ini, kami berasumsi bahwa nama host terpisah Anda adalahmyapexhost.example.com
, dan bahwa host Anda menjalankan Linux. Instruksi untuk ORDS 22 berbeda dari instruksi untuk rilis sebelumnya.
Untuk menginstal dan mengkonfigurasi ORDS 22 dan lebih tinggi untuk digunakan dengan Oracle APEX
-
Buka layanan data Oracle REST
, dan periksa Readme untuk versi ORDS yang akan Anda unduh. Pastikan Anda telah menginstal versi Java yang diperlukan. -
Buat direktori baru untuk instalasi ORDS Anda.
mkdir /home/apexuser/ORDS cd /home/apexuser/ORDS
-
Unduh file
ords.
atauversion.number
.zipords-latest.zip
dari layanan data Oracle REST. -
Buka zip file ke dalam
/home/apexuser/ORDS
direktori. -
Berikan pengguna master hak istimewa yang diperlukan untuk menginstal ORDS.
Setelah
APEX
opsi diinstal, berikan pengguna master hak istimewa yang diperlukan untuk menginstal skema ORDS. Anda dapat melakukan ini dengan masuk ke database dan menjalankan perintah berikut. Ganti
dengan nama pengguna master dengan huruf besar.MASTER_USER
penting
Jika Anda memasukkan nama pengguna, gunakan huruf besar kecuali Anda membuat pengguna dengan pengidentifikasi peka huruf besar/kecil. Misalnya, jika Anda menjalankan
CREATE USER myuser
atauCREATE USER MYUSER
, kamus data akan menyimpanMYUSER
. Namun, jika Anda menggunakan tanda kutip ganda diCREATE USER "MyUser"
, kamus data akan menyimpanMyUser
. Untuk informasi selengkapnya, lihat Pemberian SELECT atau EXECUTE hak istimewa untuk objek SYS.exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_OBJECTS', '
MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_ROLE_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONS_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_CONSTRAINTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_OBJECTS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_PROCEDURES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TAB_COLUMNS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_TABLES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('USER_VIEWS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPIUTL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SESSION', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_UTILITY', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_LOB', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_ASSERT', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_OUTPUT', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SCHEDULER', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('HTP', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('OWA', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('WPG_DOCLOAD', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_CRYPTO', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_METADATA', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SQL', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('UTL_SMTP', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_NETWORK_ACL_ADMIN', 'MASTER_USER
', 'EXECUTE', true); exec rdsadmin.rdsadmin_util.grant_sys_object('SESSION_PRIVS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_USERS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACL_PRIVILEGES', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_NETWORK_ACLS', 'MASTER_USER
', 'SELECT', true); exec rdsadmin.rdsadmin_util.grant_sys_object('DBA_REGISTRY', 'MASTER_USER
', 'SELECT', true);catatan
Perintah sebelumnya berlaku untuk ORDS 22 dan yang lebih baru.
-
Instal skema ORDS menggunakan skrip yang diunduh
ords
. Tentukan direktori untuk berisi file konfigurasi dan file log. Oracle Corporation merekomendasikan untuk tidak menempatkan direktori ini di dalam direktori yang berisi perangkat lunak produk ORDS.mkdir -p /home/apexuser/ords_config /home/apexuser/ords_logs /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs
Untuk instance DB yang menjalankan arsitektur database kontainer (CDB), gunakan ORDS 23.2 dan yang lebih tinggi dan berikan
--pdb-skip-disable-lockdown
argumen saat menginstal ORDS./home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config \ install --interactive --log-folder /home/apexuser/ords_logs --pdb-skip-disable-lockdown
Program ini meminta Anda untuk memberikan informasi berikut. Nilai default-nya ada dalam tanda kurung. Untuk informasi lebih lanjut, lihat Introduction to Oracle REST data services
di dokumentasi Oracle. -
Choose the type of installation:
Pilih
2
untuk menginstal skema ORDS dalam database dan membuat kumpulan koneksi database dalam file konfigurasi ORDS lokal. -
Specify the database connection type to use. Enter number for [1] Basic [2] TNS [3] Custom URL:
Pilih tipe koneksi yang diinginkan. Contoh ini mengasumsikan bahwa Anda memilih
1
. -
Enter the name of the database server [localhost]:
DB_instance_endpoint
Pilih default atau masukkan nilai yang benar.
-
Enter the database listener port [1521]:
DB_instance_port
Pilih default
1521
atau masukkan nilai yang benar. -
Enter the database service name [orcl]:
Masukkan nama database yang digunakan oleh RDS Anda untuk instans Oracle DB.
-
Provide database user name with administrator privileges
Masukkan nama pengguna master untuk RDS Anda untuk instans Oracle DB.
-
Enter the database password for [username]:
Masukkan kata sandi pengguna utama untuk RDS Anda untuk instans Oracle DB.
-
Enter the default tablespace for ORDS_METADATA and ORDS_PUBLIC_USER [SYSAUX]:
-
Enter the temporary tablespace for ORDS_METADATA [TEMP]. Enter the default tablespace for ORDS_PUBLIC_USER [USERS]. Enter the temporary tablespace for ORDS_PUBLIC_USER [TEMP].
-
Enter a number to select additional feature(s) to enable [1]:
-
Enter a number to configure and start ORDS in standalone mode [1]:
Pilih
2
untuk melewatkan memulai ORDS segera dalam mode mandiri. -
Enter a number to select the protocol [1] HTTP
-
Enter the HTTP port [8080]:
-
Enter the APEX static resources location:
Masukkan path ke file instalasi Oracle APEX ()
/home/apexuser/apex/images
.
-
-
Tetapkan kata sandi untuk pengguna Oracle APEX
admin
. Untuk melakukannya, gunakan SQL*Plus untuk menghubungkan ke instans DB Anda sebagai pengguna master, lalu jalankan perintah berikut.EXEC rdsadmin.rdsadmin_util.grant_apex_admin_role; grant APEX_ADMINISTRATOR_ROLE to
master
; @/home/apexuser/apex/apxchpwd.sqlGanti
dengan nama pengguna master Anda. Ketika diminta oleh skripmaster
apxchpwd.sql
, masukkan kata sandiadmin
yang baru. -
Jalankan ORDS dalam mode mandiri menggunakan
ords
skrip dengan perintah.serve
Untuk penyebaran produksi, pertimbangkan untuk menggunakan server aplikasi Java EE yang didukung seperti Apache Tomcat atau Oracle Server. WebLogic Untuk informasi selengkapnya, lihat Menyebarkan dan Memantau Oracle REST Data Services dalam dokumentasiOracle Database. /home/apexuser/ORDS/bin/ords \ --config /home/apexuser/ords_config serve \ --port 8193 \ --apex-images /home/apexuser/apex/images
Jika ORDS berjalan tetapi tidak dapat mengakses instalasi Oracle APEX, Anda mungkin melihat kesalahan berikut, terutama pada instance non-CDB.
The procedure named apex_admin could not be accessed, it may not be declared, or the user executing this request may not have been granted execute privilege on the procedure, or a function specified by security.requestValidationFunction configuration property has prevented access.
Untuk memperbaiki kesalahan ini, ubah fungsi validasi permintaan yang digunakan oleh ORDS dengan menjalankan
ords
skrip dengan perintah.config
Secara default, ORDS menggunakanords_util.authorize_plsql_gateway
prosedur, yang hanya didukung pada instance CDB. Untuk instance non-CDB, Anda dapat mengubah prosedur ini ke paket.wwv_flow_epg_include_modules.authorize
Lihat dokumentasi Oracle Database dan Oracle Support untuk praktik terbaik dalam mengonfigurasi fungsi validasi permintaan yang tepat untuk kasus penggunaan Anda. -
Kembali ke jendela administrasi Oracle APEX di browser Anda dan pilih Administrasi. Selanjutnya, pilih Application Express Internal Administration. Saat Anda diminta untuk memberikan kredensial, masukkan informasi berikut ini:
-
Nama pengguna –
admin
-
Kata sandi - kata sandi yang Anda tetapkan menggunakan skrip
apxchpwd.sql
Pilih Masuk, lalu tetapkan kata sandi baru untuk pengguna
admin
. -
Pendengar Anda sekarang siap digunakan.