标签:
主要包含:错误日志、查询日志、慢查询日志、事务日志、二进制日志;
日志是mysql数据库的重要组成部分。日志文件中记录着mysql数据库运行期间发生的变化;也就是说用来记录mysql数据库的客 户端连接状况、SQL语句的执行情况和错误信息等。当数据库遭到意外的损坏时,可以通过日志查看文件出错的原因,并且可以通过日志文件进行数据恢复。
在mysql数据库中,错误日志功能是默认开启的。并且,错误日志无法被禁止。默认情况下,错误日志存储在mysql数据库的数据文件中。错误日志文件通常的名称为hostname.err。其中,hostname表示服务器主机名。
错误日志信息可以自己进行配置的,错误日志所记录的信息是可以通过log-error和log-warnings来定义的,其中log- err是定义是否启用错误日志的功能和错误日志的存储位置,log-warnings是定义是否将警告信息也定义至错误日志中。默认情况下错误日志大概记 录以下几个方面的信息:服务器启动和关闭过程中的信息(未必是错误信息,如mysql如何启动InnoDB的表空间文件的、如何初始化自己的存储引擎的等 等)、服务器运行过程中的错误信息、事件调度器运行一个事件时产生的信息、在从服务器上启动服务器进程时产生的信息。
一般而言,日志级别的定义没有会话变量都只是在全局级别下进行定义。
mysql> show global variables like ‘%log%‘; +-----------------------------------------+--------------------------------------+ | Variable_name | Value | +-----------------------------------------+--------------------------------------+ | back_log | 250 | | binlog_cache_size | 32768 | | binlog_checksum | CRC32 | | binlog_direct_non_transactional_updates | OFF | | binlog_error_action | IGNORE_ERROR | | binlog_format | MIXED | | binlog_gtid_simple_recovery | OFF | | binlog_max_flush_queue_time | 0 | | binlog_order_commits | ON | | binlog_row_image | FULL | | binlog_rows_query_log_events | OFF | | binlog_stmt_cache_size | 32768 | | binlogging_impossible_mode | IGNORE_ERROR | | expire_logs_days | 0 | | general_log | OFF | | general_log_file | /usr/local/mysql/var/Ubuntu.log | | log_bin | ON | | log_bin_basename | /usr/local/mysql/var/mysql-bin | | log_bin_index | /usr/local/mysql/var/mysql-bin.index | | log_bin_trust_function_creators | OFF | | log_bin_use_v1_row_events | OFF | | log_error | /usr/local/mysql/var/Ubuntu.err |定义错误日志
| log_output | FILE | | log_queries_not_using_indexes | OFF | | log_slave_updates | OFF | | log_slow_admin_statements | OFF | | log_slow_slave_statements | OFF | | log_throttle_queries_not_using_indexes | 0 | | log_warnings | 1 |是否把警告信息写入错误日志中
| max_binlog_cache_size | 18446744073709547520 | | max_binlog_size | 1073741824 | | max_binlog_stmt_cache_size | 18446744073709547520 | | max_relay_log_size | 0 | | relay_log | | | relay_log_basename | | | relay_log_index | | | relay_log_info_file | relay-log.info | | relay_log_info_repository | FILE | | relay_log_purge | ON | | relay_log_recovery | OFF | | relay_log_space_limit | 0 | | simplified_binlog_gtid_recovery | OFF | | slow_query_log | OFF | | slow_query_log_file | /usr/local/mysql/var/Ubuntu-slow.log | | sql_log_bin | ON | | sql_log_off | OFF | | sync_binlog | 0 | | sync_relay_log | 10000 | | sync_relay_log_info | 10000 | +-----------------------------------------+--------------------------------------+
其中,log_error可以直接定义为文件路径,log_warings只能使用1|0来定义开关启动。
更改错误日志位置可以使用log_error来设置形式如下:
root@Ubuntu:~# vim /etc/my.cnf [mysqld] Log_error=DIR/[filename]
其中,DIR参数指定错误日志的路径filename参数是错误日志的名称,没有指定该参数时默认为主机名。重启mysql服务器即可生效。
删除错误日志:
在mysql5.5.7之前:数据库管理员可以删除很长时间之前的错误日志,以保证mysql服务器上的硬盘空间。mysql数据库 中,可以使用mysqladmin命令开启新的错误日志。mysqladmin命令的语法如下:mysqladmin –u root –pflush-logs也可以使用登录mysql数据库中使用FLUSHLOGS语句来开启新的错误日志。
在mysql5.5.7之后:服务器将关闭此项功能。只能使用重命名原来的错误日志文件,手动冲洗日志创建一个新的:方式如下:
root@Ubuntu:/usr/local/mysql/var# mv Ubuntu.err Ubuntu.err.2016_05_09.bak root@Ubuntu:/usr/local/mysql/var# mysqladmin flush-logs root@Ubuntu:/usr/local/mysql/var# ls auto.cnf mysql-bin.000009 mysql-bin.000020 mysql-bin.000031 ecshop mysql-bin.000010 mysql-bin.000021 mysql-bin.000032 mysql mysql-bin.000011 mysql-bin.000022 mysql-bin.index performance_schema test mysql-bin.000003 mysql-bin.000014 mysql-bin.000025 Ubuntu.err mysql-bin.000004 mysql-bin.000015 mysql-bin.000026 Ubuntu.err.2016_05_09.bak
查询日志
标签:
原文地址:http://www.cnblogs.com/gimin/p/5473590.html