可以有以下的方法實現apache 的日誌回滾的方法:
1.使用apache自帶的rotatelogs 實現日誌的回滾方法:
在apache 的http.conf 檔案中找到以下兩個位置:
errorlog logs/error_log
customlog logs/access_log common
把以上兩行注釋後修改為:
errorlog "| /usr/local/apache/bin/rotatelogs /usr/local/apache/logs/error_%y-%m-%d.log 86400 480"
customlog "| /usr/local/apache/bin/rotatelogs /usr/local/apache/logs/access_log_%y_%m_%d.log 86400 480" common
重啟apache 後即刻生效。
修改後的日誌檔案格式為:
access_log_2010_02_23.log
error_2010-02-23.log
為了生產日誌的時間準確為一天的日誌,故最好在凌晨重啟該apache
2.使用系統的logrotate 工具來回滾日誌:
/usr/local/apache/logs/*log
或:/var/log/httpd/*log
生成日誌的格式為:access_log.1 access_log.2 error_log.3 ......
error_log.1 error_log.2 error_log.3 ........
比較第一種比較適合24小時工作的apache伺服器,第二種適合24小時都有訪問量的apache 站點,因為第二種方法有可能會導致apache 掛了。
附rotatelogs說明
rotatelogs logfile [ rotationtime [ offset ]] | [ filesizem ]
選項logfile
它加上基準名就是日誌檔名。如果 logfile中包含』%',則它會被視為用於的strftime(3)的格式字串;否則,它會被自動加上以秒為單位的.nnnnnnnnnn字尾。這兩種格式都表示新的日誌開始使用的時間。
rotationtime
日誌檔案回卷的以秒為單位的間隔時間
offset
相對於utc的時差的分鐘數。如果省略,則假定為0,並使用utc時間。比如,要指定utc時差為-5小時的地區的當地時間,則此引數應為-300。
filesizem
指定回卷時以兆位元組為單位的字尾字母m的檔案大小,而不是指定回卷時間或時差。
web日誌分析工具webalizer安裝:
檢測系統是否安裝了gd 和gd-devel 包。如果沒有則yum install
rpm -q gd
rmp -q gd-devel
http://www.mrunix.net/webalizer/download.html 和相關的中文語言包
安裝方法:
./configure --with-language=chinese
make
make install
完成後將會有如下的檔案:
/usr/bin/webalizer /etc/webalizer.conf /usr/local/bin/webalizer
配置:vi /etc/webalizer.conf
也可以在啟動的時通過-f 引數指定配置檔案位置。
1.指定logfile 的路徑:
2.指定分析後的輸出位置
outputdir /var/www/usage
Mysql mysqlbinlog 日誌回滾誤操作
三種模式是個人理解,有誤解的地方,望指正 日誌檔案路徑一般在資料庫資料存放資料夾 usr local mysql bin mysqlbinlog no defaults database cdpf dbtest base64 output decode rows v usr local mysql ...
mysql回滾日誌
一 回滾日誌 undo log 1 作用 儲存了事務發生之前的資料的乙個版本,可以用於回滾,同時可以提供多版本併發控制下的讀 mvcc 也即非鎖定讀 2 內容 邏輯格式的日誌,在執行undo的時候,僅僅是將資料從邏輯上恢復至事務之前的狀態,而不是從物理頁面上操作實現的,這一點是不同於redo log...
mysql回滾日誌與重做日誌
基礎知識 資料都是先讀到記憶體中,然後修改記憶體中的資料,最後將資料寫回磁碟。這裡把資料庫內容在磁碟上的部分叫data file,把資料庫內容在記憶體中的快取叫data buffer。data buffer與data file內容不同,此時把data buffer的內容叫髒資料,但是不能每次事務提交...