show variables like log_error ;  ..."/>
您好,登錄后才能下訂單哦!
一、四種日志
1、錯誤日志:記錄mysql服務(wù)器的啟動、運行及關(guān)閉過程,默認以.err結(jié)尾
mysql> show variables like 'log_error';
2、二進制日志***
記錄用戶對數(shù)據(jù)庫所做的所有的ddl和dml操作,不會記錄查詢語句,對數(shù)據(jù)的災(zāi)難恢復(fù)有至關(guān)重要的作用。
ddl:create、alter、drop、truncate
dml:insert、update、delete
二進制日志作用:恢復(fù)、AB復(fù)制
二進制日志在5.5中默認開啟,在5.6中默認不開啟。
/data/mysql/mysql-bin.XXXXXX
3、通用查詢?nèi)罩荆河涗浰袑?shù)據(jù)庫的請求信息(包括登錄、查詢等),默認不開啟
日志量較大、占用磁盤空間,一般不開啟
默認名字:主機名.log
4、慢查詢?nèi)罩荆河涗浀氖遣樵儠r間超過指定時間的查詢語句,一般用于優(yōu)化查詢
默認也是不開啟的
二、開啟各種日志(5.5),修改配置文件
1、開啟通用查詢?nèi)罩荆付ㄈ罩疚募?br /> 在mysqld段添加如下行:
log=general_select_log //等號右側(cè)的日志文件名字自定義
# /etc/init.d/mysqld restart
# ls /data/mysql/general_select_log
驗證:在mysql>里面執(zhí)行一些查詢語句,看該文件是否有相應(yīng)內(nèi)容。
2、開啟慢查詢?nèi)罩?,指定日志文件名,設(shè)置超時時間
在mysqld段添加如下行:
log-slow-queries=slow_log //開啟慢查詢?nèi)罩?,?guī)定日志文件的名字
long_query_time=5 //設(shè)置慢查詢超時時間
# /etc/init.d/mysqld restart
# ls /data/mysql/slow_log
mysql> select sleep(6); //執(zhí)行一個查詢超過5秒的操作
查看slow_log是否有相關(guān)記錄。
3、錯誤日志,修改前綴名
在mysqld段添加如下行:
log-error=errorlog //日志文件名變?yōu)閑rrorlog.err
[root@s200 mysql]# /etc/init.d/mysqld restart
[root@s200 mysql]# ls /data/mysql/errorlog.err
4、開啟二進制日志
log-bin=mysql-bin //開啟二進制日志,原來有該行
log-bin-index=mysql-bin.index //后添加的,一般不改
三、對日志的管理
刪除日志(不要輕易刪除)
1)刪除某個日志文件之前的所有日志
mysql> purge master logs to 'mysql-bin.000008';
2)刪除多少天以前的日志文件
mysql> purge master logs before date_sub(current_date,interval 1 day);
3)重置二進制日志
mysql> reset master; //從000001開始重新計數(shù)
4)手動生成新的二進制日志文件
mysql> flush logs;
查看日志信息
mysql> show master logs; //顯示二進制日志文件的信息,包括名字和大小
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。