我机子是window7 64 位,只安装oracle11g R2。sqlplus / as sysdba 登录没有问题
安装32位的oracle 11g R2客户端 之后,再运行 sqlplus sys/1234 as sysdba 就报协议适配器错误
网上找了很多方法都没用。
最后自己摸索出来:
目录下有E:\app\Administrator\product\11.2.0 目录下有client_1和dbhome_1两个目录
只要进到client_1中bin目录下把sqlplus.exe移除掉,问题就可以解决。
可能是系统默认执行client_1下的sqlplus.exe导致。
建议不管机子是64位,还是32位的操作系统,直接安装32位的oracle服务端就好了,省去一些麻烦!
① 安装完64位服务端后需要再安装32位的oracle 11g R2客户端和pl/sql developer,tnsnames.ora和 pl/sql developer配置完成后就可以远程连接 oracle服务端。
安装完客户端还需在E:\app\Administrator\product\11.2.0\client_1\network\admin 目录下添加tsnames.ora文件,文件内容如下
myoracle =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.162)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
orcl =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
myoracle和orcl 是database的名字
配置客户端安装根目录和oci.dll文件位置。
说明:如果安装了oracle 11g R2 32位的服务端,则不需要再安装32位客户端,直接选择32位服务端安装主目录和相应的oci.dll文件位置。
② 安装完32位服务端后只需安装pl/sql developer,tnsnames和 pl/sql developer配置完成后就可以远程连接oracle 11g R2服务端。
说明:pl/sql developer只有32位的安装包,所以32位、64位的操作系统都只能安装32位的oracle 11g R2客户端和pl/sql developer。