ORACLE--网络管理

 

1.专有连接
用户连接有专门的进程进行相应
user ----server process

2.共享连接 []
用户连接数据库时,没有服务进程相应,而将用户的信息放到调度里,而调度放到队列[队列]中
uesr ----dispater --[SAG] ----server ------data buffer ------|


3.监听程序工作原理
用户进程跟服务器能不能连接主要是去问我们的监听
客户端程序------tnsnames.ora/本地命名解析文件
1.sqlplus sys/oracle@updb as sysdba //远程连接
b.去客户端验证用户名密码
c.通过服务器连接实例
2.sqlplus sys/oracle@ip:1521/service_names as sysdba

服务器端程序listener.ora
1.静态注册
将实例名/服务名写到了监听文件中
SID_DESC (实例名/服务名 oracle家目录 ....)


2.动态注册
由pmon 进程去动态注册 ,进程会每分钟扫描一次数据库的状态,有库打开就立马告诉监听该数据库需要被监听

alter system register; //手动注册,pmon也是去执行这条命令


lsnrctl status //查看监听状态
lsnrctl stop //停掉我们的监听
ready : 动态注册
unknow: 静态注册

项目中一般使用静态监听,可以保证用户时时可以连接
一个数据库中只使用一个listener.ora
一个监听可以监听一个数据库,也可监听多个数据库
一个监听程序可以被多个实例监听 ----集群
监听的默认端口为:1521

4.如何配置监听
在grid 目录下面执行 netca 创建出来的为动态的监听 图形界面创建 ,监听文件会放到/opt/u01/grid/11g/nerwork/admin/listener.ora ,在哪个文件下面执行就会创建到相应的文件目录下

add-->listener-->ipc--->1521--->no-->

$netca

173845_XqOa_2918364.png

第一个选项是直接建一个服务器端的监听

图形界面建好后,会在路径/opt/u01/oracle/11g/network/admin 下会生成一个listener.ora文件,记录我们服务端的信息

vim listener.ora

# listener.ora Network Configuration File: /opt/u01/oracle/11g/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER1 =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = up12.up.com)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCPS)(HOST = up12.up.com)(PORT = 2484))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

ADR_BASE_LISTENER1 = /opt/u01/oracle

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER1=ON             # line added by Agent

 

第二个选项是建一个客户到我们要连接的服务器的解析,方便我们连接远端的服务器

也会在/opt/u01/oracle/11g/network/admin 路径下生成一个客户端的tnsnames.ora文件

vim tnsnames.ora    //记录了我们要访问的远端数据库的信息

# tnsnames.ora Network Configuration File: /opt/u01/oracle/11g/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.132)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl.wangzilong)
    )
  )

 


netmgr 创建出来的为 静态的监听

# listener.ora Network Configuration File: /opt/u01/oracle/11g/network/admin/listener.ora
# Generated by Oracle configuration tools.

LISTENER1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = IPC)(KEY = LISTENER))
  )

ENABLE_GLOBAL_DYNAMIC_ENDPOINT_LISTENER1 = ON

SID_LIST_LISTENER1 =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = maxdb)
      (ORACLE_HOME = /opt/u01/oracle/11g)
      (SID_NAME = maxdb)
    )
  )

ADR_BASE_LISTENER1 = /opt/u01/oracle




静态注册,监听两个库

lsnrctl141553_0qqK_2918364.png

有参数的修改,必须重启监听
lsnrctl stop
lsnrctl start
tnsname.ora

5.监听程序的管理

11g以前 : lsnrtcl start

            lsnrctl status

            lsnrctl stop

            lsnrctl reload

11g 以后---

srvctl start listener  //只能启动监听名字为listener的监听

srvctl start listener -l listener1 //启动名字为listener1的监听

srvctl add listener -l listener1  //监听没有在grid文件里,加入到grid文件里进行管理

srvctl remove listener

lsnrctl start

 

show parameter service_name //查看服务名,如果为updba.com 一般走的专有连接

SQL> show parameter service_name

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
service_names			     string	 maxdb.up.com

select service_name ,username,server from  v$session //service 为dedicated 表示是专有连接

                                         shared 是sys用户的共享连接,none是普通用户的共享连接

SQL> show parameter disp    //dispatchers表示共享连接的服务用的是maxdbXDB

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
cell_offload_plan_display	     string	 AUTO
dispatchers			     string	 (PROTOCOL=TCP) (SERVICE=maxdbX
						 DB)
max_dispatchers 		     integer
SQL> 

vim /opt/u01/oracle/11g/network/admin/tnsnames.ora  //编辑客户端中存在的,数据库解析

增加server

144555_WoKt_2918364.png

查看网络是否通畅,用

tsping updb

tnsping updb

转载于:https://my.oschina.net/liubaizi/blog/803221

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值