自己电脑装oracle11,电脑还装了虚拟机,想让虚拟机能连接电脑上的数据库,怎么配置才能连接?
1、首先,虚拟机要能ping通真实主机,虚拟机网卡选NAT模式(我一般选桥接,简单省事)即可。
2、真实主机里修改Oracle监听器文件,要监听真实主机的IP地址。重启监听器服务。
3、先用真实主机的SQL*Plus连接测试。
sqlplus system/orcl@主机字符串名
4、主机防火墙开放1521端口(或临时关闭防火墙)
5、虚拟机里安装Oracle客户端,配置tnsnames.ora,使用虚拟机里的sqlplus连接。
或者使用Navicat(需要oracle的一个client配合,指定DLL文件用)
首先,在数据库层面
在数据库层面,要确保将要登录的数据库user具有相关连接权限,如果是做测试的话,直接授予dba角色即可。
grant dba to username;
其次,在网络层面
在网络层面,需要保证客户机与虚拟机能够互连。
由于您的环境是:数据库在客户机上,需要虚拟机内的应用能连接到数据库。这样的环境,采用采用虚拟机的任何一种网络模式都是可以的。
1、桥接模式
桥接模式下,客户机与虚拟机会处于相同的子网中。通常表现为:虚拟机同客户机一样,直接连接到了同一个路由器。这种模式下,虚拟机的网络能力和客户机是平等的。但有一个局限就是要依赖第三方的网关(路由器等)。
2、仅主机模式
要理解仅主机模式,需要先知道一个场景:有A、B两台电脑,用一根网线将A、B网孔互联,然后两台电脑配上相同网段的IP,也就是IP的前三段相同,这时A、B是能互相ping通的。
仅主机模式只保证了客户机与虚拟机的直接连接,不提供对外连接,类似于上面的场景。
3、NAT模式
NAT模式相当于是将客户机作为一个网关(可以理解为是一个路由器),虚拟机作为这个网关下的一台子机。
上面三种模式都能保证客户机与虚拟机联通,唯一的区别在于能否连接外网,以及以什么样的方式连接外网。