LaGiPusHinGWitH ----- IT

About This Site

Teknologi Informasi sangatlah penting untuk menunjang kemajuan ilmu pengetahuan di Indonesia pada khususnya. Dan ini semua haruslah ditunjang dengan kemampuan yang sepadan dengan kemajuan teknologi itu sendiri, terlebih untuk para praktisi IT itu sendiri. Akhir kata "Selamat berkarya" untuk kita semua. koy^k^guy^ - Owner

Navigation

Home |

Search


Advanced Search

Calendar

June 2012
S M T W T F S
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

Categories

Monthly Archives

Most recent entries

Syndicate

Site Statistics

This page has been viewed 264652 times
Page rendered in 0.8041 seconds
40 queries executed
Debug mode is on
Total Entries: 61
Total Comments: 17
Total Trackbacks: 42607
Most Recent Entry: 09/28/2010 09:19 pm
Most Recent Comment on: 09/28/2010 09:51 pm
Total Members: 1
Total Logged in members: 0
Total guests: 5
Total anonymous users: 0
Most Recent Visitor on: 06/02/2012 03:44 pm
The most visitors ever was 269 on 05/28/2011 03:07 pm

Referrers

Site Credits

Powered by:
ExpressionEngine

Design by:
BlogMoxie

Computer DataBase

Saturday, October 13, 2007
Resizing TableSpace on Oracle

tutor_resizeTS.txt

Dear all lagi.........

Sesuai janji gw, gw bikin catatan kecil lagi...yang ini khusus ngebahas soal mengatasi ukuran tablespace yang kritis.
Masih ingatkan sama catatan gw yang terdahulu.

langsung aja maaaang....

Pertama2 kita check dengan script yang sudah kita bikin -->

the code :

## Cek TABLESPACE By Command Line Sql ##:

set linesize 128 echo off feedback on heading on verify off pagesize 35
col megs_alloc format 999,999,999 heading “MB ALLOC”
col megs_free format 999,999,999 heading “MB FREE”
col megs_used format 999,999,999 heading “MB USED”
col pct_free format 999 heading “% FREE”
col pct_used format 999 heading “% USED”
--col bsize format 99999 new_value bsize heading “BLOCK SIZE”

--set termout off
--select value bsize from v$parameter
--where name = ‘db_block_size’;
--set termout on

break on report skip 1
compute sum label “TOTAL” of megs_alloc on report
compute sum of megs_free on report
compute sum of megs_used on report

select c.tablespace_name,
round(a.bytes/1048576,2) megs_alloc,
round(b.bytes/1048576,2) megs_free,
round((a.bytes-b.bytes)/1048576,2) megs_used,
round(b.bytes/a.bytes * 100,2) pct_free,
round((a.bytes-b.bytes)/a.bytes,2) * 100 pct_used
from (select tablespace_name,
sum(a.bytes) bytes,
min(a.bytes) minbytes,
max(a.bytes) maxbytes
from sys.dba_data_files a
group by tablespace_name) a,
(select a.tablespace_name,
nvl(sum(b.bytes),0) bytes
from sys.dba_data_files a,
sys.dba_free_space b
where a.tablespace_name = b.tablespace_name (+)
and a.file_id = b.file_id (+)
group by a.tablespace_name) b,
sys.dba_tablespaces c
where a.tablespace_name = b.tablespace_name(+)
and a.tablespace_name = c.tablespace_name
union
select tablespace_name, round((sum(bytes_used) + sum(bytes_free)) / 1048576,2) meg_alloc,
round(sum(bytes_free) / 1048576,2) megs_free,
round(sum(bytes_used) / 1048576,2) megs_used,
round(sum(bytes_free) / (sum(bytes_used) + sum(bytes_free)) * 100,2) pct_free,
round(sum(bytes_used) / (sum(bytes_used) + sum(bytes_free)) * 100,2) pct_used
from v$temp_space_header
group by tablespace_name
order by tablespace_name;

terus kita running lewat sqlplus-->

SQL> @ c:\Data\script\mccserver\tablespacecheck.sql Tablespace Size

TABLESPACE_NAME MB ALLOC MB FREE MB USED % FREE % USED
----------------- ------------ ------------ ------------ ------ ------
CWMLITE 20 3 18 13 88
DRSYS 20 10 10 52 48
EXAMPLE 149 0 149 0 100
======================= potong ============
MAA_TRXP 12,048 255 11,793 2 98
MAA_TRXE 14,048 2,395 11,653 17 83
======================= potong ============
SYSTEM 560 135 425 24 76
TEMP 8,099 0 8,099 0 100
TOOLS 10 10 0 99 1
UNDOTBS1 5,951 5,477 474 92 8
USERS 25 24 1 98 3
======================= potong ============
XDB 38 38 0 100 0
------------ ------------ ------------
TOTAL 121,338 51,027 70,311

34 rows selected.

Disini terlihat ada 2 buah tablespace yang kritis(lebih dari 80%)....
Sekarang kita akan menambah size dari tablespace tersebut, oh iyah...semua command ini full dari sqlplus yah

langkah berikutnya adalah kita lihat dulu nama2 datafile dari tablespace yang akan kita resize (apa sih datafile?
cari tahu aja yah digoogle..atau tanya lagi ntar insya allah gw jawab)

SQL> select * from dba_data_files where tablespace_name = ‘MAA_TRXP’;

FILE_NAME
---------------------------------------
/m02/oradata/maa/maa_trxp01.dbf
/m02/oradata/maa/maa_trxp02.dbf
/m02/oradata/maa/maa_trxp03.dbf

3 rows selected.

hmmmm...ada yang kurang, apa yah? oh iya jumlah/size dari masing2 datafile belum tampak nih…

sekarang kita lihat field2 pada object datafile biar hasilnya spesifik:

SQL> desc dba_data_files;

Name
---------------------------------------
FILE_NAME
FILE_ID
TABLESPACE_NAME
BYTES
BLOCKS
STATUS
RELATIVE_FNO
AUTOEXTENSIBLE
MAXBYTES
MAXBLOCKS
INCREMENT_BY
USER_BYTES
USER_BLOCKS

SQL> select substr(file_name,1,50),sum(bytes) from dba_data_files where tablespace_name = ‘MAA_TRXP’
group by file_name;

SUBSTR(FILE_NAME,1,50) SUM(BYTES)
-------------------------------------------------- ----------
/m02/oradata/maa/maa_trxp01.dbf 5242880000
/m02/oradata/maa/maa_trxp02.dbf 5242880000
/m02/oradata/maa/maa_trxp03.dbf 2147483648

3 rows selected.

Sip...sekarang kita resize tablespace dengan membuat datafile yang baru.... sebenarnya penentuan besaran kapasitas
dari datafile ada analisa tersendiri tapi...seperti biasa akan dibahas pada catatan mengenai Database analysis...hehehe...ngeles.

SQL> alter tablespace maa_trxp add datafile ‘/m02/oradata/maa/maa_trxp04.dbf’ size 5000 M;

Tablespace altered.

Check lagi datafile pada tablespace yang bersangkutan:

SQL> select substr(file_name,1,50),sum(bytes) from dba_data_files where tablespace_name = ‘MAA_TRXP’
group by file_name;

SUBSTR(FILE_NAME,1,50) SUM(BYTES)
-------------------------------------------------- ----------
/m02/oradata/maa/maa_trxp01.dbf 5242880000
/m02/oradata/maa/maa_trxp02.dbf 5242880000
/m02/oradata/maa/maa_trxp03.dbf 2147483648
/m02/oradata/maa/maa_trxp04.dbf 5242880000

4 rows selected.

Nah loooh...dah nambah kan??? siipp, mission succesed.

Sekarang check tablespace-nya, dah ngga kritis lagi atau masih kritis.

SQL> @ c:\Data\script\mccserver\tablespacecheck.sql

Tablespace Size

TABLESPACE_NAME MB ALLOC MB FREE MB USED % FREE % USED
----------------- ------------ ------------ ------------ ------ ------
CWMLITE 20 3 18 13 88
DRSYS 20 10 10 52 48
EXAMPLE 149 0 149 0 100
======================= potong ============
MAA_TRXP 17,048 5,245 11,803 31 69
MAA_TRXE 14,048 2,395 11,653 17 83
======================= potong ============
SYSTEM 560 135 425 24 76
TEMP 8,099 0 8,099 0 100
TOOLS 10 10 0 99 1
UNDOTBS1 5,951 5,477 474 92 8
USERS 25 24 1 98 3
======================= potong ============
XDB 38 38 0 100 0
------------ ------------ ------------
TOTAL 121,338 51,027 70,311

34 rows selected.

Ok deh kaka...sip kan, sekarang dah 69%, dan untuk tablespace lainnya ngga perlu deh gw jelasin lagi step2-nya,
selain ngga perlu juga akan menambah pusing para pembaca sekalian...apalagi gw yang ngetik.... smile

Alhamdulillah...akhirnya selesai juga tugas2 gw, selamat Hari Raya Idul Fitri 1428 H...Taqabalallahu mina wa minkum,
Mohon Maaf Lair dan Batin.... dan SELAMAT BERLIBUR..... ASYIKKKKK GW CUTI....SEMOGA ngga ada masalah sama server2 gw.
</pre>

Posted by roninmorgue on 10/13 at 12:03 AM
Computer DataBase • (0) Comments • (183) TrackbacksPermalink
Friday, October 12, 2007
Pemeriksaan Oracle Server

tutor_check_oracle.txt

Dear all member...para modie n semua administrator.

Seperti biasa nih, gw mau bikin catatan kecil...dan catatan ini adalah mengenai bagaimana gw melakukan
pemeriksaan rutin terhadap server database gw.(mau cuti panjang nih...tapi gw tetep harus stand by jadi PIC...hik2)

Ok..langsung aja yah, hal-hal yang gw check adalah :
catt : Banyak yang gw edit yah...jangan protes....

1. Cek Utilization Memory

login as: xxxxxx
xxxxxx@192.xxx.0.xxxAlamat Email inidilindungi dari bot spam, Anda Harus Mengaktifkan Javascript Untuk Melihatnya ‘s password:
Last login: Wed Sep 26 15:22:58 2007 from xxx.17.xx.153
Sun Microsystems Inc.  SunOS x.x Generic May xxxx

Sun Fire V880 S/N xxxxxxx PT. xxxxxx xxxx xxxxx 11/11/2003

# sar -r 10 5

SunOS FV880R x.x Generic_xxxxxx-08 sun4u 10/01/2007

12:14:14 freemem freeswap
12:14:24 180058 18268192
12:14:34 179741 18249747
12:14:44 179677 18286104
12:14:54 179346 18285995
12:15:04 178601 18249875

Average 179484 18267968

2. Cek Utilization Performance CPU

# sar -u 10 5

SunOS FV880R x.x Generic_xxxxxx-08 sun4u 10/01/2007

12:15:48 &#xus;r &#xsy;s &#xwi;o &#xid;le
12:15:58 10 2 17 71
12:16:08 1 1 4 95
12:16:18 1 1 8 90
12:16:28 13 4 8 75
12:16:38 43 17 25 15

Average 13 5 12 69

Note: Angka-angka tersebut boleh diubah-ubah sesuai kebutuhan yang mengartikan bahwa
setiap 10 detik akan tercatat sebanyak 5 kali

3. Cek Kapasitas Disk

# df -h

Filesystem size used avail capacity Mounted on
/dev/dck/c1t0d0s0 59G 2.2G 57G 4% /
/proc 0K 0K 0K 0% /proc
mnttab 0K 0K 0K 0% /etc/mnttab
fd 0K 0K 0K 0% /dev/fd
swap 8.7G 168K 8.7G 1% /var/run
swap 8.7G 2.1M 8.7G 1% /tmp
/dev/dck/c1t1d0s6 67G 22G 45G 33% /m01
/dev/dck/c1t2d0s6 67G 29G 37G 45% /m02
/dev/dck/c1t4d0s6 67G 31G 36G 46% /m04
/dev/dck/c1t5d0s6 67G 25G 42G 38% /m05
/dev/dck/c1t3d0s6 67G 37G 30G 56% /m03

4. Cek Tablespace dari database --> ini nih yang penting banget, karena kalau diabaikan bisa ngga running tuh database.

pertama2 kita bikin script dulu, beri nama tablespacecheck.sql:

## Cek TABLESPACE By Command Line Sql ##:

set linesize 128 echo off feedback on heading on verify off pagesize 35
col megs_alloc format 999,999,999 heading “MB ALLOC”
col megs_free format 999,999,999 heading “MB FREE”
col megs_used format 999,999,999 heading “MB USED”
col pct_free format 999 heading “% FREE”
col pct_used format 999 heading “% USED”
--col bsize format 99999 new_value bsize heading “BLOCK SIZE”

--set termout off
--select value bsize from v$parameter
--where name = ‘db_block_size’;
--set termout on

break on report skip 1
compute sum label “TOTAL” of megs_alloc on report
compute sum of megs_free on report
compute sum of megs_used on report

select c.tablespace_name,
round(a.bytes/1048576,2) megs_alloc,
round(b.bytes/1048576,2) megs_free,
round((a.bytes-b.bytes)/1048576,2) megs_used,
round(b.bytes/a.bytes * 100,2) pct_free,
round((a.bytes-b.bytes)/a.bytes,2) * 100 pct_used
from (select tablespace_name,
sum(a.bytes) bytes,
min(a.bytes) minbytes,
max(a.bytes) maxbytes
from sys.dba_data_files a
group by tablespace_name) a,
(select a.tablespace_name,
nvl(sum(b.bytes),0) bytes
from sys.dba_data_files a,
sys.dba_free_space b
where a.tablespace_name = b.tablespace_name (+)
and a.file_id = b.file_id (+)
group by a.tablespace_name) b,
sys.dba_tablespaces c
where a.tablespace_name = b.tablespace_name(+)
and a.tablespace_name = c.tablespace_name
union
select tablespace_name, round((sum(bytes_used) + sum(bytes_free)) / 1048576,2) meg_alloc,
round(sum(bytes_free) / 1048576,2) megs_free,
round(sum(bytes_used) / 1048576,2) megs_used,
round(sum(bytes_free) / (sum(bytes_used) + sum(bytes_free)) * 100,2) pct_free,
round(sum(bytes_used) / (sum(bytes_used) + sum(bytes_free)) * 100,2) pct_used
from v$temp_space_header
group by tablespace_name
order by tablespace_name;

terus kita running lewat sqlplus-->

SQL> @ c:\Data\script\mccserver\tablespacecheck.sql

Tablespace Size

TABLESPACE_NAME MB ALLOC MB FREE MB USED % FREE % USED
----------------- ------------ ------------ ------------ ------ ------
CWMLITE 20 3 18 13 88
DRSYS 20 10 10 52 48
EXAMPLE 149 0 149 0 100
======================= potong ============
MAA_TRXP 12,048 255 11,793 2 98
MAA_TRXE 14,048 2,395 11,653 17 83
======================= potong ============
SYSTEM 560 135 425 24 76
TEMP 8,099 0 8,099 0 100
TOOLS 10 10 0 99 1
UNDOTBS1 5,951 5,477 474 92 8
USERS 25 24 1 98 3
======================= potong ============
XDB 38 38 0 100 0
------------ ------------ ------------
TOTAL 121,338 51,027 70,311

34 rows selected.

uuuppsss....ternyata ada tablespace yang kritis, penggunaan diatas 80% itu sudah kritis. Jadi gimana solusinya?
nanti gw tulis lagi catatan yang khusus ngebahas ini, kira2 title catatannya Resizing Tablespace on Oracle.. smile

Nah...terakhir adalah kita check Locking Object yang dapat membuat performance database jadi down..

5. ## Cek Locking Object yang dapat membuat applikasi Database menjadi lambat.by sql #

SQL> select * from v$locked_object;

XIDUSN XIDSLOT XIDSQN OBJECT_ID SESSION_ID ORACLE_USERNAME OS_USER_NAME PROCE
-------- ---------- ---------- ---------- ---------- -------------------- --------------
1 46 2197363 30223 307 XXXXXXX XXX 42933008
5 36 2739445 3255683 65 XXXXXXX XXX 4752:604

Ternyata ada 2 object yang membuat aplikasi database jadi lambat...solusinya....itu ada pembahasan khusus dibagian
Performance Tuning, tapi kalau darurat sih, bisa langsung di Kill aja tuh proses. hehehe.... smile

OK...deh pemeriksaan selesai, ini sebagian kecil dari pemeriksaan rutin gw (jadi yang utama2nya aja)</pre>

Posted by roninmorgue on 10/12 at 11:39 PM
Computer DataBase • (0) Comments • (249) TrackbacksPermalink
Saturday, August 25, 2007
Membuat File Control Pada Oracle 10g

gw curhat dikit nih man....pas gw mo mounted dan opened DB gw..ternyata si oracle nampilin message kl database gw mengalami inconsistensi antara file control01.ctl dan control02.ctl…

SQL*Plus: Release 10.1.0.3.0 - Production on Thu Jan 4 11:01:12 2007

Copyright (c) 1982, 2004, Oracle. All rights reserved.

SQL> Connected.
SQL> SQL> ALTER DATABASE mount
*
ERROR at line 1:
ORA-00214: controlfile ‘/app/oracle/oradata/cad2006/control02.ctl’ version
14033 inconsistent with file ‘/app/oracle/oradata/cad2006/control01.ctl’
version 14030

Disconnected from Oracle Database 10g Enterprise Edition Release 10.1.0.3.0 - Production
With the Partitioning, OLAP and Data Mining options

apaan tuh file control01.ctl....? tanya dong kl penasaran ntar gw jawab deh!!!

Mana gw belom bikin backup controlfile pula…
walhasil gw bikin ulang deh file-file tersebut, gini nih caranya..:

CREATE CONTROLFILE REUSE DATABASE “cad2006” NORESETLOGS NOARCHIVELOG
MAXLOGFILES 50
MAXLOGMEMBERS 3
MAXDATAFILES 300
MAXINSTANCES 8
MAXLOGHISTORY 500
LOGFILE
GROUP 1 ‘/app/oracle/oradata/cad2006/redo01.log’ SIZE 1M,
GROUP 2 ‘/app/oracle/oradata/cad2006/redo02.log’ SIZE 1M,
GROUP 3 ‘/app/oracle/oradata/cad2006/redo03.log’ SIZE 1M
DATAFILE
‘/app/oracle/oradata/cad2006/sysaux01.dbf’ SIZE 210M,
‘/app/oracle/oradata/cad2006/system01.dbf’ SIZE 440M,
‘/app/oracle/oradata/cad2006/temp01.dbf’ SIZE 20M,
‘/app/oracle/oradata/cad2006/undotbs01.dbf’ SIZE 25M,
‘/app/oracle/oradata/cad2006/users01.dbf’ SIZE 5M;

Untuk lebih amannya lakukan backup terhadap file control secara rutin.

Posted by roninmorgue on 08/25 at 11:51 PM
Computer DataBase • (0) Comments • (62) TrackbacksPermalink
Membuat Fungsi di PL/SQL

sintak umum -->

Code:
CREATE OR REPLACE FUNCTION nama_fungsi
(parameter_1, ....)
RETURN tipe_data AS
variabel_1 tipe_data;
........
BEGIN
statemen_1;
........
RETURN nilai_yang_dikembalikan;
END;

contoh :

Code:
CREATE OR REPLACE FUNCTION SEGMENT (SALES NUMBER)
RETURN CHAR AS
SEGM CHAR(2);
BEGIN
IF (SALES >= 1000000) THEN
SEGM := ‘AA’;
ELSE IF ((SALES >= 700000) AND (SALES < 1000000)) THEN
SEGM := ‘AB’;
ELSE IF ((SALES >= 500000) AND (SALES < 700000)) THEN
SEGM := ‘AC’;
ELSE
SEGM := ‘AD’;
END IF;
RETURN SEGM;
END;
/

contoh itu adalah untuk pembuatan fungsi segmentasi dari customer berdasarkan pembelian.

fungsi ada :
- Fungsi tanpa parameter
- Fungsi dengan paramater
- Fungsi didalam fungsi (nested function)

Posted by roninmorgue on 08/25 at 11:17 PM
Computer DataBase • (0) Comments • (382) TrackbacksPermalink
Koneksi PHP ke Oracle 10g

Langsung aja, gw mo share pengalaman waktu melakukan konfigurasi buat koneksi PHP dengan Oracle dikantor gw…
Pertama gw ceritain arsitektur dari aplikasi yang akan gw bikin :

1. SQL Server berada pada database server dengan IP 172.17.50.XX
2. Web Server dengan Apache dan PHP dengan IP 172.17.50.XX
3. Oracle berada pada database server dengan IP 192.168.0.XXX dan 192.168.0.XX
4. Semuanya dihubungkan dengan gateway (sori IP nya ngga bisa disebutkan).

So...kesimpulannya semua database tidak berada pada satu mesin (tanya kenapa??? mana gw tahu bukan gw yang bikin sih...tapi kayanya berhubungan dengan security deh).

Terus...kita lanjut lagi ke curhatan gw, sampe mana yah? oh yah sampe MY GOD, THAT’s so Hard ;o Man!!!, Why??? jarang banget tutorial tentang PHP dengan Oracle ditambah PHP manual juga belum banyak membantu (soalnya gw nya buta banget).

Ok...gw tambahin deh spek dari Oracle Servernya sendiri menggunakan Oracle 9i dan 8i dan dikomputer web server terinstall Oracle Client 7.3.3, fungsi dari Oracle Client adalah sebagai penghubung ke Oracle server...nah disinilah letak TrouBLE utamanya, pertama gw coba ikutin dari PHP manualnya gimana cara mengaktifkan modul Oracle supaya didukung oleh PHP:

--// Buka “;"pada (php.ini)
;extension=php_oci8.dll
;extension=php_oracle.dll

penjelasannya sih gampang man...tapi ternyata ngga semudah itu!! Sampai puyeng pale gw tetep ngga berfungsi tuh modul, dengan peringatan tidak ditemukan oci.dll pada OS kita (padahal ada), iseng gw googling deh nyari file oci.dll n nemu juga akhirnya disertai dengan manualnya:

This dll-file was downloaded
from http://www.dll-files.com
Install notes:

º Use ExpressZIP to extract the file to
º your windows\system directory

n walah berhasil juga ... pas gw copy oci.dll di System32 dan System, PHP mengenali modul oci8 dan oracle Wink ... selesaikah masalah?? not yet man, cos setelah gw coba masukin script penghubung kaya gini nih "

<?php

$c1 = OCILogon("$username","$password","$dbname" );

if ($c1 == false){
echo OCIError($connection)."not connected";
exit;
}
else
{
echo "success connecting to my oracle databases";
}

?>

pesen yang gw dapetin selalu Warning: _oci_open_server: ORA-12154: TNS:could not resolve service name.

Gw googling lagi deh arti dari pesen error itu… ternyata harus ada file tnsnames.ora pada folder oracle yang mengandung konfigurasi yang mengarahkan pada letak dan nama service dari server Oraclenya:

--// catt: semua konfigurasi dah gw edit
JOUNIN =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(Host = hostname-or-ipaddress)(Port = 1521))
(CONNECT_DATA =
(SID = sidname)
)
)

hmmm...filenya dah ada dengan konfigurasi bener tuh!!! :\ , trus masalahnya dimana yah??? gw baca lagi deh manual PHP-nya, akhirnya walah...gw ngga liat satu buah statement like this “These functions allow you to access Oracle8 and Oracle7 databases. It uses the Oracle8 Call-Interface (OCI8). You will need the Oracle8 client libraries to use this extension.”

My..GOD that it’s, Oracle8 client libraries to use this extension sedangkan gw pake Oracle7.3.3 client yang memiliki perbedaan konfigurasi dengan Oracle8i dan 9i dimana tidak mengenali parameter SID dan sudah menggantinya dengan parameter SERVICE_NAME ;o , ya udah akhirnya gw ganti clientnya dengan Oracle9i client dan mengkonfigurasi ulang file tnsnames.ora nya jadi seperti ini:

JOUNIN =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = hostname-or-ipaddress)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = servicename)
)
)

Selesaikah....??? huuuuuuaaaaaaaaa Surprised nangis deh gw, blom bisa juga man!!! hampir asa gw putus nih, mana under presure pula nih :\ , utak-atik lagi deh gw ... ngubek2 php manual sampe masuk forum2 luar n masuk milis… n hasilnya adalah gw nemuin jawabannya, karena Oracle servernya berada pada lain jaringan maka kita harus mendekripsikan terlebih dahulu SERVICE_NAME nya pada script PHP kita, bingung yah??? ya udah gw kasih contoh langsung aja yah....kita edit aja file koneksi.php

<?php

$db = " (DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.XXX)(PORT = 1521))
(CONNECT_DATA = (SERVICE_NAME = servicename))
)";

$c1 = OCILogon("username","password",$db);

if ($c1 == false){
echo OCIError($connection)."not connected";
exit;
}
else
{
echo ";success connecting to my oracle databases";
}

?>

Taaaadaaaaaa.....berhasil man, now it will work.

Ok ... sekian dulu kisah perjuangan gw, buat para master sori kl kesannya gw bego banget..tapi emang gw bego sih kl soal ini rasberry , trus kesannya gw sebentar yah ngopreknya..padahal gw ngabisin waktu seminggu lebih cuma buat meng-koneksikan PHP dengan Oracle Server :\ . Trus pesen gw, teruslah bereksperimen...kl nemu masalah cari tahu sendiri dulu deh (googling, forum, milis etc)kl dah mentok banget baru minta bantuan langsung.

Terakhir… buat para programmer PHP, jangan terpaku dengan MySQL!!! cos enterprise banyak menggunakan Oracle dan SQL Server.

OK...Goodluck for Us, see you next time!!!Smile

Posted by roninmorgue on 08/25 at 11:01 PM
Computer DataBase • (1) Comments • (65) TrackbacksPermalink
HS configuration on Oracle 10g

Dear all,

gw mo bagi2 cerita nih soal gimana membuat koneksi antara oracle denga SQL server 2000(soalnya di kantor gw make itu 2 jenis DB), saat kita hendak melakukan query dari Oracle ke SQL Server, misal tabel pertama ada di oracle dan tabel kedua ada di SQL Server dan kita ingin melakukan join terhdap kedua tabel tersebut..kl dari oracle ke oracle sih gampang kita tinggal melakukan konfigurasi pada file TNSNAMES.ORA ditiap klien, dan kita bikin DBLINK. Yang sulit kl beda platform misal ke SQl Server.

Kondisinya adalah gw coba bikin DBLINK dari Oracle 10g (RHELAS3) ke SQLServer 2000 (win2000) menggunakan heterogenous service (hsodbc), selain itu ada cara lain dengan menggunakan Transparent Gateway(tapi ngga usah dibahas sekarang...blom diterapin).

To the point, langkah2 yang di lakukan adalah:

1. membuat DSN terlebih dahulu ke SQlServer dengan nama SQLSERVER(terserah lo semua sih), dan buat koneksi (dengan login berdasarkan windows authentication atau SQL Authentication)
2. melakukan konfigurasi di server Oracle pada file :
a. /app/oracle/product/10.0.1/hs/admin/inithsodbc.ora

# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent.

#
# HS init parameters
#
HS_FDS_CONNECT_INFO = SQLSERVER // nama DSN
HS_FDS_TRACE_LEVEL = 0
HS_FDS_SHAREABLE_NAME = <full path name of odbc driver manager or driver>

#
# ODBC specific environment variables
#
set ODBCINI=<full path name of the odbc initilization file>

#
# Environment variables required for the non-Oracle system
#
set <envvar>=<value>

b. /app/oracle/product/10.0.1/network/admin/listener.ora

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /app/oracle/product/10.0.1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = db2006) // nama global db oracle
(ORACLE_HOME = /app/oracle/product/10.0.1)
(SID_NAME = db2006) // nama service oracle
(PROGRAM=hsodbc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
)
)
)

c. /app/oracle/product/10.0.1/network/admin/tnsnames.ora

DB2006 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = db2006)
)
(HS=OK)
)

3. lakukan restart service LSNRCTL

4. membuat DBLINK

CREATE DATABASE LINK CAD2004CONNECT
CONNECT TO “172.17.x.x\Gugun” // alamat IP SQLServer
IDENTIFIED BY Gugunpassword
USING ‘db2006’;

udah deh...gampang kan!!!

Posted by roninmorgue on 08/25 at 10:27 PM
Computer DataBaseComputer Unix • (0) Comments • (267) TrackbacksPermalink
Konsep Load Balancing Data Base

Pembangunan infrastruktur TI yang kuat dan memadai dinilai sangat penting sekarang ini. Mengingat setiap hari jumlah data yang harus direkam menjadi semakin banyak. Ratusan bahkan ribuan data data baru masuk setiap harinya. Belum lagi lalu lintas data yang menjadi semakin ramai juga memerlukan perhatian khusus.

Oleh sebab itu, banyak perusahaan TI yang berlomba-lomba memberikan solusi terbaik bagi perusahaan agar dapat memaksimalkan kerja departemen TI itu sendiri. Mulai dari pembuatan software, outsourcing, perencanaan infrastruktur, sampai produk yang dinamakan business solution.

Dengan banyaknya kebutuhan yang diperlukan oleh sebuah perusahaan, maka hampir setiap perusahaan besar membagi inftastruktur TI-nya menjadi beberapa bagianpenting, yang dikategorikan menurut aplikasinya. Misalnya, untu keperluan e-mail perusahaan, maka perusahaan akan membangun sebuah mail server khusus. Atau untuk perusahaan yang memiliki database cukup besar, maka perusahaan tersebut akan memiliki sebuat server khusus yang akan menangani ERP.

Tidak hanya sampai di situ saja, untuk dapat kuat dan memadai server dan jaringan yang ada juga harus ditunjang oleh berbagai komponen penting, seperti system keamanan yang terpercaya, maintenance yang dapat diandalkan, serta system control yang baik.

Load balancing. Adalah sebuah konsep yang gunanya untuk menyeimbangkan beban atau muatan pada infrastruktur TI sebuah perusahaan. Agar seluruh departemen dapat dimanfaatkan secara maksimal dan optimal.
Beberapa perusahaan TI yang telah meluncurkan solusi total dari konsep load balancing : HP dengan utility computing, IBM dengan Utility On Demand, Sun dengan Sun and I, Oracle dengan 10g.

10g dari Oracle
Dinamakan juga grid computing. Pada dasarnya, grid disini, dimaksudkan dengan clusters dari sebuah computer atau server yang saling berhubungan satu sama lain, untuk bekerja sama saling berbagi resources.
10g bekerja pada servers database dan aplikasi. Dengan adanya 10g, maka system dapat saling berbagi ruang maupun kemampuan sehingga system yang satu dengan yang lainnya dapat bekerja lebih optimal dan efisien. Untuk lebih jelasnya, perhatikan aplikasi 10g berikut:

Sebuah bank terdapat empat buah server dengan keperluan yang berbeda satu sama lain, seperti server SCM, ERP, CRM dan e-mail. Tentu saja ke-empat-empatnya harus dibangun dengan sistem yang lengkap, baik dari segi hardware maupun keamanannya. Padahal kerja ke-empat-empatnya tidak selalu sama dari hari ke hari. Contoh saja e-mail server, pada hari libur server akan tidak bekerja 100%, mengingat pada akhir pecan tidak terlalu banyak e-mail yang bersliweran. Namun pada akhir pekan banyak transaksi melalui ATM yang berlangsung. Sehingga server yang digunakan untuk transaksi tersebut dapat memanfaatkan resources yang tersedia melimpah pada e-mail server. Lain halnya jika anda tidak menggunakan 10g atau konsep load balancing.Server untuk transaksi tetap bekerja dengan supersibuk, sementara e-mail server menganggur sia-sia. Mengapa demikian? Pada 10-g, semua server akan dikumpulkan menjadi satu kesatuan secara virtual sehingga satu sama lain dapat saling memanfaatkan resources.

Sistem grid computing sendiri memiliki beberapa komponen penting selain 10-g nya, yaitu beberapa komponen seperti hardware dalam infrastruktur yang kuat dapat diandalkan. Seperti Internet, blader server, perangkat jaringan, SAN, storage Array (RAID), serta processor 32-bit – 64 bit.

Blade server
Blade server menjadi salah satu komponen penting dari 10g, karena server ini dapat bersifat plug and play yang memudahkan dalam peng-upgrade- an system. Satu rack blade server dapat menampung sebanyak 280 server sekaligus. Dalam setiap satu blade server biasanya terdapat satu atau dua processor dengan memory. Pada pengoperasiannya blade server tidak memelukan energi yang besar dan tidak mengeluarkan panas yang berlebihan, sehingga cukup efisien untuk digunakan.
Blade server juga biasa disebut high density server yang bekerja pada system cluster dan biasanya digunakan untuk satu task saja. Misalnya, file sharing saja atau streaming audio serta video dan sebagainya. Dan karena alasa cluster ini, maka blade server cocok untuk digunakan dalam konsep load blancing. Awalnya, IBM yang memperkenalkan server jenis ini, namun kini sudah banyak perusahaan TI yang telah memproduksinya seperti HP dan SUN Microsystems.

SAN
SAN (Storage Area Network) adalah jaringan yang khusus menangani dan menghubungi berbagai macam perangkat storage. SAN memiliki hubungan lansung ke server dan memungkinkan komuunikasi data antar – server.
Oleh karena itu, storage area network yang baik juga merupakan dukungan penting bagi 10g. Sebab biar bagaimanapun, untuk dapat mengoptimalkan akses data memang dibutuhkan jaringan yang kuat dari data itu sendiri.

RAID
RAID (Redundant Array of Independent Disks) adalah sebuah system yang memungkinkan menyimpan data yang sama pada saat yang bersamaan di tempat yang berbeda. Namun, anda tidak akan mengetahui HDD mana yang berperan sebagai HDD utama dan mana yang bukan.
Untuk perusahaan yang membutuhkan waktu uptime yang tinggi, misalnya 100%, maka teknologi RAID menjadi pilihan wajib. Sehingga bila terjadi kerusakan pada satu bagian data/storage system akan tetap mampu berjalan sebagaimana mestinya.

Kalo LOAD BALANCING untuk database, setahu saye nih menurut pengalaman ada 3 masalah. (ORACLE)

1. File over : menerapkan 2 database pada 2 server yanng memiliki konsep sama,
dalam artian fisik dan konsep database yang dibangun harus sama.Kemudian pada saat instalasi
oracle harus ada parameter tambahan yang harus di instal (saya lupa parameternya coba nanti saya cek lagi)
setelah itu kita buat scheduling untuk backup data. Memang kerja 2X, akan tetapi jika salah satu server mati maka akan ada backup dari
server kedua. (tolong di ralat)
2. Clustering : Pada dasarnya kita meringkas kerja, dalam artian begini pada saaat kita mengakses
beberapa tabel kita akan menggunakan banyak where. untuk meringkas hal tersebut maka kita buat clustering
sehingga .... ya lebih cepat he he he .....!!!
3. partitioning : Permasalahan yang timbul pada saat pengaksesan index yang sering. Oleh sebab itu object yang memiliki index
tersebut kita ibaratkan di ambil dan dibuatkan sebuah object tersendiri. sehingga kita cukup mengakses object baru tersebut
Hal ini bertujuan untuk meringkas dan mempercepat pekerjaan.
Saran dari penulis Kalo anda menggunakan ORACLE cobalah memanfaatkan perangkat lunak
“TOAD for ORACLE”. Coba aja pake LVS ( kalo OS nya Linux via NAT/network address translation)
Maaf kalo ada salah-salah kata or penjelasan yang kurang jelas. soalnya ga bisa menyusun kata-kata. 

Posted by roninmorgue on 08/25 at 01:47 AM
Computer DataBase • (0) Comments • (139) TrackbacksPermalink
Learn For Oracle DataBase Administrator 2

Dear all.... saya mau berbagi pengalaman aja nih soal Oracle, kasusnya adalah saya membuat otomatic archived log...tersimpan pada folder default.

Perhari log transaksi saya sebesar 5 - 10 GB, dan saya sudah mengalokasikan space sebesar 100 GB pada folder archived log (saya menggunakan Oracle 10g dan linux RHELAS3).

Permasalahannya adalah saat saya menghapus file archived log secara fisik di harddisk, tetapi pada oraclenya sendiri sizenya tidak berubah…

Sehingga saat space sudah tidak mencukupi akan terjadi error redolog dan saya mengatasi permasalahan tersebut dengan menambah size space
pada folder archived log, dan ini sangat mengganggu karena file tersebut akan terus membesar. Yang berikutnya adalah berhubung saya menggunakan OEM 10g berbasis web maka semua komputer dalam satu jaringan dapat mengakses OEM (walaupun ada user/IP yang boleh mengakses server database tetapi tidak boleh mengakses databasenya)

pertanyaannya adalah :

1. Bagaimana mensinkronkan ukuran size secara fisik di hardisk dengan size dioraclenya?
2. Apa yang menjadi kriteria dalam pengahapusan archived log file(usia kadaluarsa)?
3. Bagaimana membuat agar penghapusan archived log file dilakukan secara otomatis secara fisik?
4. Bagaimana membatasi IP mana saja yang boleh mengakses database?

Setelah mencari-cari jawaban lewat milis dan situs Oraclenya sendiri, ditemukan penyelesainnya....OK!!langsung saja.

1. Bagaimana mensinkronkan ukuran size secara fisik di hardisk dengan size dioraclenya?

Apabila file archivelog dihapus langsung tanpa menggunakan rman, maka informasi archivelog tsb masih tersimpan di controlfile.

Untuk mengsinkronkan informasi tsb, dari rman:

export ORACLE_SID=mysid
rman target /
crosscheck archivelog all;
delete expired archivelog all;

Sebaiknya menghapus archivelog dilakukan dari rman.
Misalkan utk menghapus archivelog yg lebih tua dari 1hari di disk:

delete archivelog all completed before ‘sysdate-1’;

Atau utk menghapus archivelog yg sequencenya <= 1000.

delete archivelog until sequence 1000;

2. Apa yang menjadi kriteria dalam pengahapusan archived log file(usia kadaluarsa)?

Archivelog akan di-keep di disk selama diperlukan.
Untuk itu Anda mesti mengecek retention policy untuk backup. Dari rman:

show retention policy;

kalau tidak pernah diubah, maka hasilnya akan seperti ini:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

yg artinya Oracle akan meng-keep satu versi full backup, yg meliputi full database backup + semua archivelog setelah full backup tsb dilakukan.

Coba cek website ini utk detail bagaimana cara Oracle me-maintain FRA.

http://download-east.oracle.com/docs/cd/B19306_01/
backup.102/b14192/setup005.htm

Intinya adalah:
- Oracle akan meng-keep file2 yg ada di FRA selama FRA size masih dibawah nilai DB_RECOVERY_FILE_DEST_SIZE.
- Kalau sudah penuh, Oracle akan mencari file2 mana yg obsolete berdasarkan retention policy-nya, dan akan otomatis dihapus.

3. Bagaimana membuat agar penghapusan archived log file dilakukan secara otomatis secara fisik?

Untuk pertanyaan ini solusinya adalah menghapus dengan mengunakan rman/jangan menghapus langsung dari sisi OS, buat scheduller untuk menjalankan rman (sesuai dengan jawaban no.1).

4. Bagaimana membatasi IP mana saja yang boleh mengakses database?

Coba masuk ke Server Oracle, pilih Oracle Net Manager (terletak di folder Configuration and Migration Tools), kemudian pilih Profile, lalu pilih tab Access Rights.
Disitu bisa diatur IP mana saja yang boleh dan tidak boleh mengakses database.

------------------------------------------------------------

Shoutz:
~~~~~~
~ forum|staff (roninmorgue, darkstar, admin, qnoyyy, gaga, kalion,
WaferStick, newbie, cloud, acieis)
~ mercubuana-it@yahoogroups.com ,
~ x-code staff n members at yogya_family_code, ^family_code^,
---------------------------------------------------------------

Contact:
~~~~~~~~
roninmorgue || forum|staff
Homepage: http://www.forum.mercubuana-it.org/
email: roninmorgue[at]yahoo[dot]co[dot]id
anstellwinkel[at]yahoo[dot]com[dot]au
petambakudang[at]yahoo[dot]co[dot]id
---------------- [ EOF ] ----------------------------------------

Posted by roninmorgue on 08/25 at 01:45 AM
Computer DataBase • (1) Comments • (69) TrackbacksPermalink
Instalasi Oracle10g di Linux RHELAS3

Langsung aja ya...cos gw nga suka basa basi, sebenarnya artikel ini gw buat berdasarkan pengalaman gw saat melakukan instalasi oracle10g di server baru.
Dan juga tadinya buat xcode magazine 4, tapi kayanya telat deh...jadi baru sekarang bisa gw kirim.

Semoga artikel ini bisa menjadi referensi yang baik, karena jujur aja ... artikel yang menjelaskan instalasi oracle10g dilinux jarang banget yang berbahasa Indonesia, sekalipun ada nga menyeluruh.
Btw...tetep gw jadiin referensi, selain dari situs oracle-nya sendiri.

Ok, pertama DL dulu oracle10g for linux dari situs oraclenya di
http://otn.oracle.com/software/products ... index.html

file --> ship.db.lnx32.cpio.gz

gunzip ship.db.lnx32.cpio.gz

* unpack file ship.db.lnx32_10103.cpio
--> # cd /app
# cpio -idmv < ship.db.lnx32_10103.cpio atau jika sudah ditulis dalam cdrom :
--> # cd /app
# cpio -idmv < /mnt/cdrom/ship.db.lnx32_10103.cpio

pemeriksaan memory dan swap

# grep MemTotal /proc/meminfo
# grep SwapTotal /proc/meminfo

jika swap kurang dari 1 ghz

# dd if=/def/zero of=tmpswap bs=1k count=700000
# chmod 600 tmpswap
# mkswap tmpswap
# swapon tmpswap

pemeriksaan kapasitas direktori /tmp

# df /tmp

memperbaharui parameter kernel

# /etc/sysctl.conf
--> # Kernel Parameters for oracle 10.1.0 #
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
setelah selesai jalankan # sysctl -p

mengatur limit maximum file dan proses

# /etc/security/limits.conf
--> # To increase the shell limits for oracle 10.1.0 #
* soft nproc 2047
* hard nproc 16384
* soft nofile 4096
* hard nofile 63536

# /etc/profile
--> if [ $USER = “oracle” ]; then
if [ $SHELL = “/bin/ksh” ]; then
ulimit -p 16384
ulimit -n 63536
else
ulimit -u 16384 -n 63536
fi
fi
export ORACLE_BASE=/app/oracle;
export ORACLE_HOME=$ORACLE_BASE/product/10.0.1;
export ORACLE_SID=ora10g;

setelah disimpan berikan perintah # source /etc/profile

membuat group, user, dan direktori

# mkdir -p /app/oracle/product/10.0.1
# mkdir -p /var/app/oracle
# groupadd dba {memiliki hak akses SYSDBA}
# groupadd oinstall {pemilik software}
# useradd -c “Oracle Software Owner” -g oinstall -G dba oracle -d /app/oracle

owner dan hak akses direktori

# chown -R oracle:oinstall /app/oracle
# chown oracle:dba /var/app/oracle
# chmod 755 /app/oracle
# chmod 755 /var/app/oracle

INSTALASI

dari terminal root
# xhost +

dari terminal lain
# su - oracle
$ cd /app/Disk1
$ ./runInstaller

pada saat proses instalasi anda diminta menjalankan file /app/oracle/oraInventory/orainstRoot.sh
melalui user root

dari terminal root
# cd /app/oracle/oraInventory
# ./orainstRoot.sh

setelah proses instalasi selesai, sebelum klik tombol OK..jalankan file root.sh melalui user root

dari terminal root
# cd /app/oracle/product/10.1.0
# ./root.sh

Sampai sini proses instalasi oracle10g sudah selesai.

nb : Saat Linux direstart maka oracle tidak berjalan secara otomatis, kita harus membuat script otomasi untuk menjalankan database dan mengaktifkan oracle enterprise manager

dari terminal root
#ubah konfigurasi listener
#vi /app/oracle/product/10.1.0/network/admin/listener.ora

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /app/oracle/product/10.1.0)
(PROGRAM = extproc)
)
)

dengan

SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /app/oracle/product/10.1.0)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ora10g)
(ORACLE_HOME = /app/oracle/product/10.1.0)
(SID_NAME = ora10g)
)
)

edit setting di file /etc/oratab file dengan “Y”:
# vi /etc/oratab
ora10g:/u01/app/oracle/product/10.1.0:Y

Buat script pada file /etc/init.d/dbora
# vi /etc/init.d/dbora
:
#!bin/sh
#chkconfig: - 20 80
#description: Oracle autostart-stop script
#
#coding by gugun gunawan
#
#set ORA_HOME to be equivalent to the $ORACLE_HOME
#from which you execute dbstart
#/etc/init.d/dbora

ORACLE_HOME=/app/oracle/product/10.1.0;
ORACLE_OWNER=oracle;

#Start oracle database
su - $ORACLE_OWNER -c $ORACLE_HOME/bin/dbstart
su - $ORACLE_OWNER -c $ORACLE_HOME/bin/lsnrctl start

#Untuk menjalankan oracle enterprise manager control
su - $ORACLE_OWNER $ORACLE_HOME/bin/emctl start dbconsole

------eof-----

edit file /app/oracle/product/10.1.0/bin/dbstart
# vi /app/oracle/product/10.1.0/bin/dbstart
ORATAB=/app/opt/oracle/oratab
dengan
ORATAB=/etc/oratab

edit/tambahkan file /etc/rc.local
# vi /etc/rc.local
/etc/init.d/dbora

=================================================================
notes :
script dibuat berdasarkan percobaan yang sudah dilakukan penulis dan berjalan dengan baik, script dibuat untuk lebih memudahkan
=================================================================

referensi :
Administrasi Oracle 10g, Evara Samsyiar
InfoLinux 02/2005 dan 03/2005 (instalasi oracle 9i pada RH9)
http://www.oracle.com/technology/pub/ar ... stall.html
Oracle Database Concepts : http://dba.ipbhost.com/lofiversion/index.php/t879.html

Posted by roninmorgue on 08/25 at 01:44 AM
Computer DataBaseComputer Unix • (0) Comments • (277) TrackbacksPermalink
Learn For Oracle DataBase Administrator

Setelah sekian lama gw ngga muncul2...maklumlah lagi sibuk banget nih. Buat para
admin dan moderator forum lainnya gw minta maaf yah.

OK...langsung aja deh, gw ingin berbagi pengalaman gw sendiri nih mengenai
administrasi database oracle selain SQL Server2000(gw bingung mo yang mana yang
diduluin nih)

spek :
Sun Solaris Server (SPARC)
Oracle 10G DataBase

pada tulisan ini Pengenalan Dulu deh -->

--> Oracle Enterprise Manager 10g
pada oracle 10g OEm telah berupa aplikasi berbasis web, sehingga DBAdmin dapat
melakukan semua aktifitas pengaturan database melalui web browser.
Ada 2 tipe OEM :
1. Oracle Enterprise Manager Database Control yang dapat diinstal pada setiap database.
2. Oracle Enterprise Manager Grid control yang dapat diinstall terpisah.

Jika menggunakan OEM release 1, maka secara default akan terinstall dengan menggunakan
port 5500 sehingga dapat diakses dengan alamat http://[nama_host]:5500/em.

--> Manajemen dengan Target Home Pages
halaman ini digunakan oleh para DBAdmin untuk mengetahui kinerja database, informasi
yang ditampilkan meliputi :
* General status
* aktifitas pemakaian CPU
* availabilitas
* pemakaian media penyimpan
* Informasi bantuan dari ADDM
* informasi job
* alert

--> OEM untuk administrasi
pada menu ini dapat dapat dilakukan pengaturan control files, tablespaces dan datafiles,
undo segments, redo log groups, instance memori, dsb. DBA juga dapat membuat job
scheduler dalam bentuk grafik.

--> OEM untuk Performance Tuning
Kinerja dari aktifitas database dapat dipantau dalam bentuk grafik sehingga akan segera
diketahui apabila terjadi penurunan terhadap kinerja database.

Ok!! itu sekilas pengenalan tentang Oracle 10g, dah pada bosan yah....lanjut deh!!!!!

PERFORMANCE TUNING
oracle 10g memiliki fitur yang disebut AWR (automatic workload repository) yang berfungsi
melakukan capture informasi-informasi yang berhubungan dengan aktifitas kinerja database
dan menyimpannya dalam bentuk repository sehingga dengan informasi ini terdeteksi
permasalahan yang menghambat kinerja database.
AWR mengumpulkan data2 statistik, seperti:
* lama waktu pada setiap aktifitas database
* Objek2 yang diakses pada database
* statistik tertentu yang diambil dari V$SYSSTAT dan V$SESSSTAT
* Query yang menghambat kinerja database
* satistik dari OS

untuk melihat komponen2 statistik yang dikumpulkan oleh AWR dapat digunakan view
V$STATISTICS_LEVEL

SQL> select statistics_name, activation_level
2 from v$statistics_level;

STATISTICS_NAME ACTIVAT
-------------------------------------- -------
Buffer Cache Advice TYPICAL
MTTR Advice TYPICAL
Timed Statistics TYPICAL
Timed OS Statistics ALL
Segment Level Statistics TYPICAL
PGA Advice TYPICAL
Plan Execution Statistics ALL
Shared Pool Advice TYPICAL
Modification Monitoring TYPICAL
Longops Statistics TYPICAL
Bind Data Capture TYPICAL
Ultrafast Latch Statistics TYPICAL
Threshold-based Alerts TYPICAL
Global Cache Statistics TYPICAL
Cache Stats Monitor TYPICAL
Active Session History TYPICAL
Undo Advisor, Alerts and Fast Ramp up TYPICAL

17 rows selected

SQL>

Data tersebut dikumpulkan AWR untuk digunakan Automatic Database Diagnostic
Monitor(ADDM) untuk dianalisa.

AWR REPORT
untuk menampilkan report kita gunakan script awrrpt.sql dan awrrpti.sql yang
dapat diakses pada direktori $ORACLE_HOME dbmsadmin

SQL> conn sys/oracle as sysdba
Connected.

SQL> @? dbmsadminawrrpt.sql
Snap
Instance DB Name Snap Id Snap Started Level
----------- ----------- --------------- ------------------ -------
orcl ORCL 1 01 Oct 2006 21:08 1
2 01 Oct 2006 21:15 1

--- 8 01 Oct 2006 22:09 1
9 01 Oct 2006 22:17 1

pilih batas awal dan akhir Snap Id untuk dilakukan analisa, misal 8 dan 9

Specify the Begin and End Snapshot Ids
--------------------------------------
Enter value for begin_snap : 8
Begin Snapshot Id specified: 8

Enter value for end_snap : 9
End Snapshot Id specified: 9

Buat nama file analisa, misal analisa.html

Specify the Report Name
-----------------------
The default report file name is awrrpt_1_8_9.html. To use
this name,
press to continue, otherwise enter an alternative.

Enter value for report_name: /dbase/mccdbase/analisa.html

Sepertinya...sampai sini dulu deh, sebenarnya masih banyak sih yang pengen gw
share but kayanya ngga mungkin deh. So...jadi tulisan ini cuma sekedar untuk
ngebuka wawasan kita-kita aja, siapa tahu ada yang tertarik dengan dunia
database

Karena banyak ilmu yang menarik man...jujur aja ilmu ini hampir ngga kita dapatkan
dari kampus, seperti ->

Administrasi Database
Data Mining &
Pemrograman Database

Apaan tuh datamining.... wah lain kali deh gw kasih tahu yah...!!
but yang paling banyak dipake tentu aja SQL yang advance alias ngga cuma select,
insert, update dan delete smile

Dunia database itu luas man!!!! berminat...????? 

Posted by roninmorgue on 08/25 at 01:40 AM
Computer DataBase • (0) Comments • (136) TrackbacksPermalink
Page 2 of 2 pages  <  1 2