2012-07-22 33 views
2

我試圖讓日誌文件爲我的MySQL服務器:mysql的日誌文件是空的,雖然我好像已經設置eveything

的MySQL版本14.14 DISTRIB 5.5.22,爲Debian的Linux-GNU(x86_64的)使用的readline 6.2

如我在許多網站讀我未註釋在/etc/mysql/my.cnf這些行:

general_log_file = /var/log/mysql/mysql.log

general_log = 1

運行MySQL後,我檢查了/var/log/mysql/mysql.log沒有created.as網站曾建議我跑了兩個命令:

觸摸/var/log/mysql/mysql.log

CHOWN的mysql:mysql的/var/log/mysql/mysql.log

反正沒去啦!該文件是空的。並根據我在網上搜索得到mysql日誌是簡單而直接的...

回答

5

您是否在更新my.cnf文件後重新啓動服務器?

請問題:

SELECT @@global.general_log; 
SELECT @@global.general_log_file; 
SELECT @@global.log_output; 

這是事實上的變量作爲服務器看見他們。 您可以動態地改變tgem如下:

SET GLOBAL general_log:=1; 
SET GLOBAL log_output := 'FILE'; 

此外,作爲最後的手段,嘗試:

FLUSH LOGS; 

關閉+重新打開日誌文件描述符。

+0

謝謝!!!!!!!!!!!! – 2016-04-14 16:49:01

0

我在Ubuntu 14.04上遇到了與MySQL 5.5相同的問題。 Permisions和配置正常,但刷新日誌返回

ERROR 1105 (HY000): Unknown error 

原來,問題是由不正確的AppArmor設置引起的。

如果這是在/ var/log/syslog的文件中包含像

<from kernel>: apparmor="DENIED" operation="mknod" profile="/usr/sbin/mysqld" name="/var/log/mysql/mysql.log" pid=16798 comm="mysqld" requested_mask="c" denied_mask="c" fsuid=115 ouid=115 

線修復的AppArmor配置文件/etc/apparmor.d/usr.sbin.mysqld,然後重新啓動AppArmor的情況和MySQL的。

相關問題