本文目錄一覽:
- 1、怎樣查看mysql是否開啟日誌功能
- 2、如何查看mysql數據庫操作記錄日誌
- 3、如何在MySql中記錄SQL日誌記錄
- 4、mysql命令行用source執行sql,日誌輸出
- 5、mysql創建數據庫時如何指定數據文件與日誌文件的位置和大小
- 6、如何在mysql中記錄sql日誌記錄
怎樣查看mysql是否開啟日誌功能
1、首先確認你日誌是否啟用了mysqlshow variables like ‘log_bin’。
2、如果啟用了,即ON,那日誌文件就在mysql的安裝目錄的data目錄下。
3、怎樣知道當前的日誌mysql show master status。
4、看二進制日誌文件用mysqlbinlog,shellmysqlbinlog mail-bin.000001或者shellmysqlbinlog mail-bin.000001 | tail,Windows 下用類似的。
MySQL的日誌操作:
1、首先,登陸mysql後,執行sql語句:show variables like ‘log_bin’。
2、#錯誤日誌log-errol開啟方式:在my.ini的[mysqld]選項下:添加代碼:log-error=E:\log-error.txt。
記錄內容:主要是記錄啟動、運行或停止mysqld時出現的致命性問題,都是系統級的錯誤記錄。
3、#查詢日誌:log,開啟方式:在my.ini的[mysqld]選項下:添加代碼:log=E:/mysql_log.txt。
4、#二進制日誌:log-bin,開啟方式:在my.ini的[mysqld]選項下:添加代碼:log-bin=E:/mysql_log_bin,記錄內容:主要是記錄所有的更改數據的語句,可使用mysqlbinlog命令恢複數據。
如何查看mysql數據庫操作記錄日誌
1、首先確認你日誌是否啟用了mysqlshow variables like ‘log_bin’。
2、如果啟用了,即ON,那日誌文件就在mysql的安裝目錄的data目錄下。
3、怎樣知道當前的日誌mysql show master status。
4、看二進制日誌文件用mysqlbinlog,shellmysqlbinlog mail-bin.000001或者shellmysqlbinlog mail-bin.000001 | tail,Windows 下用類似的。
MySQL的日誌操作:
1、首先,登陸mysql後,執行sql語句:show variables like ‘log_bin’。
2、#錯誤日誌log-errol開啟方式:在my.ini的[mysqld]選項下:添加代碼:log-error=E:\log-error.txt。
記錄內容:主要是記錄啟動、運行或停止mysqld時出現的致命性問題,都是系統級的錯誤記錄。
3、#查詢日誌:log,開啟方式:在my.ini的[mysqld]選項下:添加代碼:log=E:/mysql_log.txt。
4、#二進制日誌:log-bin,開啟方式:在my.ini的[mysqld]選項下:添加代碼:log-bin=E:/mysql_log_bin,記錄內容:主要是記錄所有的更改數據的語句,可使用mysqlbinlog命令恢複數據。
如何在MySql中記錄SQL日誌記錄
查了一下資料,My SQL可以用下面方法跟蹤sql 語句,以下方法以Windows平台為例,linux雷同:
1 配置my.ini文件(在安裝目錄,linux下文件名為my.cnf
查找到[mysqld]區段,增加日誌的配置,如下示例:[mysqld]log=C:/temp/mysql.log
log_slow_queries=C:/temp/mysql_slow.log
long_query_time=1
log指示日誌文件存放目錄;
log_slow_queries指示記錄執行時間長的sql日誌目錄;
long_query_time指示多長時間算是執行時間長,單位s。
Linux下這些配置項應該已經存在,只是被注釋掉了,可以去掉注釋。但直接添加配置項也OK啦。
2 重新啟動mysql服務。注意事項:A日誌存放目錄必須提前存在,否則不能記錄日誌。這裡也局勢C:/temp目錄必須已經存在
B 日誌文件是linux格式的文本,建議用ultraEdit打開,轉換為dos格式查看(否則沒有換行,看不懂的)
C 服務在啟動狀態下不能刪除日誌文件,否則就無法記錄sql語句了。
mysql命令行用source執行sql,日誌輸出
有時候,我們要在命令行登錄mysql,然後用source命令執行某sql文件,這樣執行時,日誌閃得飛快,還沒來得及看,一下子就過了。這樣不利於我們查看執行過程中的日誌,我們不清楚是否存在執行錯誤的情況。那要怎麼記錄一下這樣的日誌呢?用tee就可以
這樣會在/tmp目錄下產生一個日誌文件,接着再執行你想要的source /root/xx.sql命令吧
在mysql命令行執行的所有輸出都會記錄到這個日誌文件里了
mysql創建數據庫時如何指定數據文件與日誌文件的位置和大小
Mysql創建數據庫時會在如下目錄創建以數據庫名為名的目錄
show variables like “%datadir%”;
數據文件日誌也就在相應目錄下了。
日誌大小、看看這些參數是否能達到你的目的:
命令行參數
–log-bin=filename:記錄二進制日誌文件的位置,盡量指定路徑名,如果不指定的話則保存在數據目錄;
–log-bin-index=file:記錄二進制日誌文件索引的位置,保存了日誌文件名;
–max_binlog_size:單個文件最大多少;
–binlog-do-db=db_name:哪個數據庫使用,只有這個數據庫使用;
–binlog-ignore-db=db_name:哪個數據庫不使用,只有這個數據庫不使用;
系統變量
log_bin:日誌的位置;
binlog_cache_size:二進制日誌緩存大小,是每一個連接進來的線程分配的大小,不是整個服務器的大小;
max_binlog_cache_size:最大緩存大小;
max_binlog_size:單個文件最大大小,超過此大小則再分配一個文件,但是一個事務必須在一個文件中,所以可能會稍大點;
binlog_cache_use:當前連接使用的binlog緩存的事務的數量,使用show status like ‘binlog_cache_use’查看(show status命令顯示了所有連接到mysql服務器的狀態值);
binlog_cache_disk_use:如果binlog_cache_use不夠用,則在磁盤上緩存,應該盡量避免;
binlog_do_db:設置master-slave時使用;
binlog-ignore-db:設置哪個數據庫不記錄日誌;
sync_binlog:緩存與硬盤的同步頻率(commit多少下同步一次,0表示服務器自動控制);
如何在mysql中記錄sql日誌記錄
1、WIN的話,在安裝目錄下,找到my.ini文件
查[mysqld]區段,添加日誌的配置
比如說:[mysqld]log=C:/temp/mysql.log
log_slow_queries=C:/temp/mysql_slow.log
long_query_time=1
log指示日誌文件存放目錄
log_slow_queries指示記錄執行時間長的sql日誌目錄;
long_query_time指示多長時間算是執行時間。
2、LINUX下的話,文件名為my.cnf
Linux下這些配置項其實都有的,只是被注釋掉了,刪去注釋符#之類的就可以了。
你不願刪注釋符,願意的話手工再添加也可以……
然後重啟mysql服務就OK了。
原創文章,作者:MOLH,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/135487.html