我已经读过Mysql服务器创建了一个日志文件,其中记录了所有活动-例如何时以及执行什么查询。
有人可以告诉我它在系统中的什么位置吗?我该怎么读?
基本上,我需要使用不同的输入[两个日期之间的备份]来备份数据库,所以我认为我需要在此处使用日志文件,这就是为什么要这样做...
我认为必须以某种方式保护此日志,因为可能会记录诸如用户名和密码之类的敏感信息[如果有任何查询要求];这样可以确保它安全,不容易被看到吗?
我具有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
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'; 最后,我想在这里提及的一件事是,我从博客中阅读了此内容。谢谢。这个对我有用。来源:stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。