
Estoy tratando de descubrir por qué MySQL sigue apagándose todas las noches. Específicamente, MySQL se reinicia todas las noches (también por motivo desconocido), pero falla al reiniciarse y aborta. Algunos días se reinicia correctamente y todo funciona, pero la mayoría de los días no, así que tuve que crear un script para reiniciarlo todas las mañanas. Alrededor de las 8-9 a.m. UTC todas las mañanas, MySQL se reinicia dos veces, pero falla en el segundo reinicio. Falla al iniciar porque no puede encontrar algún archivo de inicio .-.work y no estoy seguro de por qué.
Hay 2 casos que noté con MySQL todas las noches:
- Se reinicia exitosamente. Pero Will dice que ejecuta el archivo de inicio, o que no lo ejecuta en absoluto.
- Los reinicios fallan. En este caso siempre es porque no encuentra el archivo de inicio.
Información resumida:
- MySQL se reinicia todas las mañanas de 8 a 9 a. m. UTC
- MySQL se reinicia correctamente: Detener > Iniciar > Detener > Iniciar
- Error al reiniciar MySQL: Detener > Iniciar (Abortar/fallar) > Detener
Información adicional:
- CentOS 6.8
- MySQL 5.7.17
MySQL falla debido al archivo de inicio:
2018-02-25T08:45:09.782610Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-02-25T08:45:09.784928Z 0 [Note] /usr/sbin/mysqld (mysqld 5.7.17-log) starting as process 11221 ...
2018-02-25T08:45:09.798909Z 0 [Note] InnoDB: PUNCH HOLE support available
2018-02-25T08:45:09.798938Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2018-02-25T08:45:09.798960Z 0 [Note] InnoDB: Uses event mutexes
2018-02-25T08:45:09.798971Z 0 [Note] InnoDB: GCC builtin __sync_synchronize() is used for memory barrier
2018-02-25T08:45:09.798992Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.3
2018-02-25T08:45:09.799007Z 0 [Note] InnoDB: Using Linux native AIO
2018-02-25T08:45:09.799444Z 0 [Note] InnoDB: Number of pools: 1
2018-02-25T08:45:09.799600Z 0 [Note] InnoDB: Using CPU crc32 instructions
2018-02-25T08:45:09.801717Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M
2018-02-25T08:45:09.816978Z 0 [Note] InnoDB: Completed initialization of buffer pool
2018-02-25T08:45:09.821022Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2018-02-25T08:45:09.846219Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2018-02-25T08:45:10.072617Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2018-02-25T08:45:10.072727Z 0 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2018-02-25T08:45:10.093784Z 0 [Note] InnoDB: File './ibtmp1' size is now 12 MB.
2018-02-25T08:45:10.094893Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
2018-02-25T08:45:10.094908Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
2018-02-25T08:45:10.095372Z 0 [Note] InnoDB: Waiting for purge to start
2018-02-25T08:45:10.145560Z 0 [Note] InnoDB: 5.7.17 started; log sequence number 28375479994
2018-02-25T08:45:10.145846Z 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool
2018-02-25T08:45:10.145941Z 0 [Note] Plugin 'FEDERATED' is disabled.
2018-02-25T08:45:10.162499Z 0 [Note] InnoDB: Buffer pool(s) load completed at 180225 1:45:10
2018-02-25T08:45:10.181824Z 0 [Note] Found ca.pem, server-cert.pem and server-key.pem in data directory. Trying to enable SSL support using them.
2018-02-25T08:45:10.186627Z 0 [Warning] CA certificate ca.pem is self signed.
2018-02-25T08:45:10.188420Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2018-02-25T08:45:10.188488Z 0 [Note] IPv6 is`enter code here` not available.
2018-02-25T08:45:10.188521Z 0 [Note] - '0.0.0.0' resolves to '0.0.0.0';
2018-02-25T08:45:10.188545Z 0 [Note] Server socket created on IP: '0.0.0.0'.
2018-02-25T08:45:10.304549Z 0 [ERROR] Incorrect definition of table performance_schema.replication_connection_status: expected column 'RECEIVED_TRANSACTION_SET' at position 7 to have type longtext, found type text.
2018-02-25T08:45:10.305926Z 0 [ERROR] Incorrect definition of table performance_schema.replication_group_member_stats: expected column 'COUNT_TRANSACTIONS_ROWS_VALIDATING' at position 6, found 'COUNT_TRANSACTIONS_VALIDATING'.
2018-02-25T08:45:10.311827Z 0 [Note] Event Scheduler: Loaded 0 events
2018-02-25T08:45:10.311944Z 0 [Note] Executing 'SELECT * FROM INFORMATION_SCHEMA.TABLES;' to get a list of tables using the deprecated partition engine. You may use the startup option '--disable-partition-engine-check' to skip this check.
2018-02-25T08:45:10.311957Z 0 [Note] Beginning of list of non-natively partitioned tables
2018-02-25T08:45:10.880682Z 0 [Note] End of list of non-natively partitioned tables
2018-02-25T08:45:10.880729Z 0 [Note] Execution of init_file '/var/lib/mysql/.-.work.gjy3b8Gov_chCz89' started.
2018-02-25T08:45:10.880806Z 0 [ERROR] /usr/sbin/mysqld: File '/var/lib/mysql/.-.work.gjy3b8Gov_chCz89' not found (Errcode: 2 - No such file or directory)
2018-02-25T08:45:10.880816Z 0 [ERROR] Aborting
Sé que el hecho de que la base de datos se reinicie todas las noches es otro problema a considerar, pero no estoy muy seguro de por dónde empezar con todo este problema. ¿Por qué busca ese archivo? ¿Cómo se está generando? ¿Cómo lo soluciono? Cualquier ayuda sería apreciada.
(Editar) Publicado nuevamente aquí para cumplir mejor con las calificaciones del tema.
(Edición 2) Aquí está el archivo my.cnf:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
log_timestamps = UTC
general_log
general_log_file = /var/log/general_query.log
log_error_verbosity = 3
max_allowed_packet = 256M
slow_query_log_file = /var/log/slow-queries.log
slow-query-log
Respuesta1
Parece que una de las tablas internas no está configurada correctamente:
Incorrect definition of table performance_schema.replication_connection_status: expected column 'RECEIVED_TRANSACTION_SET' at position 7 to have type longtext, found type text.
Sugeriría que MySQL descargue cualquier base de datos que tenga y elimine los usuarios/permisos usando
mysql -u root -p password --skip-column-names -A -e"SELECT CONCAT('SHOW GRANTS FOR ''',user,'''@''',host,''';') FROM mysql.user WHERE user<>''" | mysql ${MYSQL_CONN} --skip-column-names -A | sed 's/$/;/g' > MySQLUserGrants.sql
purgue el paquete msyql, reinstale mysql y luego restaure sus bases de datos/usuarios/permisos.