apache日志导入mysql,将Apache访问日志记录到Mysql数据库中
環境
操作系統:CentOS
步驟
1.下載源碼
下載地址:
https://packages.debian.org/jessie/libapache2-mod-log-sql-mysql
2.configure
./configure --with-apxs=/usr/local/bin/httpd/bin/apxs --with-mysql=/usr/local/bin/mariadb
注意:一定要檢查configure完成有沒有出現Mysql Driver
------------------------------------
Apache version : 2.0
SSL Support : yes
Enabled drivers :
MySQL Driver
------------------------------------
3.make
4.make install
配置
Apache配置
LoadModule log_sql_module modules/mod_log_sql.so
LoadModule log_sql_mysql_module modules/mod_log_sql_mysql.so
# 下面這些單獨配置到相應的VirtualHost里面
LogSQLLoginInfo mysql://{數據庫用戶名}:{數據庫密碼}@{數據庫地址}/{數據庫名}
LogSQLCreateTables on
LogSQLDBParam socketfile /usr/local/bin/mariadb/mysql.sock
LogSQLTransferLogFormat AbHhmRSsTUuvI
LogSQLTransferLogTable {數據表名}
問題
Apxs的地址,如果是編譯安裝,一般會在安裝目錄的bin/目錄下找到
mysql客戶端庫的引用, 如果是源碼編譯安裝, 則直接指向安裝目錄即可
mysql客戶端不可用,檢查configure后生成的config.log文件,查看具體原因。
mysql客戶端位置不對,由于我安裝的是mariadb,在lib下面沒有mysql文件夾,所以創建該文件夾,并且講lib目錄的文件創建鏈接到mysql文件夾中。執行下ldconfig刷新ld緩存。
make 過程中, 提示remote_ip找不到,歷史原因, apache已經將remote_ip改為client_ip,只需要按照提示打開對應的文件進行替換即可。
訪問日志無法記錄,關閉數據庫的嚴格模式,改為寬松模式即可。
參考鏈接
原文:https://www.cnblogs.com/michaelluthor/p/12084313.html
總結
以上是生活随笔為你收集整理的apache日志导入mysql,将Apache访问日志记录到Mysql数据库中的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android保存字符到sd卡,andr
- 下一篇: mysql外键约束分数_MySQL提高(