1. 程式人生 > 其它 >使用HHDBCS對ORACLE 12CR2 RAC校驗及巡檢

使用HHDBCS對ORACLE 12CR2 RAC校驗及巡檢

1 SCAN IP連線測試

Oracle RAC叢集搭建完成後需要對連線進行校驗,判斷資料庫叢集是否可以對外提供服務。本次校驗客戶端使用HHDBCS資料庫管理工具進行驗證。 HHDBCS資料庫管理工具是一個跨平臺的資料庫管理工具,可以在WINDOWS、LINUX、MAC等作業系統執行,比如linux可以執行start_csadmin.sh檔案啟動。 填入叢集SCAN IP對應的連線資訊、賬號和密碼點選【測試連線】按鈕測試是否連線成功。

2 RAC巡檢

點選查詢視窗,將巡檢sql輸入到查詢視窗中,點選執行或者按快捷鍵F8執行。對於巡檢的結果可以進行匯出操作,可以匯出成csv、excel等多種格式的檔案。
下面是rac巡檢工作中一些常用的sql: locked_objects_rac.sql:Lists all locked objects for whole RAC.
SELECT b.inst_id,
       b.session_id AS sid,
       NVL(b.oracle_username, '(oracle)') AS username,
       a.owner AS object_owner,
       a.object_name,
       Decode(b.locked_mode, 0, 'None',
                             
1, 'Null (NULL)', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share (S)', 5, 'S/Row-X (SSX)', 6, 'Exclusive (X)', b.locked_mode) locked_mode, b.os_user_name
FROM dba_objects a, gv$locked_object b WHERE a.object_id = b.object_id ORDER BY 1, 2, 3, 4;

longops_rac.sql:Displays information on all long operations for whole RAC.

SELECT s.inst_id,
       s.sid,
       s.serial#,
       s.username,
       s.module,
       ROUND(sl.elapsed_seconds/60) || ':' || MOD(sl.elapsed_seconds,60) elapsed,
       ROUND(sl.time_remaining/60) || ':' || MOD(sl.time_remaining,60) remaining,
       ROUND(sl.sofar/sl.totalwork*100, 2) progress_pct
FROM   gv$session s,
       gv$session_longops sl
WHERE  s.sid     = sl.sid
AND    s.inst_id = sl.inst_id
AND    s.serial# = sl.serial#;

monitor_memory_rac.sql:Displays memory allocations for the current database sessions for the whole RAC.

SELECT a.inst_id,
       NVL(a.username,'(oracle)') AS username,
       a.module,
       a.program,
       Trunc(b.value/1024) AS memory_kb
FROM   gv$session a,
       gv$sesstat b,
       gv$statname c
WHERE  a.sid = b.sid
AND    a.inst_id = b.inst_id
AND    b.statistic# = c.statistic#
AND    b.inst_id = c.inst_id
AND    c.name = 'session pga memory'
AND    a.program IS NOT NULL
ORDER BY b.value DESC;

session_undo_rac.sql: Displays undo information on relevant database sessions.

SELECT s.inst_id,
       s.username,
       s.sid,
       s.serial#,
       t.used_ublk,
       t.used_urec,
       rs.segment_name,
       r.rssize,
       r.status
FROM   gv$transaction t,
       gv$session s,
       gv$rollstat r,
       dba_rollback_segs rs
WHERE  s.saddr = t.ses_addr
AND    s.inst_id = t.inst_id
AND    t.xidusn = r.usn
AND    t.inst_id = r.inst_id
AND    rs.segment_id = t.xidusn
ORDER BY t.used_ublk DESC;

session_waits_rac.sql:Displays information on all database session waits for the whole RAC.

SELECT s.inst_id,
       NVL(s.username, '(oracle)') AS username,
       s.sid,
       s.serial#,
       sw.event,
       sw.wait_class,
       sw.wait_time,
       sw.seconds_in_wait,
       sw.state
FROM   gv$session_wait sw,
       gv$session s
WHERE  s.sid     = sw.sid
AND    s.inst_id = sw.inst_id
ORDER BY sw.seconds_in_wait DESC;

sessions_rac.sql:Displays information on all database sessions for whole RAC.

SELECT NVL(s.username, '(oracle)') AS username,
       s.inst_id,
       s.osuser,
       s.sid,
       s.serial#,
       p.spid,
       s.lockwait,
       s.status,
       s.module,
       s.machine,
       s.program,
       TO_CHAR(s.logon_Time,'DD-MON-YYYY HH24:MI:SS') AS logon_time
FROM   gv$session s,
       gv$process p
WHERE  s.paddr   = p.addr
AND    s.inst_id = p.inst_id
ORDER BY s.username, s.osuser

小編把恆輝資料庫CS端管理工具和產品社群的連結附在了下面,感興趣的朋友可以進去了解一下!

[恆輝產品社群]

[恆輝資料庫CS端管理工具下載地址]