Inicio Foros Bases de datos Oracle Error ORA-01017 al crear DBLINK en Apex de Oracle

Viendo 2 entradas - de la 1 a la 2 (de un total de 2)
  • Autor
    Entradas
  • #1168
    Varios
    Moderador

    Hola, tengo un servidor con Oracle 11g y Linux Red Hat, es el servidor de base de datos de producción. Por otro lado tengo un servidor con Oracle 9g y Apex sobre Linux Fedora. Lo que quiero es crear un DBLINK en el de Apex (Oracle 10g) para conectar con el de producción (Oracle 11g).

    Si creo el DBLINK en SQLPLUS del servidor Oracle 9g con APEX, usando este código SQL:

    Lo cree en SQL Developer y lo pruebo con:

    select 1 from dual@BDEXTERNA

    y me devuelve «1» como que enlaza de forma correcta.

    Pero en Apex no me aparece este DBLINK y si lo creo desde Apex, siguiendo vuestro tutorial:

    Conectar APEX con una base de datos Oracle Database 9i externa

    Al probarlo me aparece este error:

    Prueba errónea de enlace de base de datos.
    ORA-01017: invalid username/password; logon denied ORA-02063: line precediendo a USUEXTERNO

    La contraseña y el usuario están correctos, el usuario USUEXTERNO tiene permisos como indicáis en el tutorial anterior ¿qué puede estar pasando?

    #1170
    alonsojpd
    Superadministrador

    En Apex de la versión 9g, al crear un DBLINK puedes tener problemas con la contraseña, es mejor que la establezcas con «IDENTIFIED BY VALUES». Como desde el asistente de Apex para crear enlace a base de datos externo (DB LINK) no tienes la opción de cambiar el SQL, tendrás que ejecutar la siguiente sentencia desde «Comandos SQL» – «Introducir comando»:

    Teniendo en cuenta que la contraseña de «VALUES», «XXX» tendrás que sustituirla por el hash de la contraseña que genera Oracle tendrás que obtenerlo de alguna forma.

    Una opción para obtener este valor de la contraseña generado por Oracle es la siguiente:

    1. Crea un database link desde SQL Developer como el que has creado anteriormente o incluso si ya lo tienes creado explora en SQL Developer, en los objetos «Enlaces de Base de Datos». Selecciona el que tengas creado y dale con el botón derecho del ratón a «Editar».
    2. En la pestaña DLL de la ventana de edición del DBLINK marca «Crear» y verás que te muestra el SQL de creación del DBLINK con el IDENTIFIED BY VALUES ‘………’, copia el hash de la contraseña y pégalo en la consulta SQL de creación del DBLINK desde Apex.

    Crear DBLINK en Oracle SQL Developer

    Con esto debería funcionarte correctamente.

Viendo 2 entradas - de la 1 a la 2 (de un total de 2)
  • Debes estar registrado para responder a este debate.