用本地plsql连接远程数据库
背景:本地未安装oracle数据库服务器,希望远程连接Oracle服务器
测试环境:win7 64位系统
1.下载精简客户端
下载64位windows的instantclient-basic包,地址: http://www.oracle.com/technetwork/topics/winx64soft-089540.html ,32位的需下载32位的客户端,将包解压存放到本地,我本机主目录是D:\software_dev\plsql\OracleClientPackage\instantclient_11_2
2.创建数据库连接的配置文件
在客户端主目录下新建sqlnet.ora和tnsnames.ora两个文件
sqlnet.ora文件写入:
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
tnsnames.ora文件写入:
复制代码
可配置多个本地实例。格式:
本地实例名 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 远程数据库IP地址)(PORT = 远程服务器端口号))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = 远程数据库服务名)
)
)
VirtualOrcl=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.109)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
KOBRA_DEV_VPN_2=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.139)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = kobra)
)
)
复制代码
PS:不要出现本地实例名前面多空格,或者其他地方少写括号。否则连接时会报错:ORA-12154: TNS:could not resolve the connect identifier specified
- 配置windows的环境变量
变量名:TNS_ADMIN 变量值:D:\software_dev\plsql\OracleClientPackage\instantclient_11_2
4.解决乱码
select userenv('language') from dual;
上述方式可查得:当前oracle服务器内部的字符集为 AMERICAN_AMERICA.AL32UTF8或者其他
配置环境变量
配置oracle客户端所在环境的字符集,使其与oracle服务器内部字符集配置保持一致:
变量名:NLS_LANG 变量值:AMERICAN_AMERICA.AL32UTF8
5.安装并配置PL/SQL Developer
(1)下载安装PL/SQL Developer工具
(2)配置oracle的连接参数:打开PL/SQL,打开工具-->首选项-->连接,配置Oralce主目录和OCI库
主目录:D:\software_dev\plsql\OracleClientPackage\instantclient_11_2
OCI库:D:\software_dev\plsql\OracleClientPackage\instantclient_11_2\oci.dll
重启plsql

浙公网安备 33010602011771号