mysql audit-訪問日誌記錄應用
mysql audit-訪問日誌記錄
應用描述:
某天DB被drop,查詢被什麼賬號所致;
//accesslog 存放連線資訊;
create database accesslog;
CREATE TABLE `accesslog` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`localname` varchar(30) DEFAULT NULL,
`matchname` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=archive DEFAULT CHARSET=utf8; //archive 引擎有利資料壓縮存放;
//stop mysqld
[mysqld]下新增:
init-connect='insert into accesslog.accesslog values(connection_id(),now(),user(),current_user());'
start mysqld 生效init-connect引數;
//指定讀accesslog庫的使用者名稱:
grant select on accesslog.* to 'root'@'ip' identified by 'passwd';
--connect root
create database tx;
//測試使用者;
grant select,drop on *.* to 'tuser'@'ip' identified by 'passwd';
--connect tuser;
drop database tx;
//目前應用於binlog.xxxx
mysqlbinlog [--start-time='' --stop-time=''] mysqlbin.xxx | grep 'tx' -B 5
獲取如下資訊:
# at 1086
#130509 9:36:28 server id 2 end_log_pos 1163 Query thread_id=7 exec_time=0 error_code=0
SET TIMESTAMP=1368063388/*!*/;
drop database tx
//connect root
select * from accesslog.accesslog where id = 7(thread_id);
+----+---------------------+------------------+-----------+
| id | time | localname | matchname |
+----+---------------------+------------------+-----------+
| 7 | 2013-05-09 09:36:22 | tuser@ip | tuser@% |
+----+---------------------+------------------+-----------+
注意:
1.不記錄有Super許可權的使用者登入資訊;
2.使用者每次連線時往資料庫中插入一條記錄,不會對DB產生很大影響,除非連線頻率高;
3.accesslog表其他用途,對資料庫連線的情況進行資料分析,如,每日連線數分佈圖等
//zz:OurMySQL
應用描述:
某天DB被drop,查詢被什麼賬號所致;
//accesslog 存放連線資訊;
create database accesslog;
CREATE TABLE `accesslog` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`localname` varchar(30) DEFAULT NULL,
`matchname` varchar(30) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=archive DEFAULT CHARSET=utf8; //archive 引擎有利資料壓縮存放;
//stop mysqld
[mysqld]下新增:
init-connect='insert into accesslog.accesslog values(connection_id(),now(),user(),current_user());'
start mysqld 生效init-connect引數;
//指定讀accesslog庫的使用者名稱:
grant select on accesslog.* to 'root'@'ip' identified by 'passwd';
--connect root
create database tx;
//測試使用者;
grant select,drop on *.* to 'tuser'@'ip' identified by 'passwd';
--connect tuser;
drop database tx;
//目前應用於binlog.xxxx
mysqlbinlog [--start-time='' --stop-time=''] mysqlbin.xxx | grep 'tx' -B 5
獲取如下資訊:
# at 1086
#130509 9:36:28 server id 2 end_log_pos 1163 Query thread_id=7 exec_time=0 error_code=0
SET TIMESTAMP=1368063388/*!*/;
drop database tx
//connect root
select * from accesslog.accesslog where id = 7(thread_id);
+----+---------------------+------------------+-----------+
| id | time | localname | matchname |
+----+---------------------+------------------+-----------+
| 7 | 2013-05-09 09:36:22 | tuser@ip | tuser@% |
+----+---------------------+------------------+-----------+
注意:
1.不記錄有Super許可權的使用者登入資訊;
2.使用者每次連線時往資料庫中插入一條記錄,不會對DB產生很大影響,除非連線頻率高;
3.accesslog表其他用途,對資料庫連線的情況進行資料分析,如,每日連線數分佈圖等
//zz:OurMySQL
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26855487/viewspace-760645/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql開啟日誌記錄MySql
- 怎樣設定不讓JBOSS記錄訪問日誌???
- storm 問題日誌記錄ORM
- Nginx訪問日誌、Nginx日誌切割、靜態檔案不記錄日誌和過期時間Nginx
- AWK應用之統計訪問日誌
- oracle實驗記錄 (physical standby 日誌應用方面)Oracle
- php日誌,記錄日誌PHP
- Util應用框架基礎(六) - 日誌記錄(一) - 正文框架
- Apche日誌系列(1):訪問日誌(轉)
- mysql 開啟和關閉日誌記錄MySql
- 日誌記錄器
- 【RAC】 oracleasm 工具對應的日誌記錄OracleASM
- [提問交流]請問如何關掉日誌記錄
- Util應用框架基礎(六) - 日誌記錄(三) - 寫入 Seq框架
- Util應用框架基礎(六) - 日誌記錄(四) - 寫入 Exceptionless框架Exception
- FeignClient配置日誌訪問client
- Laravel sql 日誌記錄LaravelSQL
- secureCRT記錄操作日誌Securecrt
- 記錄日誌檔案
- PHP日誌記錄方法PHP
- oracle日誌操作記錄Oracle
- Apache 記錄請求響應時間日誌Apache
- MySQL複製應用中繼日誌解析MySql中繼
- MySQL 使用tee記錄語句和輸出日誌MySql
- apache 訪問日誌如何設定每日新增一個日誌檔案、如何限制大小、設定記錄內容Apache
- Spring Boot AOP 掃盲,實現介面訪問的統一日誌記錄Spring Boot
- MYSQL啟用日誌和檢視日誌MySql
- 日誌記錄 PHP下往linux目錄下寫日誌PHPLinux
- Tomcat訪問日誌淺析Tomcat
- 使用Fluentd + Elasticsearch收集訪問日誌Elasticsearch
- nginx自動切割訪問日誌Nginx
- Nginx 訪問日誌格式設定Nginx
- Oracle補充日誌及日誌記錄規則Oracle
- db2不記錄日誌插入記錄DB2
- 記錄騰訊雲使用日誌
- 記錄 | 實習日誌 9
- 記錄 sql 查詢日誌SQL
- SecureCRT自動記錄日誌Securecrt