这段时间在做命名服务和监听服务,做异构数据库迁移,从SQL server 2005中到Oracle 10gR2中。对命名服务和监听服务有了了解;
命名服务:conn sys/oracle@orcl as sysdba 这里的Orcl就是命名服务,他告诉我们是访问那一个服务器。具体服务器ip地址和端口在可以配置。
监听服务:就是提供数据库服务的服务器监听,开放服务的地址和端口。
一般如果是:提供远程服务的话,必须填写本机远程ip,如(192.168.2.9)等等。同时在命名服务中也要填写远程ip地址:(192.168.2.9)
监听:就是专门负责接收客户端对数据库的访问,监听接受到请求时经过判断后转发给数据库
这样才可以通过:本地conn sys/oracle@orcl 访问远程的服务器中的oracle
还有一种是使用命令:tnsping orcl 这样才可以看看是否可以使用。
如果出现:
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.46)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = orcl)))OK(90毫秒)
启动监听:
在通过:cd:E:\oracle\product\10.2.0\db_1\BIN\LSNRCTL.EXE
启动:start orcl 停止:stop orcl
oracle管理中:
svrmgrl通常用来启动、关闭数据库实例。
而lsnrcel则用来管理监听器,比如重新启动监听器,查看其状态
Oracle Net服务名
一般没有安装Oracle客户端或者是Oracle数据库软件的电脑,使用PL/SQL是无法连接Oracle数据库的。但可以使用以下方法连接远程的Oracle:
PLSQL Developer中在数据库名称换成以下即可
(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.2.9)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))
在sqlplus中则是:
conn sys/oracle@'(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.1.46)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl)))'
需要在信息中增加两个单引号。
动态地建立与远程数据库的连接的应用中,这是一种很有效的方法.