Oracle客户端的网络服务名配置文件,用于存放该客户端配置的可连接实例的参数。
Tnsnames.ora——这个文件类似于unix 的hosts文件,提供的tnsname到主机名或者ip的对应,只有当sqlnet.ora中类似
NAMES.DIRECTORY_PATH= (TNSNAMES) 这样,也就是客户端解析连接字符串的顺序中有TNSNAMES是,才会尝试使用这个文件。
PROTOCOL:客户端与服务器端通讯的协议,一般为TCP,该内容一般不用改。
HOST:数据库侦听所在的机器的机器名或IP地址,数据库侦听一般与数据库在同一个机器上,所以当我说数据库侦听所在的机器一般也是指数据库所在的机器。
在UNIX或WINDOWS下,可以通过在数据库侦听所在的机器的命令提示符下使用hostname命令得到机器名,或通过ipconfig(for WINDOWS) or ifconfig(for UNIX)命令得到IP地址。
PORT:数据库侦听正在侦听的端口,可以察看服务器端的listener.ora文件或在数据库侦听所在的机器的命令提示符下通过lnsrctl status [listener name]命令察看。此处Port的值一定要与数据库侦听正在侦听的端口一样。
SERVICE_NAME:在服务器端,用system用户登陆后,sqlplus>show parameter service_name命令察看。
ORCL 对应的本机,SALES对应的另外一个IP地址,里边还定义了使用主用服务器还是共享服务器模式进行连接。
扩展资料:tnsnames.ora使用注意事项:
(1)如果tnsnames中的service_name配置错误,配置成了instance_name了,这个时候会发生tnsping能通,但是 sqlplus连接不上的奇怪情况。
(2)报错ORA-12514: TNS:listener could not resolve SERVICE_NAME given in connect descriptor。这个时候查错的时候,需要检查对应的service_name。
(3)如果远程数据库是rac,而且本地客户端端远程数据库处于不同的网段,通过公网链接,rac对外的ip映射只有一个,即只映射到一个节点。请注意在客户端配置tnsnames的时候按照单机的情况来配置。dba不仅仅要学习oracle,了解一些网络的知识,特别是自己系统的网络架构,也是需要的。
答案如图
这个图是我自己的机器配置,其中orcl和a8都是连接我远程Oracle服务器的网络名字
另外还可以用netca命令(ORACLE_HOME配置正确)调出图形界面,选择“本地NET服务名”来生成该文件(最好不要手动去敲字母改这个文件,即使要手动改这个文件也最好粘贴复制,防止因少一个字母产生各种问题)
文件解压到了D盘,D:\OracleClient下面最后的文件结构应该如下:
2.配置tnsnames.ora,如果本机上没有安装oracle,可以从安装了oracle的机上拷贝一个(tnsnames.ora文件在%
ORACLE_HOME%\network\admin下)放在上面的目录D:\OracleClient下。tnsnames.ora的内容为:
# tnsnames.ora Network Configuration File: C:\oracle\product\10.2.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.255.128)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
3,添加一个环境变量,名为TNS_ADMIN,值为tnsnames.ora文件所在路径(如:D:\OracleClient),这是为了能够
找到上面说的tnsnames.ora。如果本机上安装了ORACLE,并且设置了ORACLE_HOME环境变量,那么会自动
在%ORACLE_HOME%/network/admin/位置查找tnsnames.ora文件。
4,设置ORACLE的语言,添加注册表项:逗NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK地,位于
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE。如果本机没有安装ORACLE,在H_L_M\SOFTWARE\下是没
有"ORACLE"这一项的,需要手动创建,然后再在ORACLE项下创建键NLS_LANG,键值为:SIMPLIFIED
CHINESE_CHINA.ZHS16GBK
5,下载并安装PL.SQL.Developer配置应用
配置tools->preferences->connection
找到等号左侧参数填写等号右侧对应的内容
Oracle Home(empty is autodetect)=D:\OracleClient
OCI library(empty is autodetect)=D:\OracleClient\oci.dll
□Check connection的方框要打√
6,再次打开plsql则会在database中有orcl选项,输入用户名密码就可以登陆。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)