mssql日志文件是我們比較熟悉的,下面就對mssql日志文件進(jìn)行了詳細(xì)的說明介紹,如果您對mysql日志文件方面感興趣的話,不妨一看。
1.錯(cuò)誤日志 Error Log
錯(cuò)誤日志記錄了mysql server 運(yùn)行過程中所有較為嚴(yán)重的警告和錯(cuò)誤信息,以及mysql每次啟動和關(guān)閉的詳細(xì)信息。
開啟方法在啟動mysql 時(shí)候加上--log-error選項(xiàng)。錯(cuò)誤日志默認(rèn)放在數(shù)據(jù)目錄下,以hostname.err命名。但是可以使用命令--log-error[=file_name]修改其存放目錄和文件名。
有時(shí)候,希望將錯(cuò)誤日志做備份并重新開始記錄,使用flush logs命令備份文件以.old結(jié)尾。
2.二進(jìn)制日志:Binary Log&Binary Log Index
就是常說的binlog,是mysql中最為重要的日志之一。在通過--log-bin[=file_name]打開記錄的功能之后,mysql會將所有修改數(shù)據(jù)庫數(shù)據(jù)的query以二進(jìn)制的時(shí)候記錄到日志文件中,其中包括每一條query所執(zhí)行的時(shí)間,所消耗的資源,以及相關(guān)事務(wù)信息,如果沒有指定file_name,會在數(shù)據(jù)目錄下記錄為mysql-bin.****。
binlog還有其他一些附加選項(xiàng)參數(shù):
--max_binlog_size設(shè)置binlog的最大存儲上限,當(dāng)日志到達(dá)這個(gè)上限的時(shí)候,會重新創(chuàng)建一個(gè)文件記錄。
--binlog-do-db=db_name參數(shù)告訴mysql只對某個(gè)數(shù)據(jù)庫記錄binlog
--binlog-ignore-db=db_name參數(shù)告訴mysql忽略對某個(gè)數(shù)據(jù)庫記錄binlog
3.更新日志:update log
mysql5.0以后不支持,和binlog類似,但是不是以二進(jìn)制形式記錄,是簡單的文本格式記錄
4.查詢?nèi)罩荆簈uery log
查詢?nèi)罩居涗沵ysql中所有的query,可通過--log[=file_name]來打開該日志,由于記錄了所有的query,體積龐大,開啟后對性能也有較大的影響,只在跟蹤某些特殊的query性能問題時(shí)候才會短暫開啟該功能。默認(rèn)的文件名hostname.log。
5.慢查詢?nèi)罩荆簊low query log
通過--log-slow-queries[=file_name]來打開該功能并設(shè)置記錄位置和文件名,默認(rèn)文件名:hostname-slow.log,默認(rèn)目錄也是數(shù)據(jù)目錄。
6.InnoDB的在線的REDO日志:InnoDB REDO Log
REDO日志中記錄了InnoDB所做的所有物理變更和事務(wù)信息,通過REDO日志和UNDO信息,InnoDB保證了在任何情況下的事務(wù)安全性。InnoDB的REDO日志同樣默認(rèn)存放在數(shù)據(jù)目錄下,可以通過innodb_log_group_home_dir來更改設(shè)置日志的存放位置。通過innodb_log_files_in_group設(shè)置日志的數(shù)量。
- 如何修改MYSQL數(shù)據(jù)庫日志文件位置?
MySQL日志文件相信大家都有很多的了解,MySQL日志文件一般在:/var/log/mysqld.log,下面就教您修改MySQL日志文件位置的方法,供您參考。
今天需要改MySQL日志文件的位置,發(fā)現(xiàn)在/etc/my.cnf中怎么也改不了。
后來發(fā)現(xiàn)MySQL日志位是指定的:
[root@localhost etc]# ps aux|grep mysqld
root 11830 0.5 0.0 4524 1204 pts/0 S 03:03 0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/data/mysql --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid
mysql 11890 3.7 0.1 40456 9076 pts/0 Sl 03:03 0:00 /usr/libexec/mysqld --basedir=/usr --datadir=/data/mysql --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --port=3306 --socket=/var/lib/mysql/mysql.sock
root 11909 0.0 0.0 3908 664 pts/0 S+ 03:03 0:00 grep mysqld
chkconfig --list發(fā)現(xiàn)是chkconfig on指定的,天是
vim /etc/init.d/mysqld得知這里的已經(jīng)配置
get_mysql_option mysqld datadir '/var/lib/mysql'
datadir='$result'
get_mysql_option mysqld socket '$datadir/mysql.sock'
socketfile='$result'
get_mysql_option mysqld_safe log-error '/var/log/mysqld.log'
errlogfile='$result'
get_mysql_option mysqld_safe pid-file '/var/run/mysqld/mysqld.pid'
mypidfile='$result'
更改這里應(yīng)該就行了