在CentOS 6.7 yum下运行更新Percona服务器会使其处于无法启动的状态。
这来自log /var/log/mysqld.log
150929 14:54:17 mysqld_safe Starting mysqld daemon with databases from /srv/mysql
2015-09-29 14:54:18 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-09-29 14:54:18 0 [Note] /usr/sbin/mysqld (mysqld 5.6.26-74.0) starting as process 17130 ...
2015-09-29 14:54:18 17130 [Note] Plugin 'FEDERATED' is disabled.
2015-09-29 14:54:18 17130 [Note] InnoDB: Using atomics to ref count buffer pool pages
2015-09-29 14:54:18 17130 [Note] InnoDB: The InnoDB memory heap is disabled
2015-09-29 14:54:18 17130 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2015-09-29 14:54:18 17130 [Note] InnoDB: Memory barrier is not used
2015-09-29 14:54:18 17130 [Note] InnoDB: Compressed tables use zlib 1.2.3
2015-09-29 14:54:18 17130 [Note] InnoDB: Using Linux native AIO
2015-09-29 14:54:18 17130 [Note] InnoDB: Using CPU crc32 instructions
2015-09-29 14:54:18 17130 [Note] InnoDB: Initializing buffer pool, size = 3.0G
2015-09-29 14:54:18 17130 [Note] InnoDB: Completed initialization of buffer pool
2015-09-29 14:54:18 17130 [Note] InnoDB: Highest supported file format is Barracuda.
2015-09-29 14:54:18 17130 [ERROR] InnoDB: Tried to read 4096 bytes at offset 286720. Was only able to read 0.
2015-09-29 14:54:18 7fe0f5f847e0 InnoDB: Operating system error number 22 in a file operation.
InnoDB: Error number 22 means 'Invalid argument'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.6/en/operating-system-error-codes.html
2015-09-29 14:54:18 17130 [ERROR] InnoDB: File (unknown): 'read' returned OS error 122. Cannot continue operation
150929 14:54:18 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
my.cnf看起来像这样:
[mysqld]
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
innodb_track_changed_pages = true
pid-file=/var/run/mysqld/mysqld.pid
# use interleaved id creation during bulk inserts
# w/o this bulk inserts are serialized
innodb_autoinc_lock_mode=2
innodb_log_file_size = 2000M
innodb_flush_method = O_DIRECT
#innodb_buffer_pool_size = 80G
innodb_buffer_pool_size = 5G
transaction-isolation=READ-COMMITTED
innodb_file_per_table=1
default-storage-engine = InnoDB
innodb_file_format = Barracuda
罪魁祸首似乎就是这句话:
innodb_track_changed_pages = true
答案 0 :(得分:0)
为了解决这个问题......
innodb_track_changed_pages
更改为false ib_modified_log*
个文件innodb_track_changed_pages
更改为true 这似乎是一个错误。