Mac OS 开发环境设置

unix小白入手Mac Air后的悲催生活 -


目的

1. Mac 系统重安装Eclipse, Tomcat等

2. 虚拟机中安装Oracle11g (VirtualBox + Win7)

3. Mac中安装Oracle Client,SQL Developer,并设置系统变量。


看似简单的1,2,3,让我郁闷得脸都扭曲了。


===================================

Step1. - 安装Eclipse,Tomcat 以及jdk

参看 How to install jdk on windows, mac and linux

http://www3.ntu.edu.sg/home/ehchua/programming/howto/JDK_Howto.html




现在看step 3.

3.1 下载 oracle client 

到oracle官网下载 Instant Client Downloads for Mac OS X (Intel x86)

http://www.oracle.com/technetwork/topics/intel-macsoft-096467.html

注意啊!虽然有 64bit的,但是你还是要下载 32bit的,否则启动sqlplus时会遇到 Segmentation fault: 11的错误 

(本人已做白鼠,还有不信邪的可以装64bit的试试)


先下载2个包 instantclient-basic 和  instanceclient-sqlplus

解压缩到同一个文件夹中, 比如instanceclient_10_2


3.2 配置oracle client 以及环境变量

具体请参看我另一片转发的文章

http://blog.csdn.net/ashleygu/article/details/8122799


同时需要在VM中的listener.ora中加入监听地址。


3.3 mac 配置bash_profile

1. 进入当前用户的home目录

         输入cd ~

2. 创建.bash_profile (这个是隐藏文件哦,需要系统管理员密码才能修改)

         输入touch .bash_profile

3. 编辑.bash_profile文件

            输入vim ~/.bash_profile

           或者在terminal 以下命令可以直接用Mac的文本编辑器打开

open -e .bash_profile


4. 添加环境bi变量

    

export DYLD_LIBRARY_PATH=/Applications/Utilities/instantclient/
export ORACLE_HOME=/Applications/Utilities/instantclient/
export SQLPATH=$ORACLE_HOME
export PATH=$PATH:/Applications/Utilities/instantclient/:.

5. 保存文件,关闭.bash_profile

6. 更新刚配置的环境变量

         输入source .bash_profile


添加mysql和mysqladmin的别名 只在当前shell中有效。

#mysql 

alias mysql='/usr/local/mysql/bin/mysql' 

alias mysqladmin='/usr/local/mysql/bin/mysqladmin'

3.4 安装sql developer 

3.4.1 windows上安装

oracle官网下载的 zip包解压缩后,直接执行sqldeveloper.exe.

提示需要java.exe 

安装jdk7, 打开路径(默认路径 C:\Programs Files\Java\jdk1.7.0XXX\jre\bin) 选者java.exe

确认后提示 msvcr100.dll is missing from your computer错误

It is the C++ Redistributable Package 2010. 

http://www.microsoft.com/download/en/details.aspx?id=26999 

Pick the file named vcredist_x64.exe(64bit) or vcredist_x86.exe (32bit)

安装后重启sql developer, 可以正常进入。



3.5 到MAC中用sqlplus 连接windows数据库,竟然timeout

MacBook-Air:~ ashley$ sqlplus hr/hr@orcl

SQL*Plus: Release 10.2.0.4.0 - Production on Thu Nov 1 00:35:49 2012

Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.

ERROR:
ORA-12170: TNS:Connect timeout occurred


Enter user-name: 
ERROR:
ORA-12162: TNS:net service name is incorrectly specified

筒子们,的教训呀!!!

虽然我看了一些帖子说可能是防火墙的关系,自信满满地到services.msc中将Security Center给disable了。

还是没有用,用telnet 都 ping 不到端口  (telnet vm_ip 1521)

此后尝试将Virtual Box一会儿切换到NAT,一会儿设置成 Bridged Adapter, 最后又设成Host-only.

头皮抓了两天,真是悲催了。症状就是,主机能够ping虚拟机的ip,但是端口不通。


LG跟我说是不是防火墙要关掉,偶回答说早就关掉啦  (看来不懂还是千万不能装懂呀)

偶然又打开control panel, 才明白 windows firewall - 坑爹的是这么关的!!!


打开Control Panel -> System and Security -> Windows Firewall -> Turn Windows Fireware on or off

或者可以选择Advanced Setting -> Inbound Rules, 手动选择要开启的端口。

另外可以参考以下文章,如何让oracle穿过防火墙~

http://wenku.baidu.com/view/3e5c0b1414791711cc791755.html


回到Mac, 用sql developer或者sqlplus均能连接到virtualbox上的oracle 11g.




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值