Compartir a través de


Configuración de un publicador de Oracle

Las publicaciones de publicadores de Oracle se crean de la misma manera que se crean publicaciones transaccionales y instantáneas típicas, pero antes de crear una publicación a partir de un publicador de Oracle, debe completar los pasos siguientes (los pasos uno, tres y cuatro se describen en detalle en este tema).

  1. Cree un usuario administrativo de replicación dentro de la base de datos de Oracle mediante el script proporcionado.

  2. Para las tablas que va a publicar, conceda el permiso SELECT directamente en cada uno de ellos (no a través de un rol) al usuario administrativo de Oracle que creó en el paso uno.

  3. Instale el software cliente de Oracle y el proveedor OLE DB en el distribuidor de Microsoft SQL Server y, a continuación, detenga y reinicie la instancia de SQL Server. Si el distribuidor se ejecuta en una plataforma de 64 bits, debe usar la versión de 64 bits del proveedor OLE DB de Oracle.

  4. Configure la base de datos de Oracle como publicador en el distribuidor de SQL Server.

Para obtener una lista de objetos que se pueden replicar desde una base de datos de Oracle, consulte Consideraciones de diseño y limitaciones para publicadores de Oracle.

Nota:

Debe ser miembro del rol fijo de servidor sysadmin para habilitar un publicador o distribuidor y crear una publicación de Oracle o una suscripción a partir de una publicación de Oracle.

Creación del esquema de usuario administrativo de replicación en la base de datos de Oracle

Los agentes de replicación se conectan a la base de datos de Oracle y realizan operaciones en el contexto de un esquema de usuario que debe crear. Este esquema necesita una serie de permisos, que se enumeran en la sección siguiente. Este esquema posee todos los objetos creados por el proceso de replicación de Microsoft SQL Server en el publicador de Oracle, a excepción de un sinónimo público, MSSQLSERVERDISTRIBUTOR. Para obtener más información sobre los objetos creados en la base de datos de Oracle, vea Objetos creados en el publicador de Oracle.

Nota:

Al quitar el sinónimo público de MSSQLSERVERDISTRIBUTOR y el usuario de replicación de Oracle configurado con la opción CASCADE se quitan todos los objetos de replicación del publicador de Oracle.

Se ha proporcionado un script de ejemplo para ayudar en la configuración del esquema de usuario de replicación de Oracle. El script está disponible en el siguiente directorio después de la instalación de SQL Server: <Unidad>:\\Archivos de Programas\Microsoft SQL Server\<InstanceName>\MSSQL\Install\oracleadmin.sql. También se incluye en el tema Script para conceder permisos de Oracle.

Conéctese a la base de datos de Oracle mediante una cuenta con privilegios de DBA y ejecute el script. Este script solicita el usuario y la contraseña para el esquema de usuario administrativo de replicación, así como el espacio de tablas predeterminado en el que se crean los objetos (el espacio de tablas ya debe existir en la base de datos de Oracle). Para obtener información sobre cómo especificar otros espacios de tablas para objetos, consulte Administración de espacios de tablas de Oracle. Elija cualquier nombre de usuario y contraseña segura, pero anote ambos porque se le pedirá esta información más adelante cuando configure la base de datos de Oracle como publicador. Se recomienda usar el esquema solo para los objetos requeridos por la replicación; no cree tablas que se publicarán en este esquema.

Crear manualmente el esquema de usuario

Si crea manualmente el esquema de usuario administrativo de replicación, debe conceder al esquema los permisos siguientes, ya sea directamente o a través de un rol de base de datos.

  • CREATE PUBLIC SYNONYM y DROP PUBLIC SYNONYM

  • CREAR PROCEDIMIENTO

  • CREAR SECUENCIA

  • CREAR SESIÓN

También debe conceder los siguientes permisos al usuario directamente (no a través de un rol):

  • CREE CUALQUIER DESENCADENADOR. Esto es necesario solo tanto para la replicación de instantáneas como para la replicación transaccional.

  • CREAR TABLA

  • CREAR VISTA

Instalación y configuración del software de redes de cliente de Oracle en el distribuidor de SQL Server

Debe instalar y configurar el software de red cliente de Oracle y el proveedor OLE DB de Oracle en el distribuidor de SQL Server para que el distribuidor pueda realizar conexiones con el publicador de Oracle. Después de instalar el software, establezca los permisos adecuados en las carpetas en las que está instalado el software y, a continuación, detenga y reinicie la instancia de SQL Server para asegurarse de que se actualicen todas las configuraciones (los permisos se describen más adelante, en la sección "Establecer permisos de directorio").

Nota:

El software de red cliente de Oracle debe ser la versión más reciente disponible. Oracle recomienda que los usuarios instalen las versiones más recientes del software cliente. Por lo tanto, el software cliente suele ser una versión más reciente que el software de base de datos.

La manera más sencilla de instalar y configurar el software de red de cliente es usar el Instalador universal de Oracle y net Configuration Assistant en el disco cliente de Oracle.

En el Instalador universal de Oracle, proporcionará la siguiente información:

Información Descripción
Oracle Home Esta es la ruta de acceso al directorio de instalación del software de Oracle. Acepte el valor predeterminado (C:\oracle\ora90 o similar) o escriba otra ruta de acceso. Para obtener más información sobre Oracle Home, consulte la sección "Consideraciones para Oracle Home" más adelante en este tema.
Nombre principal de Oracle Alias para la ruta de acceso principal de Oracle.
Tipo de instalación En Oracle 10g, seleccione la opción Instalación de administrador .

Después de completar el Instalador Universal de Oracle, use el Asistente de Configuración de Red para configurar la conectividad de red. Debe proporcionar cuatro fragmentos de información para configurar la conectividad de red. El administrador de bases de datos de Oracle configura la configuración de red al configurar la base de datos y el agente de escucha y debe poder proporcionar esta información si no la tiene. Haga lo siguiente:

Acción Descripción
Identificación de la base de datos Hay dos métodos para identificar la base de datos. El primer método usa el identificador del sistema (SID) de Oracle y está disponible en cada versión de Oracle. El segundo método usa el nombre del servicio, que está disponible a partir de la versión 8.0 de Oracle. Ambos métodos usan un valor que se configura cuando se crea la base de datos y es importante que la configuración de red del cliente use el mismo método de nomenclatura que el administrador usó al configurar el agente de escucha para la base de datos.
Identificación de un alias de red para la base de datos Debe especificar un alias de red, que se usa para acceder a la base de datos de Oracle. También se proporciona este alias al identificar la base de datos de Oracle como publicador en el distribuidor de SQL Server. El alias de red es básicamente un puntero al SID remoto o al nombre del servicio que se configuró cuando se creó la base de datos; se ha mencionado por varios nombres en diferentes versiones y productos de Oracle, como Net Service Name y TNS Alias. SQL*Plus solicita este alias como el parámetro "Cadena de host" al iniciar sesión.
Selección del protocolo de red Seleccione los protocolos adecuados que desea admitir. La mayoría de las aplicaciones usan TCP.
Especifica la información del host para identificar el agente de escucha de la base de datos El host es el nombre o alias DNS del equipo en el que se ejecuta el agente de escucha de Oracle, que suele ser el mismo equipo en el que reside la base de datos. Para algunos protocolos, debe proporcionar información adicional. Por ejemplo, si selecciona TCP, debe proporcionar el puerto en el que el agente de escucha está escuchando las solicitudes de conexión a la base de datos de destino. La configuración de TCP predeterminada usa el puerto 1521.

Establecer permisos de directorio

La cuenta con la que se ejecuta el servicio SQL Server en el distribuidor debe tener permisos de lectura y ejecución para el directorio (y todos los subdirectorios) en el que está instalado el software de red de cliente de Oracle.

Probar la conectividad entre el distribuidor de SQL Server y el publicador de Oracle

Cerca del final del Asistente para configuración de Net puede haber una opción para probar la conexión al publicador de Oracle. Antes de probar la conexión, asegúrese de que la instancia de base de datos de Oracle esté en línea y de que se esté ejecutando el agente de escucha de Oracle. Si la prueba no se realiza correctamente, póngase en contacto con el DBA de Oracle responsable de la base de datos a la que intenta conectarse.

Después de establecer una conexión exitosa con el publicador de Oracle, intente iniciar sesión en la base de datos utilizando la cuenta y la contraseña asociadas con el esquema del usuario administrativo de replicación que creó. Debe realizarse lo siguiente mientras se ejecuta en la misma cuenta de Windows que usa el servicio SQL Server:

  1. Haga clic en Inicio y luego en Ejecutar.

  2. Escriba cmd y haga clic en Aceptar.

  3. En el símbolo del sistema, escriba:

    sqlplus <UserSchemaLogin>/<UserSchemaPassword>@<NetServiceName>

    Por ejemplo: sqlplus replication/$tr0ngPasswerd@Oracle90Server

  4. Si la configuración de red se realizó correctamente, el inicio de sesión se completará con éxito y verá un indicador SQL.

  5. Si tiene problemas para conectarse a la base de datos de Oracle, consulte la sección "El distribuidor de SQL Server no se puede conectar a la instancia de base de datos de Oracle" en Solución de problemas de publicadores de Oracle.

Consideraciones para Oracle Home

Oracle admite la instalación simultánea de archivos binarios de aplicaciones, pero solo se puede utilizar un conjunto de archivos binarios por la replicación a la vez. Cada conjunto de archivos binarios está asociado a oracle Home; los archivos binarios están en el directorio %ORACLE_HOME%\bin. Debe asegurarse de que el conjunto correcto de archivos binarios (específicamente la versión más reciente del software de red cliente) se usa cuando la replicación realiza conexiones con el publicador de Oracle.

Inicie sesión en el distribuidor con las cuentas usadas por el servicio SQL Server y el servicio Agente SQL Server y establezca las variables de entorno adecuadas. La variable %ORACLE_HOME% debe establecerse para hacer referencia al punto de instalación que especificó al instalar el software de red cliente. El %PATH% debe incluir el directorio %ORACLE_HOME% \bin como la primera entrada de Oracle que se encuentra. Para obtener información sobre cómo establecer variables de entorno, consulte la documentación de Windows.

Configuración de la base de datos de Oracle como publicador en el distribuidor de SQL Server

Los publicadores de Oracle siempre usan un distribuidor remoto; Debe configurar una instancia de SQL Server para que actúe como distribuidor para el publicador de Oracle (un publicador de Oracle solo puede usar un distribuidor, pero un único distribuidor puede atender a más de un publicador de Oracle). Una vez configurado un distribuidor, identifique la instancia de base de datos de Oracle como publicador en el distribuidor de SQL Server a través de SQL Server Management Studio, Transact-SQL o Replication Management Objects (RMO). Para obtener más información sobre cómo configurar un distribuidor, vea Configurar distribución.

Nota:

Un publicador de Oracle no puede tener el mismo nombre que su distribuidor de SQL Server o el mismo nombre que cualquiera de los publicadores de SQL Server que usen el mismo distribuidor.

Al identificar la base de datos de Oracle como publicador, debe elegir una opción de publicación de Oracle: Complete o Oracle Gateway. Una vez identificado un publicador, esta opción no se puede cambiar sin quitar ni volver a configurar el publicador. La opción Completar está diseñada para proporcionar publicaciones transaccionales y de instantáneas con el conjunto completo de características admitidas para la publicación de Oracle. La opción Puerta de enlace de Oracle proporciona optimizaciones de diseño específicas para mejorar el rendimiento en los casos en los que la replicación actúa como puerta de enlace entre sistemas.

Una vez identificado el publicador de Oracle en el distribuidor de SQL Server, la replicación crea un servidor vinculado con el mismo nombre que el nombre del servicio TNS de la base de datos de Oracle. Este servidor vinculado solo puede ser usado por la replicación. Si necesita conectarse al publicador de Oracle a través de una conexión de servidor vinculado, cree otro nombre de servicio TNS y, a continuación, use este nombre al llamar a sp_addlinkedserver (Transact-SQL).

Para configurar un publicador de Oracle y crear una publicación, consulte Creación de una publicación a partir de una base de datos de Oracle.

Véase también

Consideraciones administrativas para publicadores de Oracle
Asignación de tipos de datos para publicadores de Oracle
Glosario de términos para la publicación de Oracle
Información general sobre la publicación de Oracle