暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

监听程序不支持服务

原创 jieguo 2023-07-03
1409

多租户环境有时候监听无法注册服务:监听程序不支持服务

image.png

[oracle@ora01 ~]$ sqlplus jyc/jyc@jycdb

SQL*Plus: Release 19.0.0.0.0 - Production on 星期五 6月 30 15:28:30 2023
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

ERROR:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务


请输入用户名:  ^C
[oracle@ora01 ~]$ tnsping jycdb

TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 30-6月 -2023 15:28:46

Copyright (c) 1997, 2019, Oracle.  All rights reserved.

已使用的参数文件:


已使用 TNSNAMES 适配器来解析别名
尝试连接 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ora01)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = jycdb)))
OK (0 毫秒)
[oracle@ora01 ~]$ lsnrctl status

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 30-6月 -2023 14:38:36

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora01)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 19.0.0.0.0 - Production
启动日期                  25-6月 -2023 13:33:17
正常运行时间              5 天 1 小时 5 分 19 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/ora01/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora01)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
监听程序不支持服务
命令执行成功
[oracle@ora01 ~]$ lsnrctl status

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 30-6月 -2023 14:40:18

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora01)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 19.0.0.0.0 - Production
启动日期                  25-6月 -2023 13:33:17
正常运行时间              5 天 1 小时 7 分 1 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/ora01/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora01)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
监听程序不支持服务
命令执行成功
[oracle@ora01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on 星期五 6月 30 14:40:24 2023
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.


连接到: 
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> alter system register;

系统已更改。

SQL> /

系统已更改。

SQL> exit
从 Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0 断开
[oracle@ora01 ~]$ lsnrctl status

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 30-6月 -2023 14:40:42

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora01)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 19.0.0.0.0 - Production
启动日期                  25-6月 -2023 13:33:17
正常运行时间              5 天 1 小时 7 分 24 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/ora01/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora01)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
监听程序不支持服务
命令执行成功

处理办法:实例和pdb设置成静态监听:

[oracle@ora01 ~]$ lsnrctl status

LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 30-6月 -2023 15:43:14

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ora01)(PORT=1521)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for Linux: Version 19.0.0.0.0 - Production
启动日期                  30-6月 -2023 15:33:07
正常运行时间              0 天 0 小时 10 分 6 秒
跟踪级别                  off
安全性                    ON: Local OS Authentication
SNMP                      OFF
监听程序参数文件          /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
监听程序日志文件          /u01/app/oracle/diag/tnslsnr/ora01/listener/alert/log.xml
监听端点概要...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ora01)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
服务摘要..
服务 "jyc" 包含 1 个实例。
  实例 "jyc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "jycdb" 包含 1 个实例。
  实例 "jyc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
[oracle@ora01 ~]$ cat /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/19.3.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ora01)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = jyc)
      (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db_1)
      (SID_NAME = jyc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = jycdb)
      (ORACLE_HOME = /u01/app/oracle/product/19.3.0/db_1)
      (SID_NAME = jyc)
    )
  )
[oracle@ora01 ~]$ sqlplus / as sysdba

SQL*Plus: Release 19.0.0.0.0 - Production on 星期五 6月 30 15:43:40 2023
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.


连接到: 
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 JYCDB                          READ WRITE NO
SQL> show parameter name;

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
cdb_cluster_name                     string
cell_offloadgroup_name               string
db_file_name_convert                 string
db_name                              string      jyc
db_unique_name                       string      jyc
global_names                         boolean     FALSE
instance_name                        string      jyc
lock_name_space                      string
log_file_name_convert                string
pdb_file_name_convert                string
processor_group_name                 string

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
service_names                        string      jyc
SQL> 
[oracle@ora01 ~]$ sqlplus jyc/jyc@jycdb

SQL*Plus: Release 19.0.0.0.0 - Production on 星期五 6月 30 15:33:24 2023
Version 19.3.0.0.0

Copyright (c) 1982, 2019, Oracle.  All rights reserved.

上次成功登录时间: 星期四 6月  29 2023 16:18:58 +08:00

连接到: 
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

SQL> select * from j;

        ID NAME
---------- --------------------
         9 b
         1 aaa
         2 aaa
         6 aaa
         8 aaa
         3 ccc
         4 ok
         5 ok

已选择 8 行。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论