Oracle Net Services
By: Arif Basofi
Objective •
Menggunakan Database Control untuk – – – –
• •
1-2 12-2
Membuat listener tambahan Membuat alias-alias service Oracle Net Mengkonfigurasi connect time failover Mengontrol listener Oracle Net
Menggunakan Oracle Net Manager untuk mengkonfigurasi client dan koneksi-koneksi middle-tier. Menggunakan TNSPING untuk menguji koneksitas Oracle Net.
Oracle Net Services (1)
• Oracle Net services bertanggungjawab utk membentuk dan memelihara koneksi antara aplikasi client dan server Database Oracle. • Contoh Oracle Net spt Java DataBase Connectivity (JDBC) di setiap komputer yg memerlukan berkomunikasi dgn server database. • Di sisi client: Oracle Net sbg komponen background utk koneksi aplikasi ke database server. • Di sisi server: Oracle Net mencakup proses aktif yg disebut listener, yg bertanggungjawab dlm koordinasi antara database & aplikasi external. 1-3 12-3
Oracle Net Listener
Enterprise Manager Database Control
Listener
Oracle databases
Oracle Net configuration files
/network/admin/listener.ora sqlnet.ora
• Oracle Net listener sebagai gateway ke Oracle instance utk semua • •
•
koneksi non-local user. Single listener dpt melayani multiple database instance & ribuan koneksi client. Untuk mengontrol listener dapat melalui : EM (Enterprise Manager atau tool2 lain. Atau dapat juga scr langsung mengkonfigurasi pada file listener, misal. dgn menggunakan notepad atau editor lainnya.
1-4 12-4
Membangun Net Connections (1) •
Untuk membuat koneksi client atau middle-tier ke OracleDB, harus dibuatkan paket koneksi yg akan dibaca Oracle Net dgn mengharapkan client mengetahui (syarat): – – – –
•
Host dimana listener sedang running Port yg dimonitor listener Protocol yang digunakan listener Nama service yang ditangani listener
Proses yg menentukan informasi koneksi ini disebut Names Resolution.
Names Resolution 1-5 12-5
Membangun Net Connections (2) • •
Setelah Net Names Resolution komplit, request koneksi dilewatkan dari user atau aplikasi midlle-tier ke Oracle Net Listener. Listener menerima paket CONNECT dan mengecek apakah valid / tidak.
Incoming connection request
Listener 1-6 12-6
User Sessions •
•
Jika paket request CONNECT valid, listener membuat “server process” (krn adanya request koneksi dr user). Dalam server process, listener melewatkan informasi inisialisasi, alamat, dll, termasuk didlmnya server process mengecek otentikasi user (password) dan jika valid maka akan dibuatkan user session. User session
Server process PGA
User process
Listener 1-7 12-7
Tools untuk Configuring dan Managing Oracle Network • • • •
1-8 12-8
Enterprise Manager Net Services Administration page Oracle Net Manager Oracle Net Configuration Assistant launched by Oracle Universal Installer Command line
Listener Control Utility • • •
Oracle Net listeners dapat dikontrol menggunakan command-line lsnrctl (atau dari EM). Dgn command-line, dpt melakukan: start/stop listener, check status listener, reinisialisasi listener dari konfigurasi file parameter, mengkonfigurasi scr dinamis dan mengubah password listener, Syntax: LSNRCTL> command [listener_name] $lsnrctl LSNRCTL for Linux: Version 10.2.0.0.0 on 12-MAY-2005 13:27:51 Copyright (c) 1991, 2004, Oracle. All rights reserved. Welcome to LSNRCTL, type "help" for information. LSNRCTL> help The following operations are available An asterisk (*) denotes a modifier or extended command: start services save_config change_password set*
1-9 12-9
stop version trace quit show*
status reload spawn exit
Listener Control Utility Syntax •
Perintah dalam mengontrol listener, melalui perintah LSNRCTL. –
Syntax prompt di UNIX atau Linux: $ lsnrctl
$ lsnrctl start $ lsnrctl status
–
Sysntax prompt di DOS: LSNRCTL> LSNRCTL> start LSNRCTL> status
1-10 12-10
Memonitor dengan Kontrol Listener Listener control menyediakan dua pilihan pemonitoran: services dan status.
1-11 12-11
Memonitor Listener
1-12 12-12
Membuat Suatu Listener
1-13 12-13
Menambah Alamat-Alamat Listener
1-14 12-14
Mengkonfigurasi Parameter-Parameter Optional
• • 1-15 12-15
Logging : Apakah Anda ingin menyimpan suatu log (catatan) koneksi-koneksi dari Oracle Net dan jika ya, dimanakah Anda ingin menyimpan file log ? Tracing : Apakah Anda ingin menyimpan rincian informasi tentang setiap koneksi Oracle Net ? Jika ya, berapa banyak informasi yang ingin Anda kumpulkan (Trace Level) dan dimana Anda ingin menyimpan file-file trace ?
Static Database Registration
• Utk mengirim koneksi2 client ke instance, listener harus tahu •
nama instance dan lokasi instance ORACLE_HOME. Listener bisa mencari informasi ini dengan dua cara : 1. Dynamic service registration Instance-instance pada Oracle8i, Oracle9i dan Oracle Database 10g secara otomatis terdaftar pada listener scr default ketika startup database. Tidak ada konfigurasi listener tambahan untuk listener default. 2. Static service registration Pada Release Oracle Database yg lama (sebelumnya) tidak terdaftar pada listener secara otomatis, sehingga diperlukan konfigurasi file listener yg berisi daftar semua service listener database yang akan dilayani.
1-16 12-16
Static Database Registration
•
•
•
Untuk menambah service database statis, pilih tab Static Database Registration dari halaman Edit Listener dan klik tombol Add Database. Masukkan nama service, path ORACLE_HOME, dan SID (sama nama instance). Klik OK dan me-restart listener untuk melihat efek perubahan.
1-17 12-17
Names Methods Oracle Net mendukung beberapa metode dari informasi pemecahan koneksi : • Easy Connect naming: menggunakan connect string TCP/IP • Local naming: menggunakan file konfigurasi lokal • Directory naming: menggunakan direktory server LDAP yg terpusat • External naming: menggunakan penamaan servis yg didukung non-oracle.
1-18 12-18
Easy Connect • Secara default sudah jalan (enabled) • Tidak meminta konfigurasi client-side • Hanya mendukung protocol TCP/IP (tanpa SSL) • Tidak mendukung untuk advanced connection option seperti:
•
1-19 12-19
– Connect-time failover – Source routing – Load balancing Syntax Connection string: <username>/<password>@[:<listener port>/<service name>]
Local Naming • • •
Membutuhkan sebuah file names resolution client-side Mendukung semua protocol-protocol Oracle Net Mendukung advanced connection options seperti : – – –
•
1-20 12-20
Connect-time failover Source routing Load balancing
Daftar lokal yang dikenali service-service disimpan dalam teks file konfigurasi: ORACLE_HOME/network/admin/tnsname.ora.
Directory Naming •
Meminta suatu Lightweight Directory Access Protocol (LDAP) dgn informasi Oracle Net Names Resolution yang dijalankan: – –
• •
1-21 12-21
Oracle Internet Directory Microsoft Active Directory Services
Mendukung semua protocol-protocol Oracle Net Mendukung advanced connection options
Mengkonfigurasi Alias-Alias Service
1-22 12-22
Advanced Connection Options Oracle Net mendukung advanced connection options pada local dan directory naming: • Connect-time failover • Load balancing • Source routing
1-23 12-23
Oracle Net Manager
1-24 12-24
Memilih Penamaan Methods
Oracle Net Manager mengkonfigurasi method-method names resolution suatu client atau middle-tier yang akan digunakan dan urutan dimana method-method ditandai.
1-25 12-25
Mengkonfigurasi Alias-Alias Service pada Net Manager
Gunakan Oracle Net Manager untuk mengkonfigurasi alias-alias local dan directory naming.
1-26 12-26
Advanced Connection Options Menggunakan Oracle Net Manager Oracle Net mendukung advanced connection options pada local dan directory naming • Connect-time failover • Load balancing
1-27 12-27
Menguji Koneksitas Oracle Net
Utility tnsping menguji alias-alias service Oracle Net. • Memastikan koneksitas antara client dan listener Oracle Net • Tidak memeriksa bahwa service yang diminta tersedia • Mendukung nama-nama pemecahan Easy Connect
•
1-28 12-28
Mendukung penamaan local dan directory
Ringkasan •
Menggunakan Database Control untuk: – – –
• • •
1-29 12-29
Membuat listener-listener tambahan Password-protect listener Membuat alias-alias service Oracle Net
Mengontrol listener Oracle Net Menggunakan Oracle Net Manager untuk mengkonfigurasi koneksi-koneksi client atau middletier Menggunakan TNSPING untuk menguji koneksitas Oracle Net