Oracle 11g-网络配置
当我们安装完Oracle了,需要进行网络连接,此时当然需要两样东西:服务器和客户端。通过对二者的配置我们方可实现网络连接。那,平时我们是怎样访问数据库服务器的呢?主要是两种方式:
1.通过网络【tcp/ip】访问,那么至少要启动OracleOraDb11g_home1TNSListener和OracleServiceORCL服务。【监听是针对该种情况】
Example:sqlplus scott/scott@orcl
2.通过本地访问,至少启动OracleServiceORCl服务。
Examp:sqlplus scott/scott
客户端和服务器主要任务:【如下图】
客户端的网络服务名配置信息包括服务器地址、监听端口号和数据库SID等,与服务器的监听器建立连接。配置信息保存在名为tnsnames.ora的文件中
文件内容大概如下:其中ORCL就是服务名
备注:服务名就是连接的字符串,可以通过它来访问远程数据库,简单理解就是服务名就是对数据库的一个标识,通过服务名可以访问数据库。
服务器配置:可以通过netca工具配置。配置时指明远程数据库的主机名,网络协议用TCP/IP,配置完成后的登陆方式(以服务名为test为例):sqlplus username/password@test 测试服务是否连接上:tnsping 服务名
服务器端监听器配置信息包括监听协议、地址及其他相关信息。配置信息保存在名为listener.ora的文件中。在安装服务器软件时自动配置一个监听器。文件部分如下:
q服务器端监听控制:lsnrctl start|stop| status
q图形界面配置监听:netca
q编辑文件方式配置监听:listener.ora文件
在Oracle11g中,进行网络配置的文件除了listener.ora和tnsnames.ora外,还有一个是sqlnet.orl。该文件部分内容如下:
不知道大家有没有发现,我们可以通过语句sqlplus /as sysdba直接登录数据库而不需要输入任何密码,这并不是不安全,而是oracle的一种机制。如图NTS参数代表了我们可以这样做,如果将NTS改成NONE的话,我们会发现无法登录到数据库系统中。这个是该文件的第一个知识点。
第二个知识点就是第二句话了,EZONNECT是简单连接的意思,类似:conn scott/scott@计算机名:1521/orcl 是不需要在客户端进行任何配置的。
至于TNSNAMES就是本地命名的方式,类似conn scott/scott@oracl的连接方式,需要客户单配置一个本地命名解析文件,就是tbsnames.ora,可用netca配置。
以上就是sqlnet.ora文件的内容。
静态注册和动态注册【静态监听和动态监听】
注册,就是将数据库作为一个服务注册到监听程序,在数据库服务器启动过程,数据库服务器会向监听程序注册对应的服务。
在listener.ora中,如果有类似
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = Orcl)
(ORACLE_HOME = D:\app\Administrator\product\11.1.0\db_1)
(SID_NAME = ORCL)
)
)
,就是静态注册
在listener.ora中,如果有类似
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = a84p1l1x02meo8p)(PORT = 1521))
)
),就是动态注册。
动态注册的一个特点就是不需要LISTENER.ORA文件。默
认情况PMON 向LSNRCTL 注册TCP/IP协议,PORT 为1521。
使用lsnrctl status查看某个服务是静态注册、还是动态注
册;如果是UNKNOWN,表示静态注册;如果是READY,表
示动态注册。
READY的服务是由PMON进程动态的注册到监听器,因此
PMON进程所在的数据库一定处于打开状态,所以说这些服务
名所对应的实例已经准备好(READY)接受用户的连接请求。
UNKNOWN的服务是通过编辑listener.ora而静态注册的服
务名,监听器并不知道该服务名对应的实例是否打开了,所以
用UNKNOWN表示。
动态注册、静态注册可以根据需要进行转换。
最后一点,就是配置工具:
1.使用Net Configuration Assistant配置网络连接,
界面操作,不易出错,实际上还是修改的listener.ora
和tnsnames.ora文件。
2.NETCA中进行命名方法配置,实际是修改
sqlnet.ora文件中的内容
3.使用Net Manager配置静态注册