InglésFrancésEspañol

Ad


icono de página de OnWorks

mysqlbinlog - Online en la nube

Ejecute mysqlbinlog en el proveedor de alojamiento gratuito de OnWorks sobre Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS

Este es el comando mysqlbinlog que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.

PROGRAMA:

NOMBRE


mysqlbinlog - utilidad para procesar archivos de registro binarios

SINOPSIS


mysqlbinlog [opciones] archivo de registro ...

DESCRIPCIÓN


El registro binario del servidor consta de archivos que contienen "eventos" que describen modificaciones
al contenido de la base de datos. El servidor escribe estos archivos en formato binario. Para mostrar su
contenidos en formato de texto, utilice el mysqlbinlog utilidad. También puedes usar mysqlbinlog a
mostrar el contenido de los archivos de registro de retransmisión escritos por un servidor esclavo en una configuración de replicación
porque los registros de retransmisión tienen el mismo formato que los registros binarios. El registro binario y el registro de retransmisión son
discutido con más detalle en la Sección 5.2.4, "El registro binario", y la Sección 17.2.2, "Replicación
Registros de estado y relés ”.

invocar mysqlbinlog Me gusta esto:

concha> mysqlbinlog [opciones] archivo de registro ...

Por ejemplo, para mostrar el contenido del archivo de registro binario denominado binlog.000003, utilice este
mando:

concha> mysqlbinlog binlog.0000003

La salida incluye eventos contenidos en binlog.000003. Para el registro basado en declaraciones, evento
La información incluye la declaración SQL, el ID del servidor en el que se ejecutó, la
marca de tiempo cuando se ejecutó la declaración, cuánto tiempo tomó, etc. Para
registro basado en filas, el evento indica un cambio de fila en lugar de una declaración SQL. Ver
Sección 17.1.2, “Formatos de replicación”, para obtener información sobre los modos de registro.

Los eventos están precedidos por comentarios de encabezado que brindan información adicional. Por ejemplo:

# en 141
# 100309 9:28:36 ID de servidor 123 end_log_pos 245
Consulta thread_id = 3350 exec_time = 11 error_code = 0

En la primera línea, el número que sigue a indica el desplazamiento del archivo o el inicio
posición, del evento en el archivo de registro binario.

La segunda línea comienza con una fecha y hora que indican cuándo comenzó la declaración el
servidor donde se originó el evento. Para la replicación, esta marca de tiempo se propaga al esclavo
servidores. ID de servidor es el valor de ID de servidor del servidor donde se originó el evento.
end_log_pos indica dónde comienza el próximo evento (es decir, es la posición final del
evento actual + 1). thread_id indica qué hilo ejecutó el evento. exec_time es
el tiempo empleado en ejecutar el evento, en un servidor maestro. En un esclavo, es la diferencia
del tiempo de ejecución final en el esclavo menos el tiempo de ejecución inicial en el maestro.
La diferencia sirve como indicador de cuánto se retrasa la replicación con respecto al maestro.
error_code indica el resultado de ejecutar el evento. Cero significa que no hay error
ocurrido.

Note
Cuando se utilizan grupos de eventos, las compensaciones de archivo de eventos se pueden agrupar y la
los comentarios de eventos pueden agruparse. No confunda estos eventos agrupados con
compensaciones de archivo en blanco.

La salida de mysqlbinlog se puede volver a ejecutar (por ejemplo, usándolo como entrada para
mysql) para rehacer las declaraciones en el registro. Esto es útil para operaciones de recuperación después de una
caída del servidor. Para ver otros ejemplos de uso, consulte la discusión más adelante en esta sección y en
Sección 7.5, “Recuperación en un momento determinado (incremental) mediante el registro binario”.

Normalmente, usas mysqlbinlog para leer archivos de registro binarios directamente y aplicarlos a la
servidor MySQL local. También es posible leer registros binarios de un servidor remoto usando
las --leer-del-servidor-remoto opción. Para leer registros binarios remotos, el parámetro de conexión
Se pueden dar opciones para indicar cómo conectarse al servidor. Estas opciones son --anfitrión,
--contraseña, --Puerto, --protocolo, --enchufey --usuario; son ignorados excepto cuando tu
también use el --leer-del-servidor-remoto .

mysqlbinlog admite las siguientes opciones, que se pueden especificar en la línea de comando o
en los grupos [mysqlbinlog] y [cliente] de un archivo de opciones. Para obtener información sobre la opción
archivos utilizados por los programas MySQL, consulte la Sección 4.2.6, “Uso de archivos de opción”.

· --ayuda, -?

Muestre un mensaje de ayuda y salga.

· --base64-salida =propuesta de

Esta opción determina cuándo los eventos deben mostrarse codificados como cadenas base 64
utilizando sentencias BINLOG. La opción tiene estos valores permitidos (no distingue entre mayúsculas y minúsculas):

· AUTO ("automático") o UNSPEC ("no especificado") muestra declaraciones BINLOG
automáticamente cuando sea necesario (es decir, para eventos de descripción de formato y filas
eventos). Si no --base64-salida se da la opción, el efecto es el mismo que
--base64-salida = AUTO.

Note
La visualización automática de BINLOG es el único comportamiento seguro si tiene la intención de utilizar el
salida de mysqlbinlog para volver a ejecutar el contenido del archivo de registro binario. La otra opcion
Los valores están pensados ​​únicamente con fines de depuración o prueba porque pueden
producir resultados que no incluyen todos los eventos en forma ejecutable.

· NUNCA provoca que las declaraciones BINLOG no se muestren. mysqlbinlog sale con un
error si se encuentra un evento de fila que debe mostrarse usando BINLOG.

· DECODE-ROWS especifica mysqlbinlog que desea decodificar los eventos de fila
y se muestran como declaraciones SQL comentadas especificando también el --verboso .
Como NUNCA, DECODE-ROWS suprime la visualización de declaraciones BINLOG, pero a diferencia de NUNCA,
no sale con un error si se encuentra un evento de fila.

Para ejemplos que muestran el efecto de --base64-salida y --verboso en evento de fila
salida, consulte la sección denominada “PANTALLA DE EVENTOS DE FILA DE MYSQLBINLOG”.

· --bind-address =dirección IP

En una computadora que tenga múltiples interfaces de red, use esta opción para seleccionar qué
interfaz que se utilizará para conectarse al servidor MySQL.

Esta opción es compatible a partir de MySQL 5.6.1.

· --binlog-row-event-max-size =N

┌───────────────────┬──────────────────────────── ──────────────┐
Línea de comando Formato │ --binlog-row-event-max-size = # │
├────────────────────┼──────────────────────────── ──────────────┤
│ │ Permitido Valores
│ ├──────────────────┬──────────────────────┤
│ │ Productos Poco Tamaño │ 64 │
│ ├───────────────────┼────────────────────────────────
│ │ Tipo de Propiedad │ numérico │
│ ├───────────────────┼────────────────────────────────
│ │ Predeterminado │ 4294967040 │
│ ├───────────────────┼────────────────────────────────
│ │ Min Valor │ 256 │
│ ├───────────────────┼────────────────────────────────
│ │ Max Valor │ 18446744073709547520 │
└───────────────────┴──────────────────┴───────── ──────────────┘
Especifique el tamaño máximo de un evento de registro binario basado en filas, en bytes. Las filas están agrupadas
en eventos más pequeños que este tamaño si es posible. El valor debe ser múltiplo de 256.
El valor predeterminado es 4 GB.

· --character-sets-dir =camino

El directorio en el que están instalados los conjuntos de caracteres. Consulte la Sección 10.5, “Conjunto de caracteres
Configuración".

· --connection-server-id =id_servidor

Esta opción se utiliza para probar un servidor MySQL para que sea compatible con BINLOG_DUMP_NON_BLOCK
bandera de conexión, que se eliminó inadvertidamente en MySQL 5.6.5 y se restauró en MySQL
5.6.20 (error n. ° 18000079, error n. ° 71178). No es necesario para el funcionamiento normal.

Los valores mínimos y predeterminados efectivos para esta opción dependen de si mysqlbinlog
se ejecuta en modo de bloqueo o en modo sin bloqueo. Cuándo mysqlbinlog se ejecuta en bloqueo
modo, el valor predeterminado (y mínimo) es 1; cuando se ejecuta en modo sin bloqueo, el valor predeterminado
(y mínimo) el valor es 0.

Esta opción se agregó en MySQL 5.6.20.

· --database =nombre_bd, -d nombre_bd

Esta opción provoca mysqlbinlog para generar entradas del registro binario (solo registro local)
que ocurren mientras nombre_bd ha sido seleccionado como la base de datos predeterminada por USE.

El --base de datos opción para mysqlbinlog es similar a la --binlog-do-db opción para
mysqld, pero se puede utilizar para especificar solo una base de datos. Si --base de datos se le da múltiples
veces, solo se utiliza la última instancia.

Los efectos de esta opción dependen de si el registro basado en instrucciones o en filas
formato está en uso, de la misma manera que los efectos de --binlog-do-db depende de si
Se está utilizando el registro basado en sentencias o en filas.

Basado en declaraciones registro. --base de datos La opción funciona de la siguiente manera:

· Tiempo nombre_bd es la base de datos predeterminada, las declaraciones se emiten ya sea que modifiquen
mesas en nombre_bd o una base de datos diferente.

· A no ser que nombre_bd se selecciona como la base de datos predeterminada, las declaraciones no se emiten,
incluso si modifican tablas en nombre_bd.

· Existe una excepción para CREATE DATABASE, ALTER DATABASE y DROP DATABASE. El
siendo la base de datos creado, alterado or caído se considera el predeterminado
base de datos al determinar si generar la declaración.

Suponga que el registro binario se creó ejecutando estas declaraciones usando
registro basado en declaraciones:

INSERTAR EN test.t1 (i) VALORES(100);
INSERTAR EN db2.t2 (j) VALORES(200);
USE prueba;
INSERTAR EN test.t1 (i) VALORES(101);
INSERTAR EN t1 (i) VALORES(102);
INSERTAR EN db2.t2 (j) VALORES(201);
UTILIZAR db2;
INSERTAR EN test.t1 (i) VALORES(103);
INSERTAR EN db2.t2 (j) VALORES(202);
INSERTAR EN t2 (j) VALORES(203);

mysqlbinlog --database = prueba no genera las dos primeras declaraciones INSERT porque
no hay una base de datos predeterminada. Genera las tres declaraciones INSERT después de USE
prueba, pero no las tres sentencias INSERT que siguen a USE db2.

mysqlbinlog --database = db2 no genera las dos primeras declaraciones INSERT porque
no hay una base de datos predeterminada. No genera las tres declaraciones INSERT siguientes
USE prueba, pero genera las tres sentencias INSERT después de USE db2.

Basado en filas registro. mysqlbinlog solo genera entradas que cambian las tablas que pertenecen a
nombre_bd. La base de datos predeterminada no tiene ningún efecto sobre esto. Suponga que el registro binario solo
descrito se creó utilizando un registro basado en filas en lugar de un registro basado en declaraciones.
mysqlbinlog --database = prueba genera solo aquellas entradas que modifican t1 en la prueba
base de datos, independientemente de si se emitió USE o cuál es la base de datos predeterminada. Si un
el servidor se está ejecutando con binlog_format establecido en MIXED y desea que sea posible
utilizan el mysqlbinlog con el --base de datos opción, debe asegurarse de que las tablas
modificados están en la base de datos seleccionada por USE. (En particular, ninguna base de datos cruzada
deben usarse actualizaciones.)

Antes de MySQL 5.6.10, el --base de datos La opción no funcionó correctamente con un registro escrito
por un servidor MySQL habilitado para GTID. (Error # 15912728)

· --debug [=opciones_depuración], -# [opciones_depuración]

Escribe un registro de depuración. Un típico opciones_depuración la cadena es d: t: o,file_name. El valor por defecto
es d: t: o, / tmp / mysqlbinlog.trace.

· --comprobación de depuración

Imprime información de depuración cuando se cierra el programa.

· --información de depuración

Imprima información de depuración y estadísticas de uso de memoria y CPU cuando el programa
salidas

· --default-auth =plugin

El complemento de autenticación del lado del cliente que se utilizará. Consulte la Sección 6.3.7, “Enchufable
Autenticación".

Esta opción se agregó en MySQL 5.6.2.

· --defaults-extra-file =file_name

Lea este archivo de opciones después del archivo de opciones global pero (en Unix) antes que el usuario
archivo opcional. Si el archivo no existe o es inaccesible por algún otro motivo, se produce un error.
file_name se interpreta en relación con el directorio actual si se da como una ruta relativa
nombre en lugar de un nombre de ruta completo.

· --defaults-file =file_name

Utilice solo el archivo de opciones proporcionado. Si el archivo no existe o está de otra manera
inaccesible, se produce un error. file_name se interpreta en relación con la corriente
directorio si se proporciona como un nombre de ruta relativo en lugar de un nombre de ruta completo.

· --defaults-group-suffix =str

Lea no solo los grupos de opciones habituales, sino también los grupos con los nombres habituales y un
sufijo de str. Por ejemplo, mysqlbinlog normalmente lee el [cliente] y [mysqlbinlog]
grupos. Si el --defaults-group-suffix = _otro se da la opción, mysqlbinlog también lee
los grupos [client_other] y [mysqlbinlog_other].

· --disable-log-bin, -D

Deshabilite el registro binario. Esto es útil para evitar un bucle sin fin si usa el
--to-último-registro opción y están enviando la salida al mismo servidor MySQL. Esta opción
también es útil cuando se restaura después de un bloqueo para evitar la duplicación de las declaraciones que
han iniciado sesión.

Esta opción requiere que tenga el privilegio SUPER. Causa mysqlbinlog a
incluir una declaración SET sql_log_bin = 0 en su salida para deshabilitar el registro binario del
salida restante. La instrucción SET es ineficaz a menos que tenga el SUPER
privilegio.

· --exclude-gtids =gtid_set

No muestre ninguno de los grupos enumerados en el gtid_set. Agregado en MySQL 5.6.5.

· --forzar si está abierto, -F

Leer archivos de registro binarios incluso si están abiertos o no se cerraron correctamente.

· --forzar lectura, -f

Con esta opción, si mysqlbinlog lee un evento de registro binario que no reconoce,
imprime una advertencia, ignora el evento y continúa. Sin esta opción,
mysqlbinlog se detiene si lee tal evento.

· --volcadohexadecimal, -H

Mostrar un volcado hexadecimal de los comentarios de inicio de sesión, como se describe en la sección llamada
“FORMATO MYSQLBINLOG HEX DUMP”. La salida hexadecimal puede ser útil para la replicación.
depuración.

· --host =nombre_host, -h nombre_host

Obtenga el registro binario del servidor MySQL en el host especificado.

· --include-gtids =gtid_set

Mostrar solo los grupos enumerados en el gtid_set. Agregado en MySQL 5.6.5.

· --local-load =camino, -l camino

Prepare archivos temporales locales para LOAD DATA INFILE en el directorio especificado.

Importante:
Estos archivos temporales no se eliminan automáticamente por mysqlbinlog o cualquier otro
Programa MySQL.

· --login-path =nombre

Lea las opciones de la ruta de acceso nombrada en el archivo de inicio de sesión .mylogin.cnf. Una "ruta de acceso"
es un grupo de opciones que permite solo un conjunto limitado de opciones: fortaleza, usuarioy
la contraseña. Piense en una ruta de inicio de sesión como un conjunto de valores que indican el host del servidor y
las credenciales para autenticarse con el servidor. Para crear el archivo de ruta de inicio de sesión, use
las mysql_config_editor utilidad. Ver mysql_config_editor(1). Esta opción fue agregada en
MySQL 5.6.6.

· - sin valores predeterminados

No lea ningún archivo de opciones. Si el inicio del programa falla debido a la lectura de opciones desconocidas
desde un archivo de opciones, - sin valores predeterminados se puede utilizar para evitar que se lean.

La excepción es que el archivo .mylogin.cnf, si existe, se lee en todos los casos. Esta
permite que las contraseñas se especifiquen de una manera más segura que en la línea de comando incluso cuando
- sin valores predeterminados se utiliza. (.mylogin.cnf es creado por el mysql_config_editor utilidad.
See mysql_config_editor(1).)

· --desplazamiento =N, -o N

Salta el primero N entradas en el registro.

· --password [=la contraseña], -pag[la contraseña]

La contraseña que se utilizará al conectarse al servidor. Si usa el formulario de opción corto
(-p), tú no puede tener un espacio entre la opción y la contraseña. Si omite el
la contraseña valor siguiendo el --contraseña or -p opción en la línea de comando, mysqlbinlog
solicita uno.

La especificación de una contraseña en la línea de comando debe considerarse insegura. Ver
Sección 6.1.2.1, “Directrices para el usuario final para la seguridad de las contraseñas”. Puedes usar una opción
archivo para evitar dar la contraseña en la línea de comando.

· --plugin-dir =camino

El directorio en el que buscar complementos. Puede ser necesario especificar esta opción
si el --autorización predeterminada La opción se utiliza para especificar un complemento de autenticación, pero
mysqlbinlog no lo encuentra. Consulte la Sección 6.3.7, “Autenticación conectable”.

Esta opción se agregó en MySQL 5.6.2.

· --port =núm_puerto, -P núm_puerto

El número de puerto TCP / IP que se utilizará para conectarse a un servidor remoto.

· --print-defaults

Imprima el nombre del programa y todas las opciones que obtiene de los archivos de opciones.

· --protocol = {TCP | ENCHUFE | TUBO | MEMORIA}

El protocolo de conexión que se utilizará para conectarse al servidor. Es útil cuando el
otros parámetros de conexión normalmente harían que se utilizara un protocolo diferente al
uno que quieras. Para obtener detalles sobre los valores permitidos, consulte la Sección 4.2.2, “Conexión a
el servidor MySQL ”.

· --crudo

De forma predeterminada, mysqlbinlog lee archivos de registro binarios y escribe eventos en formato de texto. El
--crudo la opción dice mysqlbinlog para escribirlos en su formato binario original. Su uso
requiere que --leer-del-servidor-remoto también se puede utilizar porque los archivos se solicitan
desde un servidor. mysqlbinlog escribe un archivo de salida para cada archivo leído desde el servidor.
El --crudo La opción se puede utilizar para hacer una copia de seguridad del registro binario de un servidor. Con el
--no-nunca opción, la copia de seguridad es "en vivo" porque mysqlbinlog permanece conectado a la
servidor. De forma predeterminada, los archivos de salida se escriben en el directorio actual con el mismo
nombres como los archivos de registro originales. Los nombres de los archivos de salida se pueden modificar utilizando el
--archivo de resultado opción. Para obtener más información, consulte la sección "UTILIZAR MYSQLBINLOG
PARA HACER UNA COPIA DE SEGURIDAD DE LOS ARCHIVOS DE REGISTRO BINARIO ”.

Esta opción se agregó en MySQL 5.6.0.

· --read-from-remote-master =tipo

Leer registros binarios de un servidor MySQL con COM_BINLOG_DUMP o COM_BINLOG_DUMP_GTID
comandos configurando el valor de la opción en BINLOG-DUMP-NON-GTIDS o
BINLOG-DUMP-GTIDS, respectivamente. Si --read-from-remote-master = BINLOG-DUMP-GTIDS is
combinado con --excluir-gtids, las transacciones se pueden filtrar en el maestro,
evitando el tráfico de red innecesario.

Consulte también la descripción de --leer-del-servidor-remoto.

Esta opción se agregó en MySQL 5.6.5.

· --leer-del-servidor-remoto, -R

Lea el registro binario de un servidor MySQL en lugar de leer un archivo de registro local. Ningún
Las opciones de los parámetros de conexión se ignoran a menos que también se proporcione esta opción. Estos
las opciones son --anfitrión, --contraseña, --Puerto, --protocolo, --enchufey --usuario.

Esta opción requiere que el servidor remoto esté en ejecución. Funciona solo para registro binario
archivos en el servidor remoto, no archivos de registro de retransmisión.

A partir de MySQL 5.6.5, esta opción es como
--read-from-remote-master = BINLOG-DUMP-NON-GTIDS.

· --result-file =nombre , -r nombre

Sin el --crudo opción, esta opción indica el archivo al que mysqlbinlog escribe
salida de texto. Con --crudo, mysqlbinlog escribe un archivo de salida binario para cada archivo de registro
transferidos desde el servidor, escribiéndolos por defecto en el directorio actual usando
los mismos nombres que el archivo de registro original. En este caso, el --archivo de resultado valor de la opción
se trata como un prefijo que modifica los nombres de los archivos de salida.

· --secure-autorización

No envíe contraseñas al servidor en formato antiguo (anterior a 4.1). Esto evita conexiones
excepto para los servidores que utilizan el formato de contraseña más reciente. Esta opción está habilitada por
defecto; usar --saltar-autorización-segura para deshabilitarlo. Esta opción se agregó en MySQL 5.6.17.

Note
Las contraseñas que utilizan el método hash anterior a 4.1 son menos seguras que las contraseñas que
utilice el método de hash de contraseña nativo y debe evitarse. Contraseñas anteriores a 4.1
están en desuso y el soporte para ellos se eliminará en una futura versión de MySQL. Para
instrucciones de actualización de la cuenta, consulte la Sección 6.3.8.3, “Migración desde versiones anteriores a 4.1
Hash de contraseñas y el complemento mysql_old_password ”.

· --server-id =id

Muestra solo aquellos eventos creados por el servidor que tienen el ID de servidor dado.

· --server-id-bits =N

Utilice solo el primero N bits del server_id para identificar el servidor. Si el registro binario
fue escrito por un mysqld con los bits de identificación del servidor establecidos en menos de 32 y los datos del usuario almacenados
en lo más significativo, corriendo mysqlbinlog --bits-id-servidor establecer a 32
permite ver estos datos.

Esta opción solo es compatible con las versiones de mysqlbinlog suministrado con MySQL
Distribución de clúster, o construido a partir de las fuentes de MySQL Cluster.

· --set-charset =nombre_juego de caracteres

Agregar un SET NAMES nombre_juego de caracteres declaración a la salida para especificar el juego de caracteres a
utilizarse para procesar archivos de registro.

· --shared-memory-base-name =nombre

En Windows, el nombre de memoria compartida que se utilizará para las conexiones realizadas con memoria compartida para
un servidor local. El valor predeterminado es MYSQL. El nombre de la memoria compartida distingue entre mayúsculas y minúsculas.

El servidor debe iniciarse con el --memoria compartida opción para habilitar la memoria compartida
conexiones.

· --forma corta, -s

Muestre solo las declaraciones contenidas en el registro, sin ninguna información adicional o
eventos basados ​​en filas. Esto es solo para pruebas y no debe usarse en producción
.

· --skip-gtids [= (verdadero | falso)]

No muestre ningún GTID en la salida. Esto es necesario al escribir en un archivo de volcado.
de uno o más registros binarios que contienen GTID, como se muestra en este ejemplo:

concha> mysqlbinlog --skip-gtids binlog.000001 > /tmp/dump.sql
concha> mysqlbinlog --skip-gtids binlog.000002 >> /tmp/dump.sql
concha> mysql -u raíz -p -e "fuente /tmp/dump.sql "

El uso de esta opción normalmente no se recomienda en producción.

Esta opción se agregó en MySQL 5.6.5.

· --socket =camino, -S camino

Para conexiones a localhost, el archivo de socket de Unix a usar o, en Windows, el nombre de
la tubería nombrada para usar.

· --start-datetime =datetime

Comience a leer el registro binario en el primer evento que tenga una marca de tiempo igual o posterior
que la datetime argumento. La datetime el valor es relativo a la zona horaria local en
la maquina donde corres mysqlbinlog. El valor debe estar en un formato aceptado para
los tipos de datos DATETIME o TIMESTAMP. Por ejemplo:

concha> mysqlbinlog --start-datetime = "2005-12-25 11:25:56 " binlog.000003

Esta opción es útil para la recuperación en un momento determinado. Consulte la Sección 7.3, “Ejemplo de copia de seguridad y
Estrategia de recuperación ”.

· --start-position =N, -j N

Comience a leer el registro binario en el primer evento que tenga una posición igual o mayor
que N. Esta opción se aplica al primer archivo de registro nombrado en la línea de comando.

Esta opción es útil para la recuperación en un momento determinado. Consulte la Sección 7.3, “Ejemplo de copia de seguridad y
Estrategia de recuperación ”.

· --stop-datetime =datetime

Deje de leer el registro binario en el primer evento que tenga una marca de tiempo igual o posterior
que la datetime argumento. Esta opción es útil para la recuperación en un momento determinado. Ver el
descripción del --fecha-hora de inicio opción para obtener información sobre el datetime .

Esta opción es útil para la recuperación en un momento determinado. Consulte la Sección 7.3, “Ejemplo de copia de seguridad y
Estrategia de recuperación ”.

· --no-nunca

Esta opción se usa con --leer-del-servidor-remoto. Dice mysqlbinlog permanecer
conectado al servidor. De lo contrario mysqlbinlog sale cuando el último archivo de registro ha sido
transferido desde el servidor. --no-nunca implica --to-último-registro, entonces solo el primero
El archivo de registro para transferir debe nombrarse en la línea de comando.

--no-nunca se usa comúnmente con --crudo para hacer una copia de seguridad del registro binario en vivo, pero también
se puede utilizar sin --crudo para mantener una visualización de texto continua de los eventos de registro
el servidor los genera.

Esta opción se agregó en MySQL 5.6.0.

· --stop-never-slave-server-id =id

Con --no-nunca, mysqlbinlog informa un ID de servidor de 65535 cuando se conecta al
servidor. --stop-never-slave-servidor-id especifica explícitamente el ID del servidor para informar. Eso
se puede utilizar para evitar un conflicto con la ID de un servidor esclavo u otro mysqlbinlog
proceso. Consulte la sección denominada “ESPECIFICACIÓN DEL ID DE SERVIDOR MYSQLBINLOG”.

Esta opción se agregó en MySQL 5.6.0.

· --stop-position =N

Deje de leer el registro binario en el primer evento que tenga una posición igual o mayor
que N. Esta opción se aplica al último archivo de registro nombrado en la línea de comando.

Esta opción es útil para la recuperación en un momento determinado. Consulte la Sección 7.3, “Ejemplo de copia de seguridad y
Estrategia de recuperación ”.

· --to-último-registro, -t

No se detenga al final del registro binario solicitado desde un servidor MySQL, sino
continúe imprimiendo hasta el final del último registro binario. Si envía la salida al
mismo servidor MySQL, esto puede conducir a un bucle sin fin. Esta opción requiere
--leer-del-servidor-remoto.

· --user =nombre_usuario, -u nombre_usuario

El nombre de usuario de MySQL que se utilizará al conectarse a un servidor remoto.

· --verboso, -v

Reconstruya eventos de fila y muéstrelos como declaraciones SQL comentadas. Si esta opcion es
dado dos veces, la salida incluye comentarios para indicar los tipos de datos de columna y algunos
metadatos

Para ejemplos que muestran el efecto de --base64-salida y --verboso en evento de fila
salida, consulte la sección denominada “PANTALLA DE EVENTOS DE FILA DE MYSQLBINLOG”.

· --verify-binlog-suma de verificación, -c

Verifique las sumas de comprobación en archivos de registro binarios. Esta opción se agregó en MySQL 5.6.1.

· --versión, -V

Muestra la información de la versión y sale.

Antes de MySQL 5.6.11, el mysqlbinlog el número de versión mostrado era 3.3. En MySQL 5.6.11
y luego, esto es 3.4. (Error # 15894381, Error # 67643)

También puede establecer la siguiente variable utilizando --nombre_var=propuesta de sintaxis:

· Open_files_limit

Especifique el número de descriptores de archivos abiertos para reservar.

Puede canalizar la salida de mysqlbinlog en el mysql cliente para ejecutar los eventos
contenido en el registro binario. Esta técnica se utiliza para recuperarse de un accidente cuando tiene
una copia de seguridad antigua (consulte la Sección 7.5, “Recuperación en un momento determinado (incremental)
Tronco"). Por ejemplo:

concha> mysqlbinlog binlog.000001 | mysql -u raíz -p

o:

concha> mysqlbinlog binlog. [0-9] * | mysql -u raíz -p

Si las declaraciones producidas por mysqlbinlog puede contener valores BLOB, estos pueden causar
problemas cuando mysql los procesa. En este caso, invoca mysql con el --modo binario
.

También puede redirigir la salida de mysqlbinlog a un archivo de texto en su lugar, si necesita
modificar primero el registro de sentencias (por ejemplo, para eliminar las sentencias que no desea
ejecutar por alguna razón). Después de editar el archivo, ejecute las declaraciones que contiene.
usándolo como entrada al mysql programa:

concha> mysqlbinlog binlog.000001 > archivo tmp
shell> ... editar archivo tmp ...
concha> mysql -u raíz -p < archivo tmp

Cuándo mysqlbinlog se invoca con el --Posición de salida opción, muestra solo aquellos
eventos con un desplazamiento en el registro binario mayor o igual a una posición dada (el
la posición dada debe coincidir con el inicio de un evento). También tiene opciones para detener y comenzar.
cuando ve un evento con una fecha y hora determinadas. Esto le permite realizar
recuperación en un momento dado utilizando el --stop-fechahora opción (para poder decir, por ejemplo,
“Hacer avanzar mis bases de datos a cómo estaban hoy a las 10:30 am”).

Si tiene más de un registro binario para ejecutar en el servidor MySQL, el método seguro es
procesarlos todos utilizando una única conexión al servidor. Aquí hay un ejemplo que
demuestra lo que puede ser inseguro:

concha> mysqlbinlog binlog.000001 | mysql -u raíz -p # ¡¡PELIGRO!!
concha> mysqlbinlog binlog.000002 | mysql -u raíz -p # ¡¡PELIGRO!!

El procesamiento de registros binarios de esta manera usando múltiples conexiones al servidor causa problemas
si el primer archivo de registro contiene una instrucción CREATE TEMPORARY TABLE y el segundo registro
contiene una declaración que usa la tabla temporal. Cuando el primero mysql
termina, el servidor descarta la tabla temporal. Cuando el segundo mysql intentos de proceso
para usar la tabla, el servidor informa "tabla desconocida".

Para evitar problemas como este, utilice un soltero mysql proceso para ejecutar el contenido de todos
registros binarios que desea procesar. Aquí hay una forma de hacerlo:

concha> mysqlbinlog binlog.000001 binlog.000002 | mysql -u raíz -p

Otro enfoque es escribir todos los registros en un solo archivo y luego procesar el archivo:

concha> mysqlbinlog binlog.000001 > /tmp/sentencias.sql
concha> mysqlbinlog binlog.000002 >> /tmp/sentencias.sql
concha> mysql -u raíz -p -e "fuente /tmp/statements.sql "

mysqlbinlog puede producir una salida que reproduzca una operación LOAD DATA INFILE sin la
archivo de datos original. mysqlbinlog copia los datos en un archivo temporal y escribe una CARGA
Declaración de DATA LOCAL INFILE que hace referencia al archivo. La ubicación predeterminada del directorio
dónde se escriben estos archivos es específico del sistema. Para especificar un directorio explícitamente, use
las --carga local .

Gracias mysqlbinlog convierte las sentencias LOAD DATA INFILE en LOAD DATA LOCAL INFILE
declaraciones (es decir, agrega LOCAL), tanto el cliente como el servidor que usa para
Procesar las declaraciones deben configurarse con la capacidad LOCAL habilitada. Ver
Sección 6.1.6, “Problemas de seguridad con LOAD DATA LOCAL”.

advertencia
Los archivos temporales creados para las sentencias LOAD DATA LOCAL son no automáticamente
eliminados porque son necesarios hasta que realmente ejecute esas declaraciones. Ustedes
debe eliminar los archivos temporales usted mismo después de que ya no necesite el registro de declaraciones.
Los archivos se pueden encontrar en el directorio de archivos temporales y tienen nombres como
nombre_archivo_original - # - #.

MYSQLBINLOG HEX DUMP FORMATO


El --volcadohexadecimal causas de la opción mysqlbinlog para producir un volcado hexadecimal del contenido del registro binario:

concha> mysqlbinlog --volcadohexadecimal master-bin.000001

La salida hexadecimal consta de líneas de comentarios que comienzan con #, por lo que la salida podría verse como
esto para el comando anterior:

/ *! 40019 SET @@ session.max_insert_delayed_threads = 0 * /;
/ *! 50003 SET @OLD_COMPLETION_TYPE = @@ COMPLETION_TYPE, COMPLETION_TYPE = 0 * /;
# en 4
# 051024 17:24:13 ID de servidor 1 end_log_pos 98
# Posición Tipo de marca de tiempo ID de maestro Tamaño Marcas de posición maestra
# 00000004 9d fc 5c 43 0f 01 00 00 00 5e 00 00 00 62 00 00 00 00 00
# 00000017 04 00 35 2e 30 2e 31 35 2d 64 65 62 75 67 2d 6c | ..5.0.15.debug.l |
# 00000027 6f 67 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | og .............. |
# 00000037 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................ |
# 00000047 00 00 00 00 9d fc 5c 43 13 38 0d 00 08 00 12 00 | ....... C.8 ...... |
# 00000057 04 04 04 04 12 00 00 4b 00 04 1a | ....... K ... |
# Inicio: binlog v 4, servidor v 5.0.15-debug-log creado 051024 17:24:13
# Al inicio
RETROCEDER;

La salida de volcado hexadecimal contiene actualmente los elementos de la siguiente lista. Este formato es
sujeto a cambios. (Para obtener más información sobre el formato de registro binario, consulte MySQL Internos: El
Binario Log[1].

· Posición: la posición del byte dentro del archivo de registro.

· Marca de tiempo: la marca de tiempo del evento. En el ejemplo que se muestra, '9d fc 5c 43' es el
representación de '051024 17:24:13' en hexadecimal.

· Tipo: el código del tipo de evento. En el ejemplo que se muestra, '0f' indica un
FORMAT_DESCRIPTION_EVENT. La siguiente tabla enumera los posibles códigos de tipo.

┌─────┬──────────────────────────┬───────────────── ──────────────────────┐
Tipo de PropiedadNombreSentido
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│00 │ UNKNOWN_EVENT │ Este evento nunca debería │
│ │ │ estar presente en el registro. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│01 │ START_EVENT_V3 │ Esto indica el inicio │
│ │ │ de un archivo de registro escrito por │
│ │ │ MySQL 4 o anterior. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│02 │ QUERY_EVENT │ El tipo más común de │
│ │ │ eventos. Estos contienen │
│ │ │ sentencias ejecutadas en │
│ │ │ el │
│ │ │ maestro. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│03 │ STOP_EVENT │ Indica que el maestro tiene │
│ │ │ se detuvo. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│04 │ ROTATE_EVENT │ Escrito cuando el maestro │
│ │ │ cambia a un nuevo archivo de registro. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│05 │ INTVAR_EVENT │ Usado para AUTO_INCREMENT │
│ │ │ valores o cuando el │
│ │ │ LAST_INSERT_ID () │
│ │ │ función │
│ │ │ se usa en la declaración. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│06 │ LOAD_EVENT │ Usado para LOAD DATA │
│ │ │ INFILE en MySQL │
│ │ │ 3.23. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│07 │ SLAVE_EVENT │ Reservado para uso futuro. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│08 │ CREATE_FILE_EVENT │ Usado para CARGAR DATOS │
│ │ │ ARCHIVO │
Declaraciones │ │ │. Esto indica el │
│ │ │ inicio de │
│ │ │ ejecución de tal declaración. A │
│ │ │ temporal │
│ │ │ se crea el archivo │
│ │ │ sobre el esclavo. Usado solo en MySQL 4. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│09 │ APPEND_BLOCK_EVENT │ Contiene datos para usar en un │
│ │ │ CARGAR DATOS │
│ │ │ ARCHIVO │
Declaración │ │ │. Los datos se almacenan en │
│ │ │ el temporal │
Archivo │ │ │ en el esclavo. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0a │ EXEC_LOAD_EVENT │ Usado para CARGAR DATOS │
│ │ │ ARCHIVO │
Declaraciones │ │ │. El contenido de la │
│ │ │ archivo temporal │
│ │ │ se almacena en la tabla del esclavo. │
│ │ │ Usado en MySQL 4 │
│ │ │ solamente. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0b │ DELETE_FILE_EVENT │ Rollback de un LOAD DATA │
│ │ │ ARCHIVO │
Declaración │ │ │. El archivo temporal │
│ │ │ debería ser │
│ │ │ eliminado en el esclavo. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0c │ NEW_LOAD_EVENT │ Usado para CARGAR DATOS │
│ │ │ INFILE en MySQL │
│ │ │ 4 y anteriores. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0d │ RAND_EVENT │ Se utiliza para enviar información sobre │
│ │ │ valores aleatorios si el │
│ │ │ Función RAND () │
│ │ │ es │
│ │ │ usado en el │
Declaración │ │ │. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0e │ USER_VAR_EVENT │ Se utiliza para replicar variables de usuario. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│0f │ FORMAT_DESCRIPTION_EVENT │ Esto indica el inicio de un registro │
Archivo │ │ │ escrito por MySQL 5 o posterior. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│10 │ XID_EVENT │ Evento que indica el compromiso de un XA │
│ │ │ transacción. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│11 │ BEGIN_LOAD_QUERY_EVENT │ Usado para CARGAR DATOS │
│ │ │ ARCHIVO │
Declaraciones │ │ │ en MySQL 5 y posteriores. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│12 │ EXECUTE_LOAD_QUERY_EVENT │ Usado para CARGAR DATOS │
│ │ │ ARCHIVO │
Declaraciones │ │ │ en MySQL 5 y posteriores. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│13 │ TABLE_MAP_EVENT │ Información sobre una tabla │
│ │ │ definición. Usado en MySQL 5.1.5 y │
│ │ │ más tarde. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│14 │ PRE_GA_WRITE_ROWS_EVENT │ Datos de fila para una sola tabla que │
Debería crearse │ │ │. Utilizado en MySQL │
│ │ │ 5.1.5 │
│ │ │ a 5.1.17. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│15 │ PRE_GA_UPDATE_ROWS_EVENT │ Datos de fila para una sola tabla que │
│ │ │ necesita actualizarse. Utilizado en MySQL │
│ │ │ 5.1.5 a 5.1.17. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│16 │ PRE_GA_DELETE_ROWS_EVENT │ Datos de fila para una sola tabla que │
│ │ │ debería eliminarse. Utilizado en MySQL │
│ │ │ 5.1.5 │
│ │ │ a 5.1.17. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│17 │ WRITE_ROWS_EVENT │ Datos de fila para una sola tabla que │
Debería crearse │ │ │. Utilizado en MySQL │
│ │ │ 5.1.18 │
│ │ │ y posteriores. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│18 │ UPDATE_ROWS_EVENT │ Datos de fila para una sola tabla que │
│ │ │ necesita actualizarse. Utilizado en MySQL │
│ │ │ 5.1.18 y │
│ │ │ más tarde. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│19 │ DELETE_ROWS_EVENT │ Datos de fila para una sola tabla que │
│ │ │ debería eliminarse. Utilizado en MySQL │
│ │ │ 5.1.18 │
│ │ │ y posteriores. │
├─────┼──────────────────────────┼───────────────── ──────────────────────┤
│1a │ INCIDENT_EVENT │ Algo fuera de lo común │
│ │ │ sucedió. Agregado en MySQL 5.1.18. │
└─────┴──────────────────────────┴───────────────── ──────────────────────┘

· ID de maestro: el ID de servidor del maestro que creó el evento.

· Tamaño: el tamaño en bytes del evento.

· Master Pos: la posición del siguiente evento en el archivo de registro maestro original.

· Banderas: 16 banderas. Actualmente, se utilizan las siguientes banderas. Los demás están reservados para
un uso futuro.

┌─────┬─────────────────────────────┬───────────── ───────────────────────────────────┐
DestacarNombreSentido
├─────┼─────────────────────────────┼───────────── ──────────────────────────────────┤
│01 │ LOG_EVENT_BINLOG_IN_USE_F │ Archivo de registro correctamente │
│ │ │ cerrado. (Usado solo en │
│ │ │ FORMATO_DESCRIPCIÓN_EVENTO.) │
│ │ │ Si │
│ │ │ esto │
La bandera │ │ │ está activada (si el │
Las banderas │ │ │ son, por ejemplo, │
│ │ │ '01 │
│ │ │ 00 ') en un │
│ │ │ FORMATO_DESCRIPCIÓN_EVENTO, │
│ │ │ el registro │
│ │ │ archivo │
│ │ │ no se ha realizado correctamente │
│ │ │ cerrado. Muy probablemente │
│ │ │ esto │
│ │ │ es por un maestro │
│ │ │ crash (por ejemplo, due │
│ │ │ a │
│ │ │ corte de energía). │
├─────┼─────────────────────────────┼───────────── ──────────────────────────────────┤
│02 │ │ Reservado para uso futuro. │
├─────┼─────────────────────────────┼───────────── ──────────────────────────────────┤
│04 │ LOG_EVENT_THREAD_SPECIFIC_F │ Establecer si el evento depende del │
│ │ │ conexión en la que se ejecutó (para │
│ │ │ ejemplo, '04 00 '), para │
│ │ │ ejemplo, │
│ │ │ si el evento usa │
│ │ │ tablas temporales. │
├─────┼─────────────────────────────┼───────────── ──────────────────────────────────┤
│08 │ LOG_EVENT_SUPPRESS_USE_F │ Establecer en algunas circunstancias cuando el evento es │
│ │ │ no depende del valor predeterminado │
│ │ │ base de datos. │
└─────┴─────────────────────────────┴───────────── ───────────────────────────────────┘

MYSQLBINLOG FILA EVENT DISPLAY


Los siguientes ejemplos ilustran cómo mysqlbinlog muestra eventos de fila que especifican datos
modificaciones. Estos corresponden a eventos con WRITE_ROWS_EVENT, UPDATE_ROWS_EVENT,
y códigos de tipo DELETE_ROWS_EVENT. El --base64-salida = DECODIFICAR-FILAS y --verboso opciones
puede usarse para afectar la salida de eventos de fila.

Suponga que el servidor está utilizando el registro binario basado en filas y que ejecuta el
siguiente secuencia de declaraciones:

CREAR TABLA t
(
id INT NO NULO,
nombre VARCHAR(20) NO NULO,
fecha FECHA NULO
) MOTOR = InnoDB;
INICIAR LA TRANSACCIÓN
INSERTAR EN t VALORES (1, 'manzana', NULO);
ACTUALIZAR t SET nombre = 'pera', fecha = '2009-01-01' DONDE id = 1;
BORRAR DE t DONDE id = 1;
COMPROMISO

De forma predeterminada, mysqlbinlog muestra eventos de fila codificados como cadenas de base 64 usando BINLOG
declaraciones. Omitiendo líneas extrañas, la salida de los eventos de fila producidos por el
La secuencia de instrucción anterior se ve así:

concha> mysqlbinlog archivo de registro
...
# en 218
# 080828 15:03:08 ID de servidor 1 end_log_pos 258 Write_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA // 8AQAAAAVhcHBsZQ ==
'/ *! * /;
...
# en 302
# 080828 15:03:08 ID de servidor 1 end_log_pos 356 Update_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA //// AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
'/ *! * /;
...
# en 400
# 080828 15:03:08 ID de servidor 1 end_log_pos 442 Delete_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA // 4AQAAAARwZWFyIbIP
'/ *! * /;

Para ver los eventos de fila como comentarios en forma de declaraciones "pseudo-SQL", ejecute mysqlbinlog
con el --verboso or -v opción. La salida contendrá líneas que comiencen con ###:

concha> mysqlbinlog -v archivo de registro
...
# en 218
# 080828 15:03:08 ID de servidor 1 end_log_pos 258 Write_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA // 8AQAAAAVhcHBsZQ ==
'/ *! * /;
### INSERTAR EN prueba.t
### COLOCAR
### @ 1 = 1
### @ 2 = 'manzana'
### @ 3 = NULL
...
# en 302
# 080828 15:03:08 ID de servidor 1 end_log_pos 356 Update_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA //// AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
'/ *! * /;
### ACTUALIZAR test.t
### DONDE
### @ 1 = 1
### @ 2 = 'manzana'
### @ 3 = NULL
### COLOCAR
### @ 1 = 1
### @ 2 = 'pera'
### @ 3 = '2009: 01: 01'
...
# en 400
# 080828 15:03:08 ID de servidor 1 end_log_pos 442 Delete_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA // 4AQAAAARwZWFyIbIP
'/ *! * /;
### ELIMINAR DE test.t
### DONDE
### @ 1 = 1
### @ 2 = 'pera'
### @ 3 = '2009: 01: 01'

Especificar --verboso or -v dos veces para mostrar también los tipos de datos y algunos metadatos para cada
columna. La salida contendrá un comentario adicional después de cada cambio de columna:

concha> mysqlbinlog -vv archivo de registro
...
# en 218
# 080828 15:03:08 ID de servidor 1 end_log_pos 258 Write_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAANoAAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBcBAAAAKAAAAAIBAAAQABEAAAAAAAEAA // 8AQAAAAVhcHBsZQ ==
'/ *! * /;
### INSERTAR EN prueba.t
### COLOCAR
### @ 1 = 1 / * INT meta = 0 anulable = 0 is_null = 0 * /
### @ 2 = 'manzana' / * VARSTRING(20) meta = 20 anulable = 0 is_null = 0 * /
### @ 3 = NULL / * VARSTRING(20) meta = 0 anulable = 1 is_null = 1 * /
...
# en 302
# 080828 15:03:08 ID de servidor 1 end_log_pos 356 Update_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAC4BAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBgBAAAANgAAAGQBAAAQABEAAAAAAAEAA //// AEAAAAFYXBwbGX4AQAAAARwZWFyIbIP
'/ *! * /;
### ACTUALIZAR test.t
### DONDE
### @ 1 = 1 / * INT meta = 0 anulable = 0 is_null = 0 * /
### @ 2 = 'manzana' / * VARSTRING(20) meta = 20 anulable = 0 is_null = 0 * /
### @ 3 = NULL / * VARSTRING(20) meta = 0 anulable = 1 is_null = 1 * /
### COLOCAR
### @ 1 = 1 / * INT meta = 0 anulable = 0 is_null = 0 * /
### @ 2 = 'pera' / * VARSTRING(20) meta = 20 anulable = 0 is_null = 0 * /
### @ 3 = '2009: 01: 01' / * DATE meta = 0 anulable = 1 is_null = 0 * /
...
# en 400
# 080828 15:03:08 ID de servidor 1 end_log_pos 442 Delete_rows: ID de tabla 17 banderas: STMT_END_F
BINLOG '
fAS3SBMBAAAALAAAAJABAAAAABEAAAAAAAAABHRlc3QAAXQAAwMPCgIUAAQ =
fAS3SBkBAAAAKgAAALoBAAAQABEAAAAAAAEAA // 4AQAAAARwZWFyIbIP
'/ *! * /;
### ELIMINAR DE test.t
### DONDE
### @ 1 = 1 / * INT meta = 0 anulable = 0 is_null = 0 * /
### @ 2 = 'pera' / * VARSTRING(20) meta = 20 anulable = 0 is_null = 0 * /
### @ 3 = '2009: 01: 01' / * DATE meta = 0 anulable = 1 is_null = 0 * /

Puedes decir mysqlbinlog para suprimir las sentencias BINLOG para eventos de fila utilizando el
--base64-salida = DECODIFICAR-FILAS opción. Esto es similar a --base64-output = NUNCA pero no
Salga con un error si se encuentra un evento de fila. La combinación de --base64-salida = DECODIFICAR-FILAS
y --verboso proporciona una forma conveniente de ver los eventos de fila solo como declaraciones SQL:

concha> mysqlbinlog -v --base64-salida = DECODIFICAR-FILAS archivo de registro
...
# en 218
# 080828 15:03:08 ID de servidor 1 end_log_pos 258 Write_rows: ID de tabla 17 banderas: STMT_END_F
### INSERTAR EN prueba.t
### COLOCAR
### @ 1 = 1
### @ 2 = 'manzana'
### @ 3 = NULL
...
# en 302
# 080828 15:03:08 ID de servidor 1 end_log_pos 356 Update_rows: ID de tabla 17 banderas: STMT_END_F
### ACTUALIZAR test.t
### DONDE
### @ 1 = 1
### @ 2 = 'manzana'
### @ 3 = NULL
### COLOCAR
### @ 1 = 1
### @ 2 = 'pera'
### @ 3 = '2009: 01: 01'
...
# en 400
# 080828 15:03:08 ID de servidor 1 end_log_pos 442 Delete_rows: ID de tabla 17 banderas: STMT_END_F
### ELIMINAR DE test.t
### DONDE
### @ 1 = 1
### @ 2 = 'pera'
### @ 3 = '2009: 01: 01'

Note
No debe suprimir las declaraciones BINLOG si tiene la intención de volver a ejecutar mysqlbinlog
salida.

Las sentencias SQL producidas por --verboso para los eventos de fila son mucho más legibles que los
correspondientes declaraciones BINLOG. Sin embargo, no se corresponden exactamente con el original.
Sentencias SQL que generaron los eventos. Se aplican las siguientes limitaciones:

· Los nombres de las columnas originales se pierden y se reemplazan por @N, Donde N es un número de columna.

· La información del juego de caracteres no está disponible en el registro binario, lo que afecta la cadena
visualización de columna:

· No se hace ninguna distinción entre la correspondiente cadena binaria y no binaria
tipos (BINARY y CHAR, VARBINARY y VARCHAR, BLOB y TEXT). La salida usa un
tipo de datos de STRING para cadenas de longitud fija y VARSTRING para longitud variable
instrumentos de cuerda.

· Para juegos de caracteres multibyte, el número máximo de bytes por carácter no es
presente en el registro binario, por lo que la longitud de los tipos de cadena se muestra en bytes
en lugar de personajes. Por ejemplo, CADENA(4) se utilizará como tipo de datos
para valores de cualquiera de estos tipos de columna:

CHAR(4) JUEGO DE CARACTERES latin1
CHAR(2) JUEGO DE CARACTERES ucs2

· Debido al formato de almacenamiento para eventos de tipo UPDATE_ROWS_EVENT, declaraciones UPDATE
se muestran con la cláusula WHERE que precede a la cláusula SET.

La interpretación adecuada de los eventos de fila requiere la información de la descripción del formato
evento al comienzo del registro binario. Porque mysqlbinlog no sabe de antemano
si el resto del registro contiene eventos de fila, de forma predeterminada muestra el formato
evento de descripción utilizando una instrucción BINLOG en la parte inicial de la salida.

Si se sabe que el registro binario no contiene ningún evento que requiera una declaración BINLOG (que
es, sin eventos de fila), el --base64-output = NUNCA La opción se puede utilizar para evitar este encabezado.
de ser escrito.

USO MYSQLBINLOG A VOLVER UP BINARIO LOG ARCHIVOS


De forma predeterminada, mysqlbinlog lee archivos de registro binarios y muestra su contenido en formato de texto.
Esto le permite examinar eventos dentro de los archivos más fácilmente y volver a ejecutarlos.
(por ejemplo, utilizando la salida como entrada para mysql). mysqlbinlog puede leer archivos de registro
directamente desde el sistema de archivos local, o, con el --leer-del-servidor-remoto opción, puede
conéctese a un servidor y solicite contenido de registro binario de ese servidor. mysqlbinlog escribe
salida de texto a su salida estándar, o al archivo nombrado como el valor de la
--result-file =file_name opción si se da esa opción.

A partir de MySQL 5.6, mysqlbinlog Puede leer archivos de registro binarios y escribir archivos nuevos que contengan el
mismo contenido, es decir, en formato binario en lugar de formato de texto. Esta capacidad permite
puede realizar fácilmente una copia de seguridad de un registro binario en su formato original. mysqlbinlog puede hacer una estática
copia de seguridad, haciendo una copia de seguridad de un conjunto de archivos de registro y deteniéndose cuando el final del último archivo es
alcanzado. También puede realizar una copia de seguridad continua ("en vivo"), permaneciendo conectado al servidor
cuando llega al final del último archivo de registro y continúa copiando nuevos eventos a medida que se
generado. En operación de respaldo continuo, mysqlbinlog se ejecuta hasta que finaliza la conexión (por
ejemplo, cuando el servidor sale) o mysqlbinlog se termina por la fuerza. Cuando la conexión
termina, mysqlbinlog no espera y vuelve a intentar la conexión, a diferencia de una replicación esclava
servidor. Para continuar con una copia de seguridad en vivo después de que se haya reiniciado el servidor, también debe
reanudar mysqlbinlog.

La copia de seguridad del registro binario requiere que invoque mysqlbinlog con dos opciones como mínimo:

· Los --leer-del-servidor-remoto (o -R) opción dice mysqlbinlog para conectarse a un servidor
y solicita su registro binario. (Esto es similar a un servidor de replicación esclavo que se conecta
a su servidor maestro.)

· Los --crudo la opción dice mysqlbinlog para escribir salida en bruto (binaria), no salida de texto.

Junto con --leer-del-servidor-remoto, es común especificar otras opciones: --anfitrión
indica dónde se está ejecutando el servidor y es posible que también deba especificar las opciones de conexión
como --usuario y --contraseña.

Varias otras opciones son útiles junto con --crudo:

· --no-nunca: Manténgase conectado al servidor después de llegar al final del último archivo de registro
y seguir leyendo nuevos eventos.

· --stop-never-slave-server-id =id: El ID del servidor que mysqlbinlog informes al servidor
cuando --no-nunca se utiliza. El valor predeterminado es 65535. Se puede utilizar para evitar un conflicto.
con la ID de un servidor esclavo u otro mysqlbinlog proceso. Vea la sección llamada
“ESPECIFICACIÓN DEL ID DE SERVIDOR MYSQLBINLOG”.

· --archivo de resultado: Un prefijo para los nombres de los archivos de salida, como se describe más adelante.

Para hacer una copia de seguridad de los archivos de registro binarios de un servidor con mysqlbinlog, debe especificar nombres de archivo que
existen realmente en el servidor. Si no conoce los nombres, conéctese al servidor y utilice
la instrucción SHOW BINARY LOGS para ver los nombres actuales. Suponga que el enunciado
produce esta salida:

mysql> ESPECTÁCULO BINARIO REGISTROS;
+ --------------- + ----------- +
| Log_name | Tamaño_de_archivo |
+ --------------- + ----------- +
| binlog.000130 | 27459 |
| binlog.000131 | 13719 |
| binlog.000132 | 43268 |
+ --------------- + ----------- +

Con esa información, puede utilizar mysqlbinlog para hacer una copia de seguridad del registro binario en el actual
directorio de la siguiente manera (ingrese cada comando en una sola línea):

· Para hacer una copia de seguridad estática de binlog.000130 a binlog.000132, use cualquiera de estos
comandos:

mysqlbinlog --read-from-remote-server --host =nombre_host --crudo
binlog.000130 binlog.000131 binlog.000132
mysqlbinlog --read-from-remote-server --host =nombre_host --crudo
--to-último-log binlog.000130

El primer comando especifica explícitamente cada nombre de archivo. El segundo nombre solo el
primer archivo y usos --to-último-registro para leer el último. Una diferencia entre estos
comandos es que si el servidor abre binlog.000133 antes mysqlbinlog
llega al final de binlog.000132, el primer comando no lo leerá, pero el segundo
voluntad de mando.

· Para hacer una copia de seguridad en vivo en la que mysqlbinlog comienza con binlog.000130 para copiar el existente
log, luego permanece conectado para copiar nuevos eventos a medida que el servidor los genera:

mysqlbinlog --read-from-remote-server --host =nombre_host --crudo
--stop-nunca binlog.000130

Con --no-nunca, no es necesario especificar --to-último-registro leer hasta el final
archivo de registro porque esa opción está implícita.
Nombre de archivo de salida.PP sin --crudo, mysqlbinlog produce salida de texto y el
--archivo de resultado La opción, si se proporciona, especifica el nombre del archivo único al que se
está escrito. Con --crudo, mysqlbinlog escribe un archivo de salida binario para cada archivo de registro
transferido desde el servidor. Por defecto, mysqlbinlog escribe los archivos en el actual
directorio con los mismos nombres que los archivos de registro originales. Para modificar los nombres de los archivos de salida,
utilizar el --archivo de resultado opción. En conjunto con --crudo, la --archivo de resultado el valor de la opción es
tratado como un prefijo que modifica los nombres de los archivos de salida.

Suponga que un servidor tiene actualmente archivos de registro binarios denominados binlog.000999 y superiores. Si tu
utilizan el mysqlbinlog --crudo para hacer una copia de seguridad de los archivos, --archivo de resultado la opción produce un archivo de salida
nombres como se muestra en la siguiente tabla. Puede escribir los archivos en un directorio específico por
comenzando el --archivo de resultado valor con la ruta del directorio. Si el --archivo de resultado propuesta de
consta solo de un nombre de directorio, el valor debe terminar con el separador de nombre de ruta
personaje. Los archivos de salida se sobrescriben si existen.

┌────────────────────┬─────────────────────────── ─┐
--archivo de resultado Opción │ Salida Archive nombres
├────────────────────┼─────────────────────────── ─┤
--archivo-resultado = x │ xbinlog.000999 y posteriores │
├────────────────────┼─────────────────────────── ─┤
--result-file =/ Tmp / │ /tmp/binlog.000999 y posteriores │
├────────────────────┼─────────────────────────── ─┤
--archivo-resultado = / tmp / x │ /tmp/xbinlog.000999 y posteriores │
└────────────────────┴─────────────────────────── ─┘
Ejemplo: mysqldump + mysqlbinlog para Backup and Restore.PP El siguiente ejemplo describe
un escenario simple que muestra cómo usar mysqldump y mysqlbinlog juntos para respaldar un
los datos del servidor y el registro binario, y cómo utilizar la copia de seguridad para restaurar el servidor en caso de pérdida de datos
ocurre. El ejemplo asume que el servidor se está ejecutando en el host. nombre_host y su primera
El archivo de registro binario se denomina binlog.000999. Ingrese cada comando en una sola línea.

Uso mysqlbinlog para hacer una copia de seguridad continua del registro binario:

mysqlbinlog --read-from-remote-server --host =nombre_host --crudo
--stop-nunca binlog.000999

Uso mysqldump para crear un archivo de volcado como instantánea de los datos del servidor. Usar
--todas las bases de datos, --eventosy --rutinas para hacer una copia de seguridad de todos los datos, y --master-data = 2 a
incluir las coordenadas del registro binario actual en el archivo de volcado.

mysqldump --host =nombre_host --todas las bases de datos --eventos --rutinas --master-data = 2> archivo_volcado

Ejecute el mysqldump comando periódicamente para crear nuevas instantáneas como desee.

Si se produce una pérdida de datos (por ejemplo, si el servidor falla), utilice el archivo de volcado más reciente para
restaurar los datos:

mysql --host =nombre_host -u raíz -p archivo_volcado

Luego use la copia de seguridad del registro binario para volver a ejecutar los eventos que se escribieron después de la
coordenadas enumeradas en el archivo de volcado. Supongamos que las coordenadas del archivo se parecen a
modo:

- CAMBIAR MAESTRO A MASTER_LOG_FILE = 'binlog.001002', MASTER_LOG_POS = 27284;

Si el archivo de registro de copia de seguridad más reciente se llama binlog.001004, vuelva a ejecutar los eventos de registro
Me gusta esto:

mysqlbinlog --start-position = 27284 binlog.001002 binlog.001003 binlog.001004
| mysql --host =nombre_host -u raíz -p

Puede que le resulte más fácil copiar los archivos de copia de seguridad (archivo de volcado y archivos de registro binarios)
host del servidor para que sea más fácil realizar la operación de restauración, o si MySQL no permite
acceso root remoto.

ESPECIFICANDO EL REINO UNIDO MYSQLBINLOG SERVIDOR ID


Cuando se invoca con el --leer-del-servidor-remoto opción, mysqlbinlog se conecta a un MySQL
servidor, especifica una ID de servidor para identificarse y solicita archivos de registro binarios del
servidor. Puedes usar mysqlbinlog para solicitar archivos de registro de un servidor de varias formas:

· Especifique un conjunto de archivos con nombre explícito: para cada archivo, mysqlbinlog conecta y
emite un comando de volcado de Binlog. El servidor envía el archivo y se desconecta. Hay uno
conexión por archivo.

· Especifique el archivo inicial y --to-último-registro: mysqlbinlog conecta y emite un Binlog
comando de volcado para todos los archivos. El servidor envía todos los archivos y se desconecta.

· Especifique el archivo inicial y --no-nunca (lo que implica --to-último-registro): mysqlbinlog
se conecta y emite un comando de volcado de Binlog para todos los archivos. El servidor envía todos los archivos,
pero no se desconecta después de enviar el último.

Con --leer-del-servidor-remoto solamente, mysqlbinlog se conecta utilizando un ID de servidor de 0, que
le dice al servidor que se desconecte después de enviar el último archivo de registro solicitado.

Con --leer-del-servidor-remoto y --no-nunca, mysqlbinlog se conecta usando un valor distinto de cero
ID del servidor, para que el servidor no se desconecte después de enviar el último archivo de registro. El servidor
El ID es 65535 por defecto, pero se puede cambiar con --stop-never-slave-servidor-id.

Por lo tanto, para las dos primeras formas de solicitar archivos, el servidor se desconecta porque
mysqlbinlog especifica un ID de servidor de 0. No se desconecta si --no-nunca es dado
porque mysqlbinlog especifica un ID de servidor distinto de cero.

DERECHOS DE AUTOR


Copyright © 1997, 2014, Oracle y / o sus filiales. Reservados todos los derechos.

Esta documentación es software gratuito; puedes redistribuirlo y / o modificarlo solo bajo
los términos de la Licencia Pública General GNU publicados por la Free Software Foundation;
versión 2 de la Licencia.

Esta documentación se distribuye con la esperanza de que sea útil, pero SIN NINGUNA
GARANTÍA; incluso sin la garantía implícita de COMERCIABILIDAD o APTITUD PARA UN PARTICULAR
OBJETIVO. Consulte la Licencia pública general de GNU para obtener más detalles.

Debería haber recibido una copia de la Licencia Pública General GNU junto con el programa;
si no es así, escriba a Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301 EE. UU. O consulte http://www.gnu.org/licenses/.

NOTAS


1. Componentes internos de MySQL: el registro binario
http://dev.mysql.com/doc/internals/en/binary-log.html

Use mysqlbinlog en línea usando los servicios de onworks.net


Servidores y estaciones de trabajo gratuitos

Descargar aplicaciones de Windows y Linux

  • 1
    Phaser
    Phaser
    Phaser es una apertura rápida, gratuita y divertida
    marco de juego HTML5 de origen que ofrece
    Representación de WebGL y Canvas en
    navegadores web de escritorio y móviles. Juegos
    puede ser co ...
    Descargar Phaser
  • 2
    Motor VASSAL
    Motor VASSAL
    VASSAL es un motor de juego para crear
    Versiones electrónicas de tablero tradicional.
    y juegos de cartas. Proporciona soporte para
    representación e interacción de las piezas del juego,
    y ...
    Descargar motor VASSAL
  • 3
    OpenPDF - Bifurcación de iText
    OpenPDF - Bifurcación de iText
    OpenPDF es una biblioteca de Java para crear
    y edición de archivos PDF con LGPL y
    Licencia MPL de código abierto. OpenPDF es el
    LGPL/MPL sucesor de código abierto de iText,
    un ...
    Descargar OpenPDF - Bifurcación de iText
  • 4
    SIG SAGA
    SIG SAGA
    SAGA - Sistema para automatizado
    Análisis geocientíficos - es un análisis geográfico
    Software del sistema de información (GIS) con
    inmensas capacidades para geodatos
    procesamiento y ana ...
    Descargar SIG SAGA
  • 5
    Caja de herramientas para Java / JTOpen
    Caja de herramientas para Java / JTOpen
    IBM Toolbox para Java / JTOpen es un
    biblioteca de clases de Java que soporta el
    programacion cliente/servidor e internet
    modelos a un sistema que ejecuta OS/400,
    i5/OS, o...
    Descargar Toolbox para Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (o D3 para documentos basados ​​en datos)
    es una biblioteca de JavaScript que le permite
    para producir datos dinámicos e interactivos
    visualizaciones en navegadores web. con D3
    tú...
    Descargar D3.js
  • Más "

Comandos de Linux

  • 1
    arbitro
    arbitro
    abidiff - comparar ABI de archivos ELF
    abidiff compara el binario de la aplicación
    Interfaces (ABI) de dos bibliotecas compartidas
    en formato ELF. emite un significado
    informar ...
    Ejecutar abidiff
  • 2
    cumplir
    cumplir
    abidw - serializa el ABI de un ELF
    archivo abidw lee una biblioteca compartida en ELF
    formato y emite una representación XML
    de su ABI a la salida estándar. El
    emitido...
    Ejecutar abidw
  • 3
    copac2xml
    copac2xml
    bibutils - conversión de bibliografía
    utilidades...
    Ejecutar copac2xml
  • 4
    copto
    copto
    copt - optimizador de mirilla SYSNOPIS:
    archivo copt.. DESCRIPCIÓN: copt es un archivo
    optimizador de mirilla de uso general. Él
    lee el código de su entrada estándar y
    escribe un...
    Ejecutar copia
  • 5
    reunir_stx_títulos
    reunir_stx_títulos
    reunir_stx_titles - recopilar título
    declaraciones de documentos Stx ...
    Ejecute reunir_stx_títulos
  • 6
    banco-gatling
    banco-gatling
    banco - punto de referencia http ...
    Ejecutar gatling-banco
  • Más "

Ad