ITPub博客

首页 > 数据库 > MySQL > mysql 日志之错误日志

mysql 日志之错误日志

原创 MySQL 作者:wl365365 时间:2015-07-13 12:51:48 0 删除 编辑

错误日志

在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                                | 80                                    |
| binlog_cache_size                       | 32768                                 |
| binlog_checksum                         | CRC32                                 |
| binlog_direct_non_transactional_updates | OFF                                   |
| binlog_error_action                     | IGNORE_ERROR                          |
| binlog_format                           | STATEMENT                             |
| 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                        | /mysql/data/localhost.log             |
| innodb_api_enable_binlog                | OFF                                   |
| innodb_flush_log_at_timeout             | 1                                     |
| innodb_flush_log_at_trx_commit          | 1                                     |
| innodb_locks_unsafe_for_binlog          | OFF                                   |
| innodb_log_buffer_size                  | 8388608                               |
| innodb_log_compressed_pages             | ON                                    |
| innodb_log_file_size                    | 50331648                              |
| innodb_log_files_in_group               | 2                                     |
| innodb_log_group_home_dir               | ./                                    |
| innodb_mirrored_log_groups              | 1                                     |
| innodb_online_alter_log_max_size        | 134217728                             |
| innodb_undo_logs                        | 128                                   |
| log_bin                                 | OFF                                   |
| log_bin_basename                        |                                       |
| log_bin_index                           |                                       |
| log_bin_trust_function_creators         | OFF                                   |
| log_bin_use_v1_row_events               | OFF                                   |
| log_error                               | /mysql/data/localhost.localdomain.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                     | /mysql/data/localhost-slow.log        |
| sql_log_bin                             | ON                                    |
| sql_log_off                             | OFF                                   |
| sync_binlog                             | 0                                     |
| sync_relay_log                          | 10000                                 |
| sync_relay_log_info                     | 10000                                 |
+-----------------------------------------+---------------------------------------+
61 rows in set (0.00 sec)

log_error可以直接定义为文件路径,也可以为ON|OFF;log_warings只能使用1|0来定义开关启动。

更改错误日志位置可以使用log_error来设置形式如下:
默认的错误日志存放在data目录下,下面我们修改存放路径到/mysql/log下
[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysql.sock
[mysqld]
port            = 3306
socket          = /tmp/mysql3306.sock
datadir = /mysql/data
server-id       = 1
log-error = /mysql/log/mysql.log
log-warings = 1     -----这里刻意写错





[root@localhost mysql]# mysqladmin -uroot -proot123 shutdown
Warning: Using a password on the command line interface can be insecure.
150615 09:48:53 mysqld_safe mysqld from pid file /mysql/data/localhost.localdomain.pid ended
[1]+  Done                    mysqld_safe --defaults-file=/mysql/my.cnf --user=mysql
[root@localhost mysql]# mysqld_safe --defaults-file=/mysql/my.cnf --user=mysql &
[1] 3133
[root@localhost mysql]# 150615 09:49:18 mysqld_safe Logging to '/mysql/log/mysql.log'.
150615 09:49:18 mysqld_safe Starting mysqld daemon with databases from /mysql/data
150615 09:49:20 mysqld_safe mysqld from pid file /mysql/data/localhost.localdomain.pid ended


[1]+  Done                    mysqld_safe --defaults-file=/mysql/my.cnf --user=mysql


启动后查看错误日志
[root@localhost log]# more mysql.log 
150615 09:49:18 mysqld_safe Starting mysqld daemon with databases from /mysql/data
2015-06-15 09:49:18 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server 
option (see documentation for more details).
2015-06-15 09:49:18 0 [Note] /mysql/bin/mysqld (mysqld 5.6.25-enterprise-commercial-advanced) starting as process 3289 ...
2015-06-15 09:49:18 3289 [Note] Plugin 'FEDERATED' is disabled.
2015-06-15 09:49:18 3289 [Note] InnoDB: Using atomics to ref count buffer pool pages
2015-06-15 09:49:18 3289 [Note] InnoDB: The InnoDB memory heap is disabled
2015-06-15 09:49:18 3289 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-06-15 09:49:18 3289 [Note] InnoDB: Memory barrier is not used
2015-06-15 09:49:18 3289 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-06-15 09:49:18 3289 [Note] InnoDB: Using Linux native AIO
2015-06-15 09:49:18 3289 [Note] InnoDB: Using CPU crc32 instructions
2015-06-15 09:49:18 3289 [Note] InnoDB: Initializing buffer pool, size = 128.0M
2015-06-15 09:49:18 3289 [Note] InnoDB: Completed initialization of buffer pool
2015-06-15 09:49:18 3289 [Note] InnoDB: Highest supported file format is Barracuda.
2015-06-15 09:49:19 3289 [Note] InnoDB: 128 rollback segment(s) are active.
2015-06-15 09:49:19 3289 [Note] InnoDB: Waiting for purge to start
2015-06-15 09:49:19 3289 [Note] InnoDB: 5.6.25 started; log sequence number 1677570
2015-06-15 09:49:19 3289 [ERROR] /mysql/bin/mysqld: unknown variable 'log-warings=1'
2015-06-15 09:49:19 3289 [ERROR] Aborting

发现日志已经生效,并且我们写错的参数会告出来重新修改参数启动
[root@localhost mysql]# mysqld_safe --defaults-file=/mysql/my.cnf --user=mysql &
[1] 3687
[root@localhost mysql]# 150615 09:57:59 mysqld_safe Logging to '/mysql/log/mysql.log'.
150615 09:57:59 mysqld_safe Starting mysqld daemon with databases from /mysql/data



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22039464/viewspace-1731504/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-07-04

  • 博文量
    29
  • 访问量
    74066