windows下plsql连接linux下的oracle数据库
经过多方查找,终于找到解决办法,特此记录下来,共享之。
首先确定Oracle在linux环境下可以运行。
第一步,以oracle用户登上Linux系统进行如下操作
● 查询监听状态:lsnrctl status
● 如果监听没打开,则打开监听服务:lsnrctl start
● 以sysdba身份连接数据库:sqlplus / as sysdba
● 打开数据库:startup
可以成功运行之后去oracle官方网站(https://www.oracle.com/database/technologies/instant-client/winx64-64-downloads.html)
下载instantclient-basic-windows.x64-xxxxx.zip (Oracle数据库对应到版本)。我的数据库版本oracle-database-xe-18c-1.0-1.x86_64 下载了instantclient-basic-windows.x64-18.5.0.0.0dbru.zip,
解压到D:\System Programming\PLSQL Developer\(解压路径可以自定义)。
打开解压的文件夹,新建目录network,在network下面再建子目录admin,把oracle配置文件tnsnames.ora放入admin文件夹中(即目录结构为:
D:\System Programming\PLSQL Developer\instantclient_18_5\network\admin\tnsnames.ora)。
tnsnames.ora最好是到linux下的oracle主目录中拷贝(最好不要自己编写),
不知道tnsnames.ora存放目录的可以用一下命令自行搜索:
[oracle@localhost ~]$ locate tns
通过拷贝过来的tnsnames.ora要打开把HOST一项改成虚拟机中linux系统的IP地址。
tnsnames.ora修改可以为:
第一次使用PLSQL登录时直接点Cancel,以无登录的状态打开PLSQL,如下图:
instantclient设置完之后,只要在配置一下PL/SQL Developer即可。
启动PL/SQL Developer之后,打开tools下的preferences对话框,
在connection项里面把Oracle Home设置成D:\System Programming\PLSQL Developer\instantclient_18_5\ (解压缩的目录);
OCI Library设置成D:\System Programming\PLSQL Developer\instantclient_18_5\oci.dll。
重启登陆,就可以在登陆界面看到相应的数据库。
等于说PL/SQL Developer连接的数据库用到的IP地址,数据库名等配置信息都存放在tnsnames.ora中。
注:Database(可以输入如:192.168.32.158/XE)