¿Cómo puedo determinar qué está causando que MySQL (servidor Percona) falle en Linux?

¿Cómo puedo determinar qué está causando que MySQL (servidor Percona) falle en Linux?

Estoy ejecutando la versión Percona de MySQL Server v5.6 y cada pocos días MySQL parece fallar y luego se reinicia automáticamente. ¿Cómo puedo averiguar cuál es el motivo del accidente? He visto a otras personas que MySQL se detiene inesperadamente y parece deberse a problemas de memoria, pero en sus casos el registro de errores menciona esto. En mi caso, no aparece nada en el archivo de registro hasta que se reinicia.

Incluyo el archivo de registro relevante a continuación con el último error "esperado" y luego lo que registra cuando MySQL se reinicia. Consiste en varias advertencias de "Declaraciones inseguras escritas en el registro binario" antes del bloqueo, pero no creo que sean el motivo del bloqueo. (En breve actualizaré las declaraciones para no usar la ON DUPLICATE KEYconstrucción para detenerlas y evitar que se llene el registro. También debo mencionar que no hago replicaciones, por lo que no creo que sean demasiado importantes en este momento. )

El servidor es un Centos 6.6 de 64 bits que se ejecuta en una máquina virtual (Virtuozzo).

Ojalá alguien pueda indicarme la dirección correcta para determinar qué está causando el accidente. ¡Gracias!

Archivo de registro a continuación:

2018-03-19 08:39:51 21476 [Advertencia] Declaración insegura escrita en el registro binario usando el formato de declaración ya que BINLOG_FORMAT = STATEMENT. INSERTAR... EN ACTUALIZACIÓN DE CLAVE DUPLICADA en una tabla con más de una CLAVE ÚNICA no es segura Declaración: INSERTAR EN xxxx EN ACTUALIZACIÓN DE CLAVE DUPLICADA xxxx
180319 08:39:52 mysqld_safe Número de procesos en ejecución ahora: 0
180319 08:39:52 mysqld_safe mysqld reiniciado
2018-03-19 08:39:53 0 [Advertencia] TIMESTAMP con valor DEFAULT implícito está en desuso. Utilice la opción de servidor --explicit_defaults_for_timestamp (consulte la documentación para obtener más detalles).
2018-03-19 08:39:53 20217 [Advertencia] El uso del prefijo de opción único myisam-recover en lugar de myisam-recover-options está obsoleto y se eliminará en una versión futura. Utilice el nombre completo en su lugar.
2018-03-19 08:39:53 20217 [Nota] El complemento 'FEDERADO' está deshabilitado.
2018-03-19 08:39:53 20217 [Nota] InnoDB: uso de atomics para contar las páginas del grupo de búfer
2018-03-19 08:39:53 20217 [Nota] InnoDB: el montón de memoria de InnoDB está deshabilitado
2018-03-19 08:39:53 20217 [Nota] InnoDB: Mutexes y rw_locks usan funciones atómicas GCC
2018-03-19 08:39:53 20217 [Nota] InnoDB: no se utiliza la barrera de memoria
2018-03-19 08:39:53 20217 [Nota] InnoDB: las tablas comprimidas usan zlib 1.2.3
2018-03-19 08:39:53 20217 [Nota] InnoDB: uso de AIO nativo de Linux
2018-03-19 08:39:53 20217 [Nota] InnoDB: uso de instrucciones CPU crc32
2018-03-19 08:39:53 20217 [Nota] InnoDB: Inicializando grupo de buffer, tamaño = 3.0G
2018-03-19 08:39:54 20217 [Nota] InnoDB: inicialización completa del grupo de búfer
2018-03-19 08:39:54 20217 [Nota] InnoDB: el formato de archivo más compatible es Barracuda.
2018-03-19 08:39:54 20217 [Nota] InnoDB: el escaneo de registros avanzó más allá del punto de control lsn 123717382274
2018-03-19 08:39:54 20217 [Nota] InnoDB: ¡La base de datos no se cerró normalmente!
2018-03-19 08:39:54 20217 [Nota] InnoDB: iniciando la recuperación tras fallo.
2018-03-19 08:39:54 20217 [Nota] InnoDB: lectura de información de espacio de tabla de los archivos .ibd...
2018-03-19 08:39:54 20217 [Nota] InnoDB: Restaurando posibles páginas de datos a medio escribir
2018-03-19 08:39:54 20217 [Nota] InnoDB: desde el búfer de doble escritura...
InnoDB: realizando recuperación: escaneado hasta el número de secuencia de registro 123717811056
InnoDB: la transacción 790235434 estaba en el estado preparado XA.
InnoDB: 1 transacción(es) que deben revertirse o limpiarse
InnoDB: en total 0 operaciones de fila para deshacer
InnoDB: el contador de identificación de Trx es 790235904
2018-03-19 08:39:55 20217 [Nota] InnoDB: iniciando un lote de aplicación de registros a la base de datos...
InnoDB: Progreso en porcentaje: 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 7
InnoDB: Aplicar lote completado
InnoDB: última posición del archivo binlog MySQL 0 697177863, nombre de archivo mysql-bin.000227
InnoDB: iniciar en segundo plano la reversión de transacciones no confirmadas
2018-03-19 08:39:56 20217 [Nota] InnoDB: 128 segmentos de reversión están activos.
2018-03-19 08:39:56 7f481bd03700 InnoDB: Reversión de transacciones no preparadas completadas
2018-03-19 08:39:56 20217 [Nota] InnoDB: esperando a que comience la purga
2018-03-19 08:39:56 20217 [Nota] InnoDB: Percona XtraDB (http://www.percona.com) 5.6.22-71.0 iniciado; número de secuencia de registro 123717811056
2018-03-19 08:39:56 20217 [Nota] Recuperación después de un bloqueo usando /var/lib/mysql/mysql-bin
2018-03-19 08:46:36 20217 [Nota] Iniciando recuperación de fallas...
2018-03-19 08:46:36 7f491ce677e0 InnoDB: Iniciando recuperación para transacciones XA...
2018-03-19 08:46:36 7f491ce677e0 InnoDB: Transacción 790235434 en estado preparado después de la recuperación
2018-03-19 08:46:36 7f491ce677e0 InnoDB: la transacción contiene cambios en 1 fila
2018-03-19 08:46:36 7f491ce677e0 InnoDB: 1 transacciones en estado preparado después de la recuperación
2018-03-19 08:46:36 20217 [Nota] Se encontraron 1 transacción(es) preparada(s) en InnoDB
2018-03-19 08:46:36 20217 [Nota] Recuperación de fallos finalizada.
2018-03-19 08:46:36 20217 [Nota] No se encontró el archivo de clave privada RSA: /var/lib/mysql//private_key.pem. Algunos complementos de autenticación no funcionarán.
2018-03-19 08:46:36 20217 [Nota] No se encontró el archivo de clave pública RSA: /var/lib/mysql//public_key.pem. Algunos complementos de autenticación no funcionarán.
2018-03-19 08:46:36 20217 [Nota] Nombre de host del servidor (dirección vinculada): '*'; puerto: 3306
2018-03-19 08:46:36 20217 [Nota] IPv6 está disponible.
2018-03-19 08:46:36 20217 [Nota] - '::' se resuelve en '::';
2018-03-19 08:46:36 20217 [Nota] Socket de servidor creado en IP: '::'.
2018-03-19 08:46:37 20217 [Nota] Programador de eventos: Cargado 0 eventos
2018-03-19 08:46:37 20217 [Nota] /usr/sbin/mysqld: listo para conexiones.
Versión: '5.6.22-71.0-log' socket: '/var/lib/mysql/mysql.sock' puerto: 3306 Servidor Percona (GPL), versión 71.0, revisión 726
2018-03-19 08:46:38 20217 [Advertencia] Declaración insegura escrita en el registro binario usando el formato de declaración desde BINLOG_FORMAT = STATEMENT. INSERTAR... EN ACTUALIZACIÓN DE CLAVE DUPLICADA en una tabla con más de una CLAVE ÚNICA no es segura Declaración: INSERTAR EN xxxx EN ACTUALIZACIÓN DE CLAVE DUPLICADA xxxx

Editar: según la pregunta de @impimp en los comentarios, aquí está el contenido de/var/log/messages

18 de marzo 04:02:22 NOMBRE DE HOST rsyslogd: [origin software="rsyslogd" swVersion="5.8.10" x-pid="474" x-info="http://www.rsyslog.com"] rsyslogd fue HUPed
19 de marzo 08:39:52 Kernel HOSTNAME: [103311785.405884] Sin memoria en UB 650543: OOM eliminó el proceso 21476 (mysqld) puntuación 0 vm:6363484kB, rss:4024500kB, swap:45536kB
20 de marzo 09:17:35 Kernel HOSTNAME: [103400050.711461] Sin memoria en UB 650543: OOM eliminó el proceso 20217 (mysqld) puntuación 0 vm:6382720kB, rss:4066652kB, swap:0kB

información relacionada