很多初次学数据库的朋友,对于通过虚拟机访问数据库,经常会出现各种设置问题,本文希望能够帮助学者,高手大牛请飘过。


1、准备工作

a)在Mac系统电脑上安装好Parallels Deskop虚拟机,虚拟机安装好操作系统,如Windows xp(真正应用建议用Linux)

b)下载Oracle数据库安装包,例如oracle 10g,创建数据库名称为orcl, 

用户名:scott

密码:tiger


2、打开虚拟机的windows xp系统,控制面版--服务,开启以下两项服务,保证Oracle数据库正在运行

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_重启


虚拟机中的mysql 外部连接不上 虚拟机连接数据库_主机名_02


3、查找本地主机名,如lvxiangan,当然,这个主机名是可以修改的,可随意修改。

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_主机名_03


4、打开数据库服务端程序,选择Net Manager

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_重启_04

5、服务命名按默认配置

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_虚拟机中的mysql 外部连接不上_05


6、新建监听程序,数据库服务中,监听数据库需要于服务命名一致;

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_重启_06


7、监听位置:主机名称请填写上面step3得到的主机名称,也可以填写本机ip地址

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_07


step7修改主机栏目,也可以直接修改以下文件,效果是一样的

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_主机名_08

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_虚拟机中的mysql 外部连接不上_09


8、修改完成,记得重启监听器

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_10


9、修改网络链接为桥接模式,至于Shared Network、Host-Only Network、Bridged Network三者具体区别,有兴趣的朋友可以百度一下。

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_主机名_11


10、在Mac系统下查看本机IP地址

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_12


11、切换至虚拟机,在Windows 下调用cmd,分别执行以下操作:

a)查找本机ip

b) 虚拟机Ping 主机(不通说明主机下防火墙未关闭)

c) 虚拟机telnet 数据库

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_主机名_13


12、Telnet成功页面

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_14


13、退出Telnet,先按Ctrl + ]  , 然后输入quit即可

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_15


14、在主机telnet虚拟机,显示已经连接上

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_虚拟机中的mysql 外部连接不上_16

测试一下设置设置是否生效 
    1)主机ping虚拟机eth0网卡的ip,不通说明虚拟机下防火墙或者selinux未关闭
    2)虚拟机ping主机ip,不通说明主机下防火墙未关闭
    3)能够互相ping同,设置即完成。
  如果还有问题,查看防火墙、需要重启生效的操作是否重启了。一般做到此,不会有什么问题了,这个时候再启动虚拟机。


15、测试代码

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_数据库_17


16、通过配置文件读取数据库驱动

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_重启_18


17、测试成功!

虚拟机中的mysql 外部连接不上 虚拟机连接数据库_虚拟机中的mysql 外部连接不上_19