新聞中心
在日常運維中,查看服務器上的數(shù)據(jù)庫日志文件是一項必不可少的任務。通過查看日志文件,我們可以了解數(shù)據(jù)庫運行情況、發(fā)現(xiàn)異常和問題,以便及時處理。但對于新手來說,查看數(shù)據(jù)庫日志文件可能會比較困難。下面,本文將為您介紹如何查看服務器上的數(shù)據(jù)庫日志文件。

成都創(chuàng)新互聯(lián)專注于鹽津企業(yè)網站建設,響應式網站設計,商城網站定制開發(fā)。鹽津網站建設公司,為鹽津等地區(qū)提供建站服務。全流程按需網站建設,專業(yè)設計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務
一、登錄服務器
我們需要登錄服務器。如果您使用的是Windows系統(tǒng),可以通過遠程桌面等方式登錄服務器。如果您使用的是Linux系統(tǒng),可以通過SSH(Secure Shell)協(xié)議遠程登錄服務器。
二、定位日志文件目錄
接下來,我們需要找到數(shù)據(jù)庫日志文件所在目錄。不同的數(shù)據(jù)庫,其日志文件所在目錄也不同。以下是一些常見的數(shù)據(jù)庫日志文件目錄:
1. MySQL:/var/log/mysql/
2. PostgreSQL:/var/log/postgresql/
3. MongoDB:/var/log/mongodb/
4. Redis:/var/log/redis/
如果您不確定日志文件所在目錄,可以通過運行以下命令來查看:
1. MySQL:show variables like ‘%log%’;
2. PostgreSQL:show log_destination;
3. MongoDB:cat /etc/mongod.conf | grep log
4. Redis:cat /etc/redis/redis.conf | grep logfile
三、查看日志文件
找到日志文件所在目錄后,就可以查看日志文件了。日志文件通常是文本文件,后綴為.log或.txt。您可以將日志文件下載到本地查看,也可以通過運行以下命令來查看:
1. MySQL:less /var/log/mysql/mysql.log
2. PostgreSQL:tl -f /var/log/postgresql/postgresql-13-mn.log
3. MongoDB:less /var/log/mongodb/mongod.log
4. Redis:less /var/log/redis/redis-server.log
其中,mysql.log、postgresql-13-mn.log、mongod.log、redis-server.log分別是MySQL、PostgreSQL、MongoDB和Redis的默認日志文件名。如果您的日志文件名不同,請在運行命令時進行相應調整。
以上命令可以實時查看日志文件的內容,不斷向屏幕輸出最新的日志信息。如果不想實時查看,可以使用less命令進行查看。具體使用方法為:輸入less加上日志文件路徑,按下Enter鍵進入less的交互界面,然后使用上下箭頭滾動文件內容。查看完畢后,按下q鍵即可退出less。
四、根據(jù)需求過濾日志信息
有時候,我們只需要查找特定的日志信息,這時候就需要使用過濾命令了。以下是一些常見的日志過濾命令:
1. MySQL:grep “ERROR” /var/log/mysql/mysql.log
2. PostgreSQL:grep -E “(ERROR|FATAL)” /var/log/postgresql/postgresql-13-mn.log
3. MongoDB:grep “ERROR” /var/log/mongodb/mongod.log
4. Redis:grep “error” /var/log/redis/redis-server.log
以上命令分別查找MySQL、PostgreSQL、MongoDB和Redis中包含ERROR或FATAL(對應PostgreSQL)或error(對應Redis)的日志信息。您可以根據(jù)需要對命令進行相應調整,如查找特定的時間段、IP地址等信息。
:
通過本文的介紹,您已經知道了如何查看服務器上的數(shù)據(jù)庫日志文件了。簡單來說,只需登錄服務器,找到日志文件所在目錄,然后查看或過濾日志信息即可。當然,本文僅針對常見的數(shù)據(jù)庫,如果您遇到其他數(shù)據(jù)庫的日志文件查看問題,可以通過搜索引擎或參考官方文檔進行解決。
相關問題拓展閱讀:
- oracle里怎么對sql查詢的日志進行查看
oracle里怎么對sql查詢的日志進行查看
oracle里對sql查詢的日志進行查看步驟如下:
1、Oracle日志的路徑渣森或的查看。
2、Oracle日志文件包含哪些內容:日志的數(shù)量可能略有不同。
3、Oracle日志的查看方如伍法語句春老代碼。
4、LogMiner的使用方法理解。
5、查看LogMiner工具分析結果數(shù)據(jù) 。
6、分析結果在GV$LOGMNR_CONTENTS 視圖中。
Oracle日志查看
一.Oracle日志的路徑:
登錄:sqlplus “/as sysdba”
查看路徑:SQL> select * from v$logfile;
SQL> select * from v$logfile;(#日志文件路徑)
二.Oracle日志文件包含哪些內容:(日志的數(shù)量可能略有不同)
control01.ctl example01.dbf redo02.log sysaux01.dbf undotbs01.dbf
control02.ctl redo03.log system01.dbf users01.dbf
control03.ctl redo01.log SHTTEST.dbf temp01.dbf
三.Oracle日志的查看方法:
SQL>select * from v$sql (#查看最近所作的操作)
SQL>select * fromv $sqlarea(#查看最近所作的操作)
Oracle 數(shù)據(jù)庫的所有更改都記錄在日志中,從目前來看,分析Oracle日志的唯一方法就是使用Oracle公司提供的LogMiner來進行,因為原始的日志信息我們根本無法看懂,Oracle8i后續(xù)版本中自帶了LogMiner,而LogMiner就是讓我們看懂日志信息的工具,通過這個工具可以:查明數(shù)據(jù)庫的邏輯更改,偵察并更正用戶的誤操拿團作,執(zhí)行事后審計,執(zhí)行變化分析。
四.LogMiner的使用:
1、創(chuàng)建數(shù)據(jù)字典文件(data-dictionary)
1).首先在init.ora初始化參數(shù)文件中行敏答,添加一個參數(shù)UTL_FILE_DIR,該參數(shù)值為服務器中放置數(shù)據(jù)字典文件的目錄。如:UTL_FILE_DIR = ($ORACLE_HOME\logs) ,重新啟動數(shù)據(jù)庫,使新加的參數(shù)生效:
SQL> shutdown;
SQL>startup;
2).然后創(chuàng)建數(shù)據(jù)字典文件
SQL> connect /as sysdba
SQL> execute dbms_logmnr_d.build(dictionary_filename => ‘dict.ora’,dictionary_location => ‘/data1/oracle/logs’);
PL/SQL procedure successfully completed
2、創(chuàng)建要分析的日志文件列表
1).創(chuàng)建分析列表,即所要分析的日志
SQL>execute dbms logmnr.add logfile(LogFileName => ‘/data1/oracle/oradata/akazamdb/redo01.log’,Options => dbms_logmnr.new);
PL/SQL procedure successfully completeds
2).添加分析日志文件,一次添加1個為宜
SQL>execute dbms_ logmnr.add_ logfile(LogFileName => ‘/data1/oracle/oradata/akazamdb/redo01.log’,Options => dbms_logmnr.ADDFILE);
PL/SQL procedure successfully completed
3、使用LogMiner進行日志分析(具體要查詢什么內容可以自己修改)
(1)無限制條件
SQL> EXECUTE dbms_logmnr.start_logmnr(
DictFileName=>’/data1/oracle/logs/v816dict.ora ‘);
(2)有限制條件
通過對過程DBMS_ LOGMNR.START_LOGMNR中幾個不同參數(shù)的設置,可以縮小要分析日志文件的范圍。通過設置起始時間和終止時間參數(shù)我檔慧們可以限制只分析某一時間范圍的日志。如下面的例子,我們僅僅分析2023年9月18日的日志:
SQL> EXECUTE dbms_logmnr.start_logmnr(
DictFileName => ‘ /data1/oracle/logs/ v816dict.ora ‘,
StartTime => to_date(‘:00:00′,’YYYY-MM-DD HH24:MI:SS’)
EndTime => to_date(”:59:59′,’YYYY-MM-DD HH24:MI:SS ‘));
也可以通過設置起始SCN和截至SCN來限制要分析日志的范圍:
SQL> EXECUTE dbms_logmnr.start_logmnr(
DictFileName => ‘ /data1/oracle/logs/ v816dict.ora ‘,
StartScn => 20,
EndScn => 50);
4、觀察分析結果(v$logmnr_contents)
到現(xiàn)在為止,我們已經分析得到了重作日志文件中的內容。動態(tài)性能視圖v$logmnr_contents包含LogMiner分析得到的所有的信息。
SELECT sql_redo FROM v$logmnr_contents;
如果我們僅僅想知道某個用戶對于某張表的操作,可以通過下面的SQL查詢得到,該查詢可以得到用戶DB_ZGXT對表SB_DJJL所作的一切工作。
SQL> SELECT sql_redo FROM v$logmnr_contents WHERE username=’DB_ZGXT’ AND tablename=’SB_DJJL’;
需要強調一點的是,視圖v$logmnr_contents中的分析結果僅在我們運行過程’dbms_logmrn.start_logmnr’這個會話的生命期中存在。這是因為所有的LogMiner存儲都在PGA內存中,所有其他的進程是看不到它的,同時隨著進程的結束,分析結果也隨之消失。
最后,使用過程DBMS_LOGMNR.END_LOGMNR終止日志分析事務,此時PGA內存區(qū)域被清除,分析結果也隨之不再存在。
5、查看LogMiner工具分析結果
SQL> select * from dict t where t.table_name like ‘%LOGMNR%’;-看所有與logmnr相關的視圖
TABLE_NAME COMMENTS
GV$LOGMNR_CALLBACK Synonym for GV_$LOGMNR_CALLBACK
GV$LOGMNR_CONTENTS Synonym for GV_$LOGMNR_CONTENTS
GV$LOGMNR_DICTIONARY Synonym for GV_$LOGMNR_DICTIONARY
GV$LOGMNR_LOGFILE Synonym for GV_$LOGMNR_LOGFILE
GV$LOGMNR_LOGS Synonym for GV_$LOGMNR_LOGS
GV$LOGMNR_PARAMETERS Synonym for GV_$LOGMNR_PARAMETERS
GV$LOGMNR_PROCESS Synonym for GV_$LOGMNR_PROCESS
GV$LOGMNR_REGION Synonym for GV_$LOGMNR_REGION
GV$LOGMNR_SESSION Synonym for GV_$LOGMNR_SESSION
GV$LOGMNR_STATS Synonym for GV_$LOGMNR_STATS
GV$LOGMNR_TRANSACTION Synonym for GV_$LOGMNR_TRANSACTION
V$LOGMNR_CALLBACK Synonym for V_$LOGMNR_CALLBACK
V$LOGMNR_CONTENTS Synonym for V_$LOGMNR_CONTENTS
V$LOGMNR_DICTIONARY Synonym for V_$LOGMNR_DICTIONARY
V$LOGMNR_LOGFILE Synonym for V_$LOGMNR_LOGFILE
V$LOGMNR_LOGS Synonym for V_$LOGMNR_LOGS
V$LOGMNR_PARAMETERS Synonym for V_$LOGMNR_PARAMETERS
V$LOGMNR_PROCESS Synonym for V_$LOGMNR_PROCESS
V$LOGMNR_REGION Synonym for V_$LOGMNR_REGION
V$LOGMNR_SESSION Synonym for V_$LOGMNR_SESSION
TABLE_NAME COMMENTS
V$LOGMNR_STATS Synonym for V_$LOGMNR_STATS
V$LOGMNR_TRANSACTION Synonym for V_$LOGMNR_TRANSACTION
GV$LOGMNR_LOGS 是分析日志列表視圖
分析結果在GV$LOGMNR_CONTENTS 視圖中,可按以下語句查詢:
select scn,timestamp,log_id,seg_owner,seg_type,table_space,data_blk#,data_obj#,data_objd#,
session#,serial#,username,session_info,sql_redo,sql_undo from logmnr3 t where t.sql_redo like ‘create%’;
如果不能正常查詢GV$LOGMNR_CONTENTS視圖,并報以下錯誤,ORA-01306: 在從 v$logmnr_contents 中選擇之前必須調用 dbms_logmnr.start_logmnr() ??刹捎萌缦路椒ǎ?
create table logmnr3 as select * from GV$LOGMNR_CONTENTS;
Oracle端口:1521
關于數(shù)據(jù)庫在服務器上怎么查看日志文件的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
香港服務器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網服務提供商,擁有超過10年的服務器租用、服務器托管、云服務器、虛擬主機、網站系統(tǒng)開發(fā)經驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務器、香港云服務器、免備案服務器等。
網站名稱:如何查看服務器上的數(shù)據(jù)庫日志文件?(數(shù)據(jù)庫在服務器上怎么查看日志文件)
網站路徑:http://www.dlmjj.cn/article/dhcdjsd.html


咨詢
建站咨詢
