当前位置: 首页 > 面试题库 >

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

程举
2023-03-14
问题内容

我已经读过Mysql服务器创建了一个日志文件,其中记录了所有活动-例如何时以及执行什么查询。

有人可以告诉我它在系统中的什么位置吗?我该怎么读?

基本上,我需要使用不同的输入[两个日期之间的备份]来备份数据库,所以我认为我需要在此处使用日志文件,这就是为什么要这样做…

我认为必须以某种方式保护此日志,因为可能会记录诸如用户名和密码之类的敏感信息[如果有任何查询要求];这样可以确保它html" target="_blank">安全,不容易被看到吗?

我具有root访问系统的权限,如何查看日志?

当我尝试打开/var/log/mysql.log时,它是空的。

这是我的配置文件:

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqld]
log = /var/log/mysql/mysql.log 
binlog-do-db=zero



user        = mysql
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
skip-external-locking

bind-address        = 127.0.0.1
#
# * Fine Tuning
#
key_buffer      = 16M
max_allowed_packet  = 16M
thread_stack        = 192K
thread_cache_size       = 8

general_log_file        = /var/log/mysql/mysql.log
general_log             = 1

问题答案:

这是启用它们的一种简单方法。在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';

最后,我想在这里提及的一件事是, 我从博客中阅读了此内容 。谢谢。这个对我有用。

点击这里访问博客



 类似资料:
  • 我使用textwatcher监视一个EditText我把每个按键都存储在一个日志文件中我想查看我在运行应用程序后放入日志文件中的数据,但仍然找不到它是如何运行的。感谢帮助我的好意:)

  • 本文档介绍如何查看 TiDB 集群各组件日志,以及 TiDB 慢查询日志。 TiDB 集群各组件日志 通过 TiDB Operator 部署的 TiDB 各组件默认将日志输出在容器的 stdout 和 stderr 中。可以通过下面的方法查看单个 Pod 的日志: kubectl logs -n ${namespace} ${pod_name} 如果这个 Pod 由多个 Container 组成,

  • 本文向大家介绍svn 查看日志,包括了svn 查看日志的使用技巧和注意事项,需要的朋友参考一下 示例 运行svn log将向您显示所有提交消息,您可能只想查看某些修订。 查看n最新修订: svn log -n 查看特定修订版: svn log -c rXXX 查看受影响的路径: svn log -v -c rXXX

  • 问题内容: 有没有办法像在开发中一样查看生产环境中从Rails生成的所有查询? 问题答案: 是的你可以。如果进入config / environments / production.rb文件,则有类似以下内容的部分: 取消注释config.log_level行,您将在生产中获得与在开发中相同的日志。

  • 我使用NetBeans7.3在Tomcat上部署WebApplication。当我运行/部署应用程序时,我可以在输出窗口中看到服务器日志和“Apache Tomcat日志”。 但是在我的应用程序中,我用log4j指定了另一个日志文件,仅用于我的应用程序日志。 我怎样才能像直接在NetBeans中看到其他日志输出一样看到我的应用程序的日志呢? 我的log4j有一个附加日志的规范--所以我的类的所有警

  • 问题内容: 如何启用MySQL功能,该功能记录从客户端收到的每个SQL查询语句以及该查询语句提交的时间?我可以在phpmyadmin或NaviCat中做到吗?如何分析日志? 问题答案: 首先, 请记住,此日志文件在繁忙的服务器上可能会变得非常大。 对于mysql <5.1.29: 要启用查询日志,把这个在节 另外,从MySQL控制台启用它 见http://dev.mysql.com/doc/ref