1. Oracle产品安装完成后,服务器和客户端都需要进行网络配置才能实现网络连接。
2. 服务器端配置监听器,客户端配置网络服务名。
tnsnames.ora 位于oracle的客户端,listener.ora 位于oracle的服务端
1.如果通过网络(TCP/IP协议)访问数据库服务器,至少要启...TNSListener和OracleServiceXE服务。
2. 如果本地即Oracle11g客户端和服务端位于同一台计算机上(不是通过TCP/IP协议)访问数据库服务器,至少要启动OracleServiceXE服务。(XE位数据库名)。
3.Oracle的启动和关闭方式:
三、Oracle11g的连接
sqlplus命令:
Ø 命令 : sqlplus hb/[email protected] 用“@xe”表示通过tcp/ip协议访问,"xe"为服务名。此方式一定会通过服务器端的监听 ,所以必须启动监听程序。
Ø 命令 : sqlplus hb/hb(本地访问)如果客户端和服务端位于同一计算机,可以不启动监听,也能连接,因为此链接不需要通过tcp/ip协议。
注意:通过第三方登录(如:PLSql)必须启动监听
连接方式:(可以在sqlnet.ora中配置)
1,简单连接:类似conn hb/[email protected]:1521/XE的连接方式,不需要客户端进行任何配置。
(注:其中“a84p1l1x02meo8p”为数据库服务端计算机名,也可以为ip地址。"XE"为数据库名)
2,本地命名:类似conn hb/[email protected]的连接方式,需要客户端配置一个本地命名解析文件,为$ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora文件,可以直接进入文件位置,也可以使用netca配置。
(注:其中“xe”为服务名,用netca进入可视界面配置,不易出错)服务名:服务名就是连接字符串(不区分大小写),可以通过它访问远程数据库,可以通过NETCA配置,配置时要指明远程数据库的主机名,网络协议用TCP/IP,配置完成后可以用如 下方式登陆:(以服务名为xe) username/[email protected],也就是:是对数据库的一个标识,通过服务名可访问数据库 。
测试服务能否连接上:tnsping <服务名>
loracle11g中进行网络配置的主要文件有三个,位于:$ORACLE_HOME\NETWORK\ADMIN下的sqlnet.ora、listener.ora、tnsnames.ora文件(Windows和Linux位置一样)
(本人的$ORACLE_HOME为:$ORACLE_HOME=D:\Java\oraclexe\app\oracle\product\10.2.0\server)
b.netca命令进入NetConfiguration Assistan界面配置:
1.用netca命令或在Oracle11g的配置和移植工具中打开NetConfiguration Assistan界面
选择【命名方法配置】-【下一步】
2.选定命名“本地命名”和“轻松连接命名”
b.netca命令进入NetConfiguration Assistan界面配置:
1. 选择【本地网络服务名配置】-【下一步】
2.【添加】-【下一步】
3.配置数据库名-【下一步】
4.选择“TCP/IP”协议-【下一步】
5.配置数据所在主机名或ip地址和端口号-【下一步】
6.选择【是,进行测试】,是否能连接数据库
7.显示未连上,点击【更改登录】,重新设置数据库用户名和密码
8.用户名和密码修改为数据库中的用户名和密码登录【确定】
9.连接成功-【下一步】
10.配置服务名-【下一步】
11.选择【否】,不需要配置另一个服务名
12.配置成功!
看数据库名和服务名是否是同名可以用daca命令打开数据库配置助手的可视界面配置
a.文件中配置:
1.注册就是将数据库作为一个服务注册到监听程序,在数据
库服务器启动过程中,数据库服务器会向监听程序注册相应的
服务 。
在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)
)
)
,就是静态注册。
2.在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。
(两个address表示两个监听,第一个监听调用外部过程,例如C语言,C++,Java等处理复杂的任务。第二个是监听主机数据库)
3。配置静态注册可以用Net Manager可以界面工具来配置
b.netca命令进入NetConfiguration Assistan界面配置动态注册:
选择【本地网络服务名配置】-然后一直【下一步】就可以了
使用lsnrctl status查看某个服务是静态注册、还是动态注
册;如果是UNKNOWN,表示静态注册;如果是READY,表
示动态注册。
READY的服务是由PMON进程动态的注册到监听器,因此
PMON进程所在的数据库一定处于打开状态,所以说这些服务
名所对应的实例已经准备好(READY)接受用户的连接请求。
UNKNOWN的服务是通过编辑listener.ora而静态注册的服
务名,监听器并不知道该服务名对应的实例是否打开了,所以
用UNKNOWN表示。
动态注册、静态注册可以根据需要进行转换。