为数据库设置多个服务名(通过SCOPE=both设置,同时修改参数文件)

 SQL> show parameter service_names;

 NAME                     TYPE     VALUE
 ------------------------------------ ----------- ------------------------------
 service_names                 string     vmdb

 SQL> alter system set service_names='vmdb,sn01,sn02' scope=both;

 System altered.

重启监听后,监听状态并未显示服务sn01,sn02

 [oracle@CentOS ~]$ lsnrctl stop

 LSNRCTL   ::

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

 Connecting )))
 The command completed successfully
 [oracle@CentOS ~]$ lsnrctl start

 LSNRCTL   ::

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

 Starting /dbhome_1/bin/tnslsnr: please wait...

 TNSLSNR  - Production
 System parameter /dbhome_1/network/admin/listener.ora
 Log messages written to /u01/app/oracle/diag/tnslsnr/CentOS/listener/alert/log.xml
 Listening )))

 Connecting )))
 STATUS of the LISTENER
 ------------------------
 Alias                     LISTENER
 Version                   TNSLSNR  - Production
 Start Date                 ::
 Uptime                     days  hr.   sec
 Trace Level               off
 Security                  ON: Local OS Authentication
 SNMP                      OFF
 Listener Parameter /dbhome_1/network/admin/listener.ora
 Listener Log File         /u01/app/oracle/diag/tnslsnr/CentOS/listener/alert/log.xml
 Listening Endpoints Summary...
   (DESCRIPTION)))
 Services Summary...
 Service "vmdb" has  instance(s).
   Instance "vmdb", status UNKNOWN, has  handler(s) for this service...
 The command completed successfully

通过另一台机器通过服务名sn01连接可以连接上:

 /sn01

 SQL Production  :: 

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

 ERROR:
 ORA: the password will expire within  days

 Connected to:
 Oracle  - 64bit Production
 With the Partitioning, OLAP, Data Mining and Real Application Testing options

 SQL> 

在数据库中可以查询v$session视图的service_name来判断会话是由通过哪个服务名连接创建的:

 SQL> col paddr format a20
 SQL
 SQL> col username format a15
 SQL> col service_name format a20
 SQL> Select paddr,Sid,serial#,username,service_name From v$session  Where username Is Not Null;

 PADDR              SID     SERIAL# USERNAME     SERVICE_NAME
 -------------------- -------- ---------- --------------- --------------------
 000000008DC95250                  SYS         SYS$USERS
 000000008DC98310                   TEST         vmdb
 000000008DC96290                  TEST         sn01
 000000008DC99350                  TEST         vmdb

重启数据库:

 SQL> shutdown immediate;
 Database closed.
 Database dismounted.
 ORACLE instance shut down.
 SQL> startup
 ORACLE instance started.

 Total System Global Area   bytes
 Fixed Size             bytes
 Variable Size           bytes
  bytes
 Redo Buffers             bytes
 Database mounted.
 Database opened.

再次查看监听,sn01,sn02服务名显示出来了:

 [oracle@CentOS ~]$ lsnrctl status

 LSNRCTL   ::

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

 Connecting )))
 STATUS of the LISTENER
 ------------------------
 Alias                     LISTENER
 Version                   TNSLSNR  - Production
 Start Date                 ::
 Uptime                     days  hr.   sec
 Trace Level               off
 Security                  ON: Local OS Authentication
 SNMP                      OFF
 Listener Parameter /dbhome_1/network/admin/listener.ora
 Listener Log File         /u01/app/oracle/diag/tnslsnr/CentOS/listener/alert/log.xml
 Listening Endpoints Summary...
   (DESCRIPTION)))
 Services Summary...
 Service "sn01" has  instance(s).
   Instance "vmdb", status READY, has  handler(s) for this service...
 Service "sn02" has  instance(s).
   Instance "vmdb", status READY, has  handler(s) for this service...
 Service "vmdb" has  instance(s).
   Instance "vmdb", status UNKNOWN, has  handler(s) for this service...
   Instance "vmdb", status READY, has  handler(s) for this service...
 Service "vmdbXDB" has  instance(s).
   Instance "vmdb", status READY, has  handler(s) for this service...
 The command completed successfully

但是监听配置文件里不会自动增加服务名sn01,sn02:

 /dbhome_1/network/admin/listener.ora
 # listener.ora Network Configuration /dbhome_1/network/admin/listener.ora
 # Generated by Oracle configuration tools.

 SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
       (GLOBAL_DBNAME = vmdb)
       (ORACLE_HOME /dbhome_1)
       (SID_NAME = vmdb)
     )
   )

 LISTENER =
   (DESCRIPTION =
     (ADDRESS ))
   )

 ADR_BASE_LISTENER = /u01/app/oracle

oracle相同SID对外提供多个service_names的更多相关文章

  1. oracle DBID,SID,DB_NAME,DB_DOMAIN,INSTANCE_NAME,DB_UNIQUE_NAME, SERVICE_NAMES 及监听参数的说明

    DBID,SID,DB_NAME,DB_DOMAIN,INSTANCE_NAME,DB_UNIQUE_NAME, SERVICE_NAMES 及监听参数的说明 DB 相关的: DBID, SIDPFI ...

  2. System.TypeInitializationException: The type initializer for 'Oracle.DataAccess.Client.OracleConnection' threw an exception. ---> Oracle.DataAccess.Client.OracleException: 提供程序与此版本的 Oracle 客户机不兼容”

    .net应用程序通过Oracle.DataAccess.dll访问64位的Oracle服务器,在连接时出现以下异常:“System.TypeInitializationException: The t ...

  3. 使用WCF对外提供接口

    本篇将通过WCF以webservices的方式对外提供接口.同时使用NUnit对webservices中的方法进行单元测试. 开发契约 contract Contract项目为类库项目,该项目下会包含 ...

  4. ORA-00214: controlfile '/u01/app/oracle/oradata/[sid]/control01.ctl' version inconsistent with file '/u01/app/oracle/oradata/[sid]/control03.ctl'

    Sample error: SQL> startupORACLE instance started. Total System Global Area 285212672 bytesFixed ...

  5. grpc-gateway:grpc对外提供http服务的解决方案

    我所在公司的项目是采用基于Restful的微服务架构,随着微服务之间的沟通越来越频繁,就希望可以做成用rpc来做内部的通讯,对外依然用Restful.于是就想到了google的grpc. 使用grpc ...

  6. springboot+CXF开发webservice对外提供接口(转)

    文章来源:http://www.leftso.com/blog/144.html 1.项目要对外提供接口,用webservcie的方式实现 2.添加的jar包 maven: <dependenc ...

  7. zookeeper集群,每个服务器上的数据是相同的,每一个服务器均可以对外提供读和写的服务,这点和redis是相同的,即对客户端来讲每个服务器都是平等的。

    zookeeper集群,每个服务器上的数据是相同的,每一个服务器均可以对外提供读和写的服务,这点和redis是相同的,即对客户端来讲每个服务器都是平等的.

  8. 九、frp对外提供简单的文件访问服务

    通过 static_file 插件可以对外提供一个简单的基于 HTTP 的文件访问服务.类似于http的文件索引! 服务端frps.ini配置[common]bind_addr = 0.0.0.0bi ...

  9. 开发FTP服务接口,对外提供接口服务

    注意:本文只适合小文本文件的上传下载,因为post请求是有大小限制的.默认大小是2m,虽然具体数值可以调节,但不适合做大文件的传输 最近公司有这么个需求:以后所有的项目开发中需要使用ftp服务器的地方 ...

随机推荐

  1. 转:20分钟教你使用hexo搭建github博客

    注册Github账号 这里我们就不多讲了,小伙伴们可以点击这里,进入官网进行注册. 创建仓库 图片来自Github 登录账号后,在Github页面的右上方选择New repository进行仓库的创建 ...

  2. Oracle总结【PLSQL学习】

    PLSQL介绍 PLSQL是Oracle对SQL99的一种扩展,基本每一种数据库都会对SQL进行扩展,Oracle对SQL的扩展就叫做PLSQL... SQL99是什么 (1)是操作所有关系型数据库的 ...

  3. linux dns搭建

    DNS:域名解析(Domain Nmae System)正向解析:根据主机名称(域名)查找其对应的ip地址,这是最基本,最常用的功能反向解析:根据ip地址查找其对应的主机名称(域名),反垃圾邮件/安全 ...

  4. 使用xfire搭建webService服务

    后边有个项目需要接入4A,要用到webService服务,暂时还不确定是不是会有我的事,但为了有备无患,还是抽时间学习了以下相关的知识. 本来我所了解到的发布webService服务有用cxf和xfi ...

  5. FusionCharts Marimekko图

    1.Marimekko静态页面 Marimekko.html: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//E ...

  6. Linux显示一个二进制文件或可执行文件的完整路径

    Linux显示一个二进制文件或可执行文件的完整路径 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ which halt /sbin/halt

  7. Python Web-第二周-正则表达式(Using Python to Access Web Data)

    0.课程地址与说明 1.课程地址:https://www.coursera.org/learn/python-network-data/home/welcome 2.课程全名:Using Python ...

  8. 为Android Studio中的SettingsActivity定制任务栏

    Android Studio为开发者提供了很多内建的Activity, 其中Settings Activity是非常有用且功能强大的一种内建Activity. Setting Activity其实本质 ...

  9. [BZOJ4292] [PA2015] Równanie

    Description 对于一个正整数n,定义f(n)为它十进制下每一位数字的平方的和.现在给定三个正整数k,a,b,请求出满足a<=n<=b且k*f(n)=n的n的个数. Input 第 ...

  10. awk多分隔符功能及wc命令案列及企业级应用

    打印最后一行行号: cat -n /etc/services|tail -1 awk '{print NR $0}' oldboy.txt|tail -1 awk '{print NR $0}' /e ...