Install oracle 10g on Mac OS X chinaunix-chinahomes (止戈为武)

本人工作一般忙,平时还有学习深造和养活自己的重担. 时间不多这次贴的是个简单文档 主要是给有oracle基础的技术人员看的.如果我有时间会作个更详细文档贴出来.感谢 OTN 论坛对我的支持.

环境:
  macmini 1.25 1Gmem (原超频到1.5的那个后来不得不降回来)

  oracle: oracle 10G 10.1 for Mac osx server
  osx server : 10.4.5
  gcc:4.0
  xcode:2.2

  要提前说明的是 oracle 10.1官方只支持 10.3.6.在我这篇文档里会详细介绍如何让10.1在[tiger] server也能正常运行. 由于apple 换心 不知道 10.2 版本什么时候才会出来,到那时可能才会出来正式支持[tiger]的版本.


在安装之前切记先要执行 :
$sudo gcc_select 3.3
或 # gcc_select 3.3


install oracle 10G on Mac os x server


一.安装准备

获得root权限 $sudo sh
       $sudo /usr/sbin/sysctl -a
硬件要求
512M[内存]  #/usr/sbin/system_profiler SPHardwareDataType | grep Memory
1Gswap space  # df -h /
400 M /tmp    # df -h /tmp
1G 的硬盘空间

软件要求
OSXserver 10.3.6 !!!官方支持 实际上我装在了4.5的系统上  # sw_vers
Xcode 1.1  
gcc 3.3  !!!一定是3.3!!! 不是3.3的要改成3.3# gcc -v
x11 (不一定要用)
openmotif2.2.3(不一定要用)

一.建立组和oracle用户

推荐建立3个组  OSDBA OSOPER  oinstall 以及确保系统有nobody 组

一般情况下只建立 dba组 和 oinstall组  

1.建立组:

  # more /var/opt/oracle/oraInst.loc 查看oinstall组是否存在

         建立oinstall组:
  图形工具: /Application/Server/Workgroup Manager
        
  命令 # nicl . -create /groups/oinstall
   # nicl . -append /groups/oinstall gid gid_number
   # nicl . -append /groups/oinstall passwd "*"

  查看组时候以及存在 # nireport . /groups gid name | more

  建立dba组:
  命令 # nicl . -create /groups/dba
   # nicl . -append /groups/oinstall gid gid_number
   # nicl . -append /gourps/oinstall passwd "*"

2.建立 oracle 用户
  查看oracle是否存在 # id oracle

  查看现在的所有用户
  # nireport . /users uid name | more

  建立oracle 用户
  # nicl . -create /users/oracle
  # nicl . -append /users/oracle uid uid_number
  # nicl . -append /users/oracle gid oinstall_gid
  # nicl . -append /users/oracle shell /bin/bash
  # nicl . -append /users/oracle home /Users/oracle
  # nicl . -append /users/oracle realname "Oracle software owner"
  将oracle用户 加到组里
  # nicl . -append /groups/dba users oracle
  # nicl . -append /groups/oper users oracle
  建立oracle用户主目录
  # mkdir /Users/oracle
  # chown oracleinstall /Users/oracle
  给oracle用户一个密码
  #passwd oracle
  其他操作
  查看 更改组id
  # nireport . /groups/oinstall gid name
  # nicl . -delete /users/oracle gid
  # nicl . -append /users/oracle gid oinstall_gid
3.确保nobody 用户的存在
  验证用户是否存在
  # id nobody
  验证组是否存在
  # nireport . /groups name gid | grep nobody

  如果不存在建立组
  # nicl . -create /groups/nobody
  # nicl . -append /groups/nobody gid -2
  # nicl . -append /groups/nobody passwd "*"
  如果不存在建立用户
  # nicl . -create /users/nobody
  # nicl . -append /users/nobody uid -2
  # nicl . -append /users/nobody gid -2
  # nicl . -append /users/nobody shell /usr/bin/false
  # nicl . -append /users/nobody home /var/empty
  # nicl . -append /users/nobody realname "Unprivileged User"
  # nicl . -append /users/nobody passwd "*"

二.内核参数调整 和用户限制

1.内核参数
  kern.corefile
  # /usr/sbin/sysctl -a | grep corefile
  kern.sysv.semmni  kern.sysv.semmns  kern.sysv.semmnu  kern.sysv.semmsl  kern.sysv.semume

  # /usr/sbin/sysctl -a | grep sem

  kern.maxproc
  kern.maxprocperuid

  # /usr/sbin/sysctl -a | grep maxproc
  调整
  # /usr/sbin/sysctl -w kern.maxproc=2068

2.SHELL 用户限制
  Maximum number of open file descriptors                 65536
  Maximum number of processes available to a single user  2068
  在 /System/Library/StartupItems/IPServices/IPServices
  StartService 函数的开始加入
  ulimit -Hu 2068
  ulimit -Su 2068
  ulimit -Hn 65536
  ulimit -Sn 65536

  在/etc/rc中 在SystemStarter 前同样加入
3.目录规划 (FileSystem方式)
  Oracle base  Oracle inventory Oracle home

  Oracle base:
  /oracle/u01/

  Oracle inventory
  /oracle/u01/oraInventory
  Oracle home
  /oracle/u01/product/10.1.0/
  mkdir -p /oracle/u01/product/10.1.0/
  mkdir -p /oracle/u01/oraInventory
  chown -R oracleinstall /oracle/u01/product/10.1.0/
  chown -R oracleinstall /oracle/u01/oraInventory
  chmod -R 774 /oracle/u01/product/10.1.0/
  chmod -R 774 /oracle/u01/oraInventory
  其他操作:
  显示机器上已有磁盘:
  # diskutil list
  查看apple 分区表:
  # /usr/sbin/pdisk

  ASM 与 raw device略过

4.环境变量设置

  编辑 .profile
  umask 022
  执行 .profile
  # . /Users/oracle/.profile

  .profile 内容:
  TEMP=/tmp
  TMPDIR=/tmp
  ORACLE_BASE=/oracle/u01
  ORACLE_HOME=/oracle/u01/product/10.1.0/
  ORACLE_SID=JAG_DB


   
三.安装
  注意x11只是 osx的一个子系统
  实际上这个oui只准定本地java,如果需要远程安装需要使用osxvnc
  # disk/rootpre/rootpre.sh
  ./runInstaller

之后会出现图形界面.中途要执行几个shell,按提示作就可以了



如果在一开始安装时没有改变 gcc 选项.或者启动 sqlplus 时遇到链接库有问题的话 用以下步骤:

sudo gcc_select 3.3

如果没有设置$ORACLE_HOME
export ORACLE_HOME=/Applications/oracle/product/10.1.0/db_1/

export PATH=$ORACLE_HOME/bin:$PATH

cd $ORACLE_HOME/lib
mv libnnz10.dylib libnnz10.dylib.ori
relink all


建立数据库
$dbca

启动oracle
$su - oracle
$sqlplus/nolog

sql>conn / as sysdba
sql>startup

你可能感兴趣的:(oracle,server,gcc,xcode,osx,OS)