为了账号安全,请及时绑定邮箱和手机立即绑定

如何在MySQL中查看日志文件?

如何在MySQL中查看日志文件?

烙印99 2019-10-14 14:27:58
我已经读过Mysql服务器创建了一个日志文件,其中记录了所有活动-例如何时以及执行什么查询。有人可以告诉我它在系统中的什么位置吗?我该怎么读?基本上,我需要使用不同的输入[两个日期之间的备份]来备份数据库,所以我认为我需要在此处使用日志文件,这就是为什么要这样做...我认为必须以某种方式保护此日志,因为可能会记录诸如用户名和密码之类的敏感信息[如果有任何查询要求];这样可以确保它安全,不容易被看到吗?我具有root访问系统的权限,如何查看日志?当我尝试打开/var/log/mysql.log时,它是空的。这是我的配置文件:[client]port        = 3306socket      = /var/run/mysqld/mysqld.sock[mysqld_safe]socket      = /var/run/mysqld/mysqld.socknice        = 0[mysqld]log = /var/log/mysql/mysql.log binlog-do-db=zerouser        = mysqlsocket      = /var/run/mysqld/mysqld.sockport        = 3306basedir     = /usrdatadir     = /var/lib/mysqltmpdir      = /tmpskip-external-lockingbind-address        = 127.0.0.1## * Fine Tuning#key_buffer      = 16Mmax_allowed_packet  = 16Mthread_stack        = 192Kthread_cache_size       = 8general_log_file        = /var/log/mysql/mysql.loggeneral_log             = 1
查看完整描述

3 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

这是启用它们的一种简单方法。在mysql中,我们通常需要查看3个日志,这在任何项目开发过程中都是最需要的。


The Error Log。它包含有关服务器运行时发生的错误的信息(以及服务器启动和停止)


The General Query Log。这是mysqld所做的一般记录(连接,断开连接,查询)


The Slow Query Log。它由“慢速” SQL语句组成(如其名称所示)。


默认情况下,MYSQL中未启用任何日志文件。所有错误将显示在系统日志中。(/ var / log / syslog)


要启用它们,请按照以下步骤操作


步骤1:转到此文件(/etc/mysql/conf.d/mysqld_safe_syslog.cnf)并删除或注释这些行。


步骤2:转到mysql conf文件(/etc/mysql/my.cnf)并添加以下几行


要启用错误日志,请添加以下内容


[mysqld_safe]

log_error=/var/log/mysql/mysql_error.log


[mysqld]

log_error=/var/log/mysql/mysql_error.log

要启用一般查询日志,请添加以下内容


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

general_log             = 1

要启用慢查询日志,请添加以下内容


log_slow_queries       = /var/log/mysql/mysql-slow.log

long_query_time = 2

log-queries-not-using-indexes

第三步:保存文件并使用以下命令重启mysql


service mysql restart

要在运行时启用日志,请登录mysql客户端(mysql -u root -p)并输入:


SET GLOBAL general_log = 'ON';

SET GLOBAL slow_query_log = 'ON';


查看完整回答
反对 回复 2019-10-14
?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

MySQL日志由全局变量确定,例如:


log_error 用于错误消息日志;

general_log_file用于一般查询日志文件(如果由启用general_log);

slow_query_log_file用于慢速查询日志文件(如果由启用slow_query_log);

要查看设置及其位置,请运行以下shell命令:


mysql -se "SHOW VARIABLES" | grep -e log_error -e general_log -e slow_query_log

要显示错误日志的值,请在终端中运行以下命令:


mysql -e "SELECT @@GLOBAL.log_error"

要实时读取错误日志文件的内容,请运行:


sudo tail -f $(mysql -Nse "SELECT @@GLOBAL.log_error")

注意:点击Control- C完成时


启用常规日志后,请尝试:


sudo tail -f $(mysql -Nse "SELECT CONCAT(@@datadir, @@general_log_file)")

要mysql与密码访问一起使用,请添加-p或-pMYPASS参数。为了记住它,您可以在中配置它~/.my.cnf,例如


[client]

user=root

password=root

因此,它将在下次被记住。


查看完整回答
反对 回复 2019-10-14
  • 3 回答
  • 0 关注
  • 1011 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信