实验内容,在计算机上用vmware建立虚拟机,尝试用本机连接虚拟机上的oracle 10g 数据库
本机是64位win7,为了plsql连接oracle,应下载10g以上版本的32位客户端,然后安装完成后,在E:\app\Administrator\product\11.2.0\client_1\network\admin目录下建立tnsnames.ora(如果没有该目录,可以自己新建)和sqlnet.ora
对这tnsnames.ora和sqlnet.ora进行配置
在sqlnet.ora中应改成如下形式:
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES)
注意,第二句的意思为计算机会用nesnames的方式来找相关文件
在tnsnames.ora中,配置如下:
ORCL =
(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.16.128)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) )第一行为你的数据库名字,可以用命令select name from v$database来查看
HOST为你要连接的计算机的ip地址,我是linux虚拟机,用命令ifconfig可以来查看自己的ip地址
port是你的监听端口,可以去/u01/app/oracle/product/10.2.0/db_1/network/admin/listener.ora中查看(当然你之前要配过监听,目录也是每个人不一样的,但是大致目录是这个样子)
service_name也是第一行的内容
当然如果tnsnames是可以从虚拟机中找到的,在/u01/app/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora中也可以看到,
ORCL =
(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = orcl) ) )可以看到的是,在虚拟机中host是127.0.0.1,这个ip表示的是本机,所以只要复制下来黏贴到你本机的tnsnames.ora中再该掉HOST就完成了
这时可以做一个简单的测试,在cmd下,键入
sqlplus hr/hr(用户名密码)@ORCL
如果能连的进去,基本你的plsql就也能连的进去了,但是需要注意的是,如果cmd可以进入数据库而plsql无法进入,那么你需要设置一下你的plsql,在tools-》performance-》connect中手动设置一下路径,这样就能连入了,路径就是你客户端装在哪里路径就是哪个了
基本上就是这么简单,其实如果仔细想一想oracle的原理,是可以自己做到这些的