gpt4 book ai didi

docker - 如何使用SQL Developer在Docker中调试Oracle 11g软件包/过程?

转载 作者:行者123 更新时间:2023-12-02 19:56:25 24 4
gpt4 key购买 nike

我在Docker容器上运行Oracle 11g镜像(https://hub.docker.com/r/oracleinanutshell/oracle-xe-11g)。

我正在使用debug选项创建容器,如下所述:

docker run --name oracle-xe-11g -idt -p 1521:1521 -p 49161:8080 -e ORACLE_ALLOW_REMOTE=true oracleinanutshell/oracle-xe-11g /bin/bash

之后,我以sudo身份登录容器,并使用正确的主机名配置了listener.ora,所有内容均遵循本指南(位于pt-Br中,但命令易于理解)

http://loredata.com.br/2017/08/31/rodando-o-oracle-no-docker/

我可以与SQL Developer以及在Wildfly服务器中运行的主应用程序连接,但是出于支持目的,我需要调试一些程序包和存储过程。

我编译了所有程序包和过程以允许进行调试,并向用户授予了调试权限,但是当我尝试使用SQL Developer默认调试选项对程序包中的过程进行调试时,出现以下错误:
Conectando ao banco de dados SFW_DOCKER.
Executando PL/SQL: ALTER SESSION SET PLSQL_DEBUG=TRUE
Executando PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( '127.0.0.1', '20587' )
ORA-30683: falha ao estabelecer conexão com o depurador
ORA-12541: TNS:não há listener
ORA-06512: em "SYS.DBMS_DEBUG_JDWP", line 68
ORA-06512: em line 1
Processo encerrado.
Desconectando do banco de dados SFW_DOCKER.

它说没有监听器,但我确定一切运行正常。

我还尝试在端口4000-4999中运行,并在create container命令中将其暴露出来,并强制SQL Developer使用它们,但出现相同的错误。

任何人都可以帮助我解决这个问题吗?

最佳答案

解决尝试:

  • 从本地计算机使用IPv4
  • 将“调试端口范围”设置为4000至4000
  • 选中选项“提示调试器主机进行数据库调试”

  • SQL开发人员->工具->首选项->调试程序

    Debugger configuration

    关于docker - 如何使用SQL Developer在Docker中调试Oracle 11g软件包/过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57612083/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com