Es posible que la transmisión tenga errores durante el tiempo de ejecución.
- Algunos errores, como una contraseña incorrecta en la base de datos de origen, se pueden recuperar, lo que significa que se pueden corregir y que la transmisión se reanuda automáticamente.
- Los errores pueden afectar a un solo objeto, como un evento que contiene tipos de datos no admitidos. Otros errores pueden afectar varios objetos o toda la transmisión, como cuando Datastream no puede conectarse a la base de datos de origen.
- Según el error, la información se proporciona en las páginas Transmisiones o Detalles de la transmisión de la IU de Datastream. También puedes usar las APIs de Datastream para recuperar información sobre el error.
Para solucionar un error, navega al flujo para verlo y sigue los pasos que se indican en el mensaje de error.
Esta página contiene información sobre errores de configuración, conectividad, Oracle y MySQL, junto con pasos para solucionarlos.
Errores de configuración y conectividad
Error | Pasos para solucionar problemas |
---|---|
Falla en la conexión a la base de datos de origen (genérica). | Esto puede suceder por varios motivos. Para solucionar este error, realiza las siguientes acciones:
La transmisión se reanuda automáticamente. |
Falla en la conexión a la base de datos de origen (lista de IP permitidas). | Esto puede suceder si el método de conectividad elegido es lista de IP permitidas, pero una o más de las direcciones IP de salida de Datastream no se agregan de forma correcta a la base de datos de origen. Asegúrate de que las direcciones IP salientes que se muestran en el perfil de conexión de Datastream estén configuradas en el firewall de red para que el servidor de la base de datos de origen pueda aceptar conexiones de estas direcciones IP. Una vez corregido esto, la transmisión se reanuda automáticamente. |
Falla en la conexión a la base de datos de origen (túnel SSH de reenvío). | Esto puede suceder si hay un problema con el túnel SSH de reenvío. Verifica el estado del túnel. Si el túnel está detenido, se debe iniciar. Una vez corregido esto, la transmisión se reanuda automáticamente. |
Datastream no puede conectarse a un host de bastión a través de un túnel SSH de reenvío. | Verifica que la configuración del túnel SSH de reenvío sea la correcta en el perfil de conexión de origen y que el puerto esté abierto en el servidor de túnel SSH. |
Falla en la conexión a la base de datos de origen debido a certificados incorrectos. | Esto puede ocurrir si hay un problema con los certificados proporcionados cuando se define el perfil de conexión de origen. Navega a la página Perfiles de conexión y, luego, selecciona el perfil de conexión determinado. Verifica que los certificados estén configurados de forma correcta. Después de realizar los cambios, guarda el perfil de conexión y la transmisión se reanuda automáticamente. |
Falla en el uso de la conectividad privada para conectarse a la base de datos de origen. |
|
No se permite el tipo de conectividad STATIC_SERVICE_IP_CONNECTIVITY mientras esté activada la política de la organización constraints/datastream.disablePublicConnectivity. | Seleccionaste los métodos de conectividad de red de lista de IP públicas permitidas o túnel SSH de reenvío para el perfil de conexión que estás creando. Sin embargo, la política de la organización Bloquear los métodos de conectividad pública para Datastream está habilitada. Por lo tanto, no puedes seleccionar métodos de conectividad pública para tu perfil de conexión. Para resolver este problema, selecciona el método de conectividad de red privada Intercambio de tráfico entre VPC o inhabilita la política de la organización. Para inhabilitar la política de la organización, haz lo siguiente:
|
Cuando configuro la base de datos de origen para mi transmisión, no encuentro las tablas y los esquemas que quiero transferir en la lista de objetos que se incluyen. | Esto puede suceder si tu base de datos tiene miles de tablas y esquemas. Es posible que algunos de ellos no se incluyan en la lista de objetos que se extraen cuando se configura la fuente de la transmisión en la consola de Google Cloud. En lugar de seleccionar Esquemas y tablas específicos en la sección Selecciona objetos para incluir, selecciona Personalizado. En el campo Criterios de coincidencia de objetos, ingresa los esquemas y las tablas que deseas que Datastream extraiga. |
Agregué varias tablas a mi transmisión con el menú Objetos para incluir. Sin embargo, cuando miro la pestaña Objetos en Detalles del flujo, veo que faltan algunas tablas. | Asegúrate de que haya, al menos, una actualización de CDC en cada una de estas tablas para que Datastream pueda reconocer los cambios y, luego, incluir automáticamente las tablas en el flujo. |
No se pudo cargar la lista de objetos cuando se usa el menú Objetos para incluir en la consola de Google Cloud. | Esto puede ocurrir si tu base de datos tiene más de 5,000 esquemas y tablas. Usa un método diferente para especificar qué objetos incluir o usa la API de Datastream. Para obtener más información, consulta Configura bases de datos de origen. |
Eventos que se descartaron durante la transmisión y que no se replicaron en el destino | Es posible que Datastream descarte eventos no compatibles durante la transmisión. Puedes realizar las siguientes acciones para solucionar el problema:
|
Errores de Oracle
Error | Pasos para solucionar problemas |
---|---|
El registro complementario está configurado de forma incorrecta en la base de datos de origen. | Si la configuración de registro complementaria no es correcta en la base de datos de origen, puede ocurrir un error de recuperación de datos de captura de datos modificados (CDC) en curso. Verifica que el registro complementario esté configurado de forma correcta. Específicamente, confirma que el registro complementario esté activado para las tablas de la base de datos que se transmiten desde la fuente al destino. La transmisión se reanuda automáticamente. |
No se puede reanudar la replicación porque se perdió la posición del registro. | Este error puede ocurrir cuando el proceso de replicación se pausa durante mucho tiempo, lo que hace que se pierda la posición del registro. Las transmisiones no deben detenerse durante períodos que se acerquen al período de retención de registros. Vuelve a crear la transmisión. |
Faltan los archivos de registro, ya sea de forma parcial o total. | Es posible que se hayan borrado los archivos de registro. Oracle borra los archivos de registro lo antes posible, a menos que especifiques un período de rotación mínimo para mantenerlos.
En el servidor de Oracle, establece durante cuánto tiempo se deben conservar los archivos de registro. Por ejemplo, usa Para una implementación de RDS, usa |
La lista de exclusión incluye la lista de inclusión. | Toda la lista de inclusión se encuentra en la lista de exclusión, por lo que la lista de objetos que Datastream extrae de la fuente está vacía. Modifica la selección de objetos y vuelve a intentarlo. |
El modo de registro de la base de datos de Oracle no está configurado en ARCHIVELOG. | Cambia el modo de registro y, luego, vuelve a intentarlo. |
Datastream muestra un mensaje de error ORA-00942: table or view does not exist , pero todo está configurado correctamente. |
Esto puede deberse a la caché del servidor de Oracle. Si vuelves a crear el usuario de la base de datos, se debería solucionar el problema de almacenamiento en caché. |
Los cambios en una fuente de Oracle no se reflejan en el destino cuando la transmisión ya está en ejecución. | Como Datastream lee archivos de registro de rehacer archivados, los cambios que realices en la fuente no se reflejarán en el destino hasta que se archive el registro. Para ver los cambios en el destino, cambia la política de archivo de registro o aplica manualmente un cambio de registro. Para obtener más información, consulta Cómo trabajar con archivos de registro de rehacer de la base de datos de Oracle. |
Se produjo un error interno inesperado. | Para obtener más información, comunícate con Atención al cliente de Google. |
Errores de MySQL
Error | Pasos para solucionar problemas |
---|---|
El registro binario está configurado de forma incorrecta en la base de datos de origen. | Esto puede ocurrir en transmisiones continuas de MySQL si la configuración del registro binario es incorrecta en la base de datos de origen. Para solucionar este error, realiza las siguientes acciones:
|
No se pudo reanudar la replicación porque se perdió la posición del registro binario. | Este error puede ocurrir cuando el proceso de replicación se pausa durante mucho tiempo, lo que hace que se pierda la posición del registro binario. Las transmisiones no deben detenerse durante períodos que se acerquen al período de retención de los registros binarios. Vuelve a crear la transmisión. |
Falla en la ejecución de la transmisión debido a la incompatibilidad de versiones de la base de datos de origen y el destino. | Esto puede ocurrir cuando la base de datos de origen no cumple con la matriz de compatibilidad de versiones. Para solucionar este error, realiza las siguientes acciones:
|
Faltan los registros binarios de la fuente de AWS RDS MySQL, ya sea de forma parcial o total. | Es posible que se hayan borrado los registros binarios. AWS RDS borra los registros binarios lo antes posible, a menos que especifiques un período de rotación mínimo para mantenerlos.
En la instancia de MySQL de AWS RDS de origen,
establece durante cuánto tiempo, en horas, se deben retener los registros binarios. Por ejemplo, usa mysql.rds_set_configuration('binlog retention hours', 168); para mantener los registros binarios durante al menos 7 días. |
La lista de exclusión incluye la lista de inclusión. | Toda la lista de inclusión se encuentra en la lista de exclusión, por lo que la lista de objetos que Datastream extrae de la fuente está vacía. Modifica la selección de objetos y vuelve a intentarlo. |
Datastream no puede replicar una base de datos de MySQL. | Asegúrate de que Datastream tenga permisos para replicar la base de datos. |
Cuando creas un perfil de conexión para una fuente de MySQL, no se aceptan varios certificados SSL codificados en PEM en el menú Tipo de encriptación. | Datastream no admite cadenas de certificados SSL en los perfiles de conexión de MySQL. Solo se admiten certificados individuales con codificación PEM x509. |
Latencia alta cuando se transmite desde una fuente de MySQL. | Aumenta la capacidad de Datastream para leer desde la base de datos de origen:
|
No se pudo validar la configuración de los CDC de MySQL. | Tu base de datos de origen no se configuró para el método de CDC que seleccionaste. Selecciona otro método o completa la configuración de tu método de CDC. Para obtener más detalles, consulta Configura una base de datos de MySQL de origen. |
Se produjo un error interno inesperado. | Para obtener más información, comunícate con Atención al cliente de Google. |
Errores de PostgreSQL
Error | Pasos para solucionar problemas |
---|---|
La decodificación lógica está configurada de forma incorrecta en la base de datos de origen. | Verifica que la decodificación lógica esté configurada de forma correcta. Consulta Cómo configurar una base de datos de PostgreSQL de origen. |
El espacio de replicación no existe. | Si el espacio de replicación no existe en la base de datos, puede ocurrir un error de recuperación de datos de captura de datos modificados (CDC) en curso. Verifica que el espacio de replicación esté configurado correctamente. Consulta Cómo configurar una base de datos de PostgreSQL de origen. |
El espacio de replicación está configurado con un complemento incorrecto. | Este error puede ocurrir si el espacio de replicación está configurado con un complemento diferente de pgoutput . Verifica que el espacio de replicación esté configurado correctamente. Consulta Base de datos de PostgreSQL de origen para obtener más información. |
El espacio de replicación está activo en otro proceso. | Este error puede ocurrir cuando otro proceso usa el espacio de replicación. Solo un proceso puede usar los espacios de replicación a la vez. Asegúrate de no usar la misma ranura de replicación en ningún otro proceso, excepto en Datastream. |
La publicación no está configurada correctamente. | Este error puede ocurrir cuando la publicación no está configurada para exponer las tablas que se incluyen en la configuración del flujo. Verifica que la publicación esté configurada correctamente. Consulta Configura la información sobre la base de datos de origen de la transmisión. |
La publicación no existe. | Este error puede ocurrir si la publicación no existe en la base de datos. Verifica que la publicación esté configurada correctamente. Consulta Cómo configurar una base de datos de PostgreSQL de origen. |
No se puede reanudar la replicación porque se perdieron los archivos WAL. | Este error puede ocurrir cuando el proceso de replicación se pausa durante un período prolongado, lo que hace que se pierdan los archivos WAL. Las transmisiones no deben detenerse durante períodos que se acerquen al período de retención de los archivos WAL. Vuelve a crear la transmisión. |
La lista de exclusión incluye la lista de inclusión. | Toda la lista de inclusión se encuentra en la lista de exclusión, por lo que la lista de objetos que Datastream extrae de la fuente está vacía. Modifica la selección de objetos y vuelve a intentarlo. |
Datastream no puede replicar un esquema de PostgreSQL. | Asegúrate de que Datastream tenga permisos para replicar el esquema. |
Las transacciones grandes en la base de datos de origen causan problemas con la replicación y sincronización de datos. | Si insertas, actualizas o borras una cantidad significativa de registros en la base de datos de origen, es posible que el espacio de replicación se sobrecargue con los eventos correspondientes. Datastream necesita tiempo para leer y procesar estos eventos. Debido a que los ranuras de replicación de PostgreSQL son de subproceso único, el procesamiento de otros cambios en el ranura de replicación, incluidos los cambios en los datos de otras tablas, se retrasa hasta que Datastream se pone al día con todos los cambios en el ranura de replicación. |
Las transacciones grandes en la base de datos de origen causan una baja capacidad de procesamiento del CDC. | Datastream no admite la CDC de varios subprocesos en PostgreSQL. Para superar esta limitación y aumentar la capacidad de procesamiento de CDC, puedes dividir la fuente en varias transmisiones, cada una con su propio espacio de publicación y replicación. Por ejemplo, puedes crear un flujo para la tabla más grande de tu base de datos y otro para todas las demás, o bien un flujo para tus tablas de prioridad alta y otro para las restantes. Los casos de uso pueden variar, por lo que debes considerar lo que tiene más sentido en tu situación específica de CDC. Para obtener información sobre cómo crear una publicación, consulta Configura una base de datos de PostgreSQL de origen. |
Se descartaron los eventos no admitidos con el código de motivo: BIGQUERY_TOO_MANY_PRIMARY_KEYS . |
Cuando la identidad de réplica de PostgreSQL de una tabla se establece en FULL , Datastream trata todas las columnas de esta tabla como claves primarias. Si hay más de 16 columnas en la tabla, se incumple la limitación de CDC de BigQuery y se genera el error. Para resolver el problema, completa los siguientes pasos:
|
Se produjo un error interno inesperado. | Para obtener más información, comunícate con Atención al cliente de Google. |
Errores de SQL Server
Error | Pasos para solucionar problemas |
---|---|
Las CDC están inhabilitadas para la base de datos DATABASE_NAME. | Se debe habilitar la captura de datos modificados (CDC) para la base de datos. Datastream necesita acceso de lectura directo a los registros de transacciones para replicar los cambios en tiempo real en la base de datos de origen y obtener información de registro completa. Habilita la CDC para la base de datos y vuelve a intentarlo. Para obtener información sobre cómo habilitar la CDC para una base de datos, consulta Cómo configurar una base de datos de SQL Server de origen. |
Tablas con CDC inhabilitadas | La captura de datos modificados (CDC) debe estar habilitada para todas las tablas incluidas en el flujo. Datastream necesita acceso de lectura directo a los registros de transacciones para replicar los cambios en tiempo real en las tablas de origen y obtener información de registro completa. Habilita la CDC para las tablas incluidas en el flujo y vuelve a intentarlo. Para obtener información sobre cómo habilitar la CDC para las tablas de origen, consulta Configura una base de datos de SQL Server de origen. |
Faltan permisos. | A Datastream le faltan los permisos necesarios para leer desde la fuente. Otorga los privilegios adecuados a la cuenta de usuario que se usa para conectarse a tu base de datos y vuelve a intentarlo. |
No se admite la edición EDITION_NAME de SQL Server. | Datastream no es compatible con esta edición de SQL Server. Para obtener más información sobre las ediciones compatibles de SQL Server, consulta Descripción general de SQL Server como fuente. |
No se admite la versión VERSION_NAME de SQL Server de la edición Standard. | Datastream no admite esta versión de la edición estándar de SQL Server. Para obtener más información sobre las versiones compatibles de SQL Server, consulta Descripción general de SQL Server como fuente. |
Configuración de las CDC de SQL Server: No se pudo realizar. | El método de CDC que seleccionaste no cumple con la configuración de tu base de datos. Cambia el método de CDC y vuelve a intentarlo. |
Errores de BigQuery
Error | Pasos para solucionar problemas |
---|---|
BIGQUERY_UNSUPPORTED_PRIMARY_KEY_CHANGE, details: Failed to write to BigQuery due to an unsupported primary key change: adding primary keys to existing tables is not supported. |
Si la clave primaria cambia en la fuente, debes descartar la tabla en BigQuery y volver a iniciar el reabastecimiento. Esta es una limitación de BigQuery, ya que no hay forma de garantizar la combinación correcta de eventos nuevos con filas existentes si la clave primaria es diferente. Para obtener más información, consulta Configura un destino de BigQuery. |
La tabla de BigQuery de destino tiene muchos más registros que la tabla de origen. | Esto puede suceder cuando la tabla de origen no tiene una clave primaria. En ese caso, Datastream procesa la tabla en el modo de escritura de solo anexar, y cada evento de una fila determinada aparece como una fila independiente en BigQuery. |
Los datos se duplican cuando se realiza el reabastecimiento en el modo de escritura Solo agregar. | Cuando seleccionas el modo de escritura Solo concatenación para tu flujo, tus datos se agregan en BigQuery como un flujo de eventos SELECT * FROM (SELECT *, row_number() OVER (PARTITION BY datastream_metadata.uuid) AS num FROM TABLE_NAME) WHERE num=1
|
Datastream está configurado para el modo de escritura de combinación, pero los cambios no se combinan en BigQuery. | Verifica que haya una clave primaria en tu tabla de origen. BigQuery lo necesita para combinar los cambios en la tabla de destino. Si no hay una clave primaria, considera agregar una en la tabla de origen o de destino. Para agregar una clave primaria a tu tabla de BigQuery de destino, sigue estos pasos:
|
No se puede agregar una clave primaria, quitar una clave primaria ni cambiar la definición de una clave primaria para una tabla que ya se replicó en BigQuery. | De forma predeterminada, Datastream no admite agregar una clave primaria a una tabla que ya se replicó en BigQuery sin una clave primaria ni quitar una clave primaria de una tabla que se replicó en BigQuery con una clave primaria. Sin embargo, puedes cambiar la definición de la clave primaria de una tabla de origen replicada en BigQuery que ya tiene una clave primaria:
|
¿Qué sigue?
- Para obtener información sobre cómo buscar posibles problemas con tu transmisión, consulta Cómo solucionar problemas de una transmisión.
- Para obtener información sobre cómo configurar tu base de datos de origen, consulta Fuentes.
- Para obtener información sobre cómo configurar tu destino de BigQuery o Cloud Storage, consulta Destinos.