1、因?yàn)閛racle運(yùn)行在Linux系統(tǒng)下,首先,要連接Linux系統(tǒng)。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名申請、網(wǎng)絡(luò)空間、營銷軟件、網(wǎng)站建設(shè)、建平網(wǎng)站維護(hù)、網(wǎng)站推廣。
2、切換到oracle安裝用戶下。 我的用戶是 oracle。
3、運(yùn)行oracle的環(huán)境變量,在oracle 的根目錄下面,運(yùn)行 soruce .bash_prfile 命令, 以便 ? ? ? ?輸入相關(guān)命令。
4、運(yùn)行命令: cd $ORACLE_HOME 進(jìn)入oracle的安裝目錄。
5、在此輸入命令: find -name listener.log ,查找監(jiān)控日志文件。
6、運(yùn)行命令 cd ?到查看到的日志文件目錄。
7、運(yùn)行cat listener.log命令 查看日志文件。
方法1:使用LogMiner工具
優(yōu)點(diǎn):可以完全挖掘日志內(nèi)容,找出所有執(zhí)行過的SQL語句
缺點(diǎn):
1.
如果沒有啟用歸檔日志,則只能對聯(lián)機(jī)日志進(jìn)行挖掘
2.
需要掌握LogMiner的用法
訪法2:查看HIST視圖
優(yōu)點(diǎn):簡單,只要使用普通的select語句查詢
缺點(diǎn):Oracle保留約1周的歷史,所以要查太早的就不可能了
--
找出哪個(gè)數(shù)據(jù)庫用戶用什么程序在最近三天執(zhí)行過delete或truncate
table的操作
舉例如下:
SELECT
c.username,
a.program,
b.sql_text,
b.command_type,
a.sample_time
FROM
dba_hist_active_sess_history
a
JOIN
dba_hist_sqltext
b
ON
a.sql_id
=
b.sql_id
JOIN
dba_users
c
ON
a.user_id
=
c.user_id
WHERE
a.sample_time
BETWEEN
SYSDATE
-
3
AND
SYSDATE
AND
b.command_type
IN
(7,
85)
ORDER
BY
a.sample_time
DESC;
使用job的所有者賬號登陸,通過查詢user_jobs視圖查看;
我一般只關(guān)注三個(gè)字段;
LAST_DATE:最后次運(yùn)行時(shí)間;
NEXT_DATE:下次運(yùn)行時(shí)間;
TOTAL_TIME:總用時(shí)。具體語句如下:select s.LAST_DATE,s.NEXT_DATE,s.TOTAL_TIME from user_jobss。
日志
日志,是一個(gè)漢語詞匯,漢語拼音是rì zhì?;咀至x是指工作日志。日志主要發(fā)表在網(wǎng)絡(luò),詳細(xì)介紹一個(gè)過程和經(jīng)歷的記錄。
Oracle日志文件查看方法:
1、以sysdba權(quán)限用戶登錄數(shù)據(jù)庫。
2、執(zhí)行sql語句:select*fromv$logfile;
3、結(jié)果顯示即為日志路徑:
4、另外還有其他的操作日志可用以下兩個(gè)sql語句查詢:
select*fromv$sql;--(#查看最近所作的操作)select*fromv$sqlarea;--(#查看最近所作的操作)
Oracle日志的查看方法:
SQLselect*fromv$sql(#查看最近所作的操作)
SQLselect*fromv$sqlarea(#查看最近所作的操作)
Oracle數(shù)據(jù)庫的所有更改都記錄在日志中,從目前來看,分析Oracle日志的唯一方法就是使用Oracle公司提供的LogMiner來進(jìn)行,因?yàn)樵嫉娜罩拘畔⑽覀兏緹o法看懂,Oracle8i后續(xù)版本中自帶了LogMiner,而LogMiner就是讓我們看懂日志信息的工具,通過這個(gè)工具可以:查明數(shù)據(jù)庫的邏輯更改,偵察并更正用戶的誤操作,執(zhí)行事后審計(jì),執(zhí)行變化分析。