How to install Oracle Database 10g on Mac OS X Snow LeopardHow to install Oracle Database 10g on Mac OS X Snow Leopard

Posted at 2010. 12. 22. 21:00 | Posted in YD College

우선 이 자료는 교육적 목적을 가지고 있으며, 실무에서 적용되지 않을 수 있음을 밝힌다.

본 자료의 기본은 Oracle® Database Installation Guide 10g Release 2 (10.2) for Apple Mac OS X (Intel) - 문서번호(B25286-01) (http://download.oracle.com/docs/cd/B19306_01/install.102/b25286.pdf) 과 오라클 ACE인 Ray의 Apps blog(http://blog.rayapps.com/2009/09/14/how-to-install-oracle-database-10g-on-mac-os-x-snow-leopard/)임을 밝힌다.



Pre-installation Tasks


1. Xcode가 설치되어 있어야한다.(V.3.2.4)

2. Oracle Database 10g  R2 for MAC (V.10.2.0.4)

3. Mac Snow Leopard(V.10.6.5)


Creating the Oracle Inventory Group


# dscl . -create /groups/oinstall

# dscl . -append /groups/oinstall gid 50000

# dscl . -append /groups/oinstall passwd "*"  -- 생략가능



Creating the OSDBA Group


# dscl . -create /groups/dba

# dscl . -append /groups/dba gid 50001

# dscl . -append /groups/dba passwd "* -- 생략가능



Creating an Oracle Software Owner User


1. Enter the following command to list existing users and user IDs (UIDs): 

# dscl . -list /users uid name | more


2. Identify an unused UID for the new Oracle software owner user. 


3. Enter commands similar to the following to create the oracle user: 

# dscl . -create /users/oracle

# dscl . -append /users/oracle uid 5000

# dscl . -append /users/oracle gid 50000

# dscl . -append /users/oracle shell /bin/bash

# dscl . -append /users/oracle home /Users/oracle

# dscl . -append /users/oracle realname "Oracle software owner"


4. Create the home directory for the oracle user and change the owner and 

group on that directory: 

# mkdir /Users/oracle

# chown oracle:oinstall /Users/oracle


5. Set the password for the oracle user: 

# passwd oracle



Configuring Kernel Parameters


Use any text editor, to create or edit the /etc/sysctl.conf file, and add or 

edit lines similar to the following:


# vi /etc/sysctl.conf

kern.sysv.semmsl=87381

kern.sysv.semmns=87381

kern.sysv.semmni=87381

kern.sysv.semmnu=87381

kern.sysv.semume=10

kernel.shmall=2097152

kernel.sys.shmmax=2147483648

kernel.sys.shmmni=4096

kern.maxfiles=65536

kern.maxfilesperproc=65536

net.inet.ip.portrange.first=1024

net.inet.ip.portrange.last=65000

kern.corefile=core

kern.maxproc=2068

kern.maxprocperuid=2068


Setting Shell Limits for the oracle User


1. Change directory to the following directory: 

# cd /System/Library/StartupItems


2. Open the vi IPServices  script using any text editor. 


3. Add the following ulimit commands to the start of the StartService function 

in this script: (IPServices)


ulimit -Hu 2068

ulimit -Su 2068

ulimit -Hn 65536

ulimit -Sn 65536


4. Add the same ulimit commands to the /etc/rc script, before the 

SystemStarter command.  (vi /etc/rc)

#vi /etc/rc

ulimit -Hu 2068

ulimit -Su 2068

ulimit -Hn 65536

ulimit -Sn 65536


  1. Check ulimit parameter

# ulimit -Hn


# ulimit -Sn




Creating an Oracle Base Directory



■ Identifying an existing Oracle Inventory director

# more /var/opt/oracle/oraInst.loc

inventory_loc=/u01/app/oracle/oraInventory

inst_group=oinstall



■ Identifying existing Oracle home directories

# more /etc/oratab

*:/u03/app/oracle/product/10.2.0/db_1:N

*:/opt/orauser/infra_904:N

*:/oracle/9.2.0:N



sh-3.2# mkdir -p /u01/app/oracle

sh-3.2# chown -R oracle:oinstall /u01/app/oracle/

sh-3.2# chmod -R 775 /u01/app/oracle/

sh-3.2# chown -R oracle:oinstall /u01/app/oraInventory/

sh-3.2# chmod -R 775 /u01/app/oraInventory/



Creating Directories for Oracle Database or Recovery Files



■ Database file directory


sh-3.2# mkdir -p /u02/oradata

sh-3.2# chown oracle:oinstall /u02/oradata

sh-3.2# chmod 775 /u02/oradata


■ Recovery file directory (flash recovery area)

sh-3.2# mkdir -p /u02/flash_recovery_area

sh-3.2# chown oracle:oinstall /u02/flash_recovery_area

sh-3.2# chmod 775 /u02/flash_recovery_area


■ Create symbolic link to newer version of Java

sh-3.2# sudo ln -s /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0   

 /System/Library/Frameworks/JavaVM.framework/Versions/1.4.2




After reboot you need to log in as new “Oracle software owner”user


Keontae-Kim-ui-iMac:~ oracle$ 

Keontae-Kim-ui-iMac:~ oracle$ echo $SHELL

/bin/bash

Keontae-Kim-ui-iMac:~ oracle$ vi .bash_profile

umask 022

export DISPLAY=:0.0

export ORACLE_BASE=/u01/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1

export DYLD_LIBRARY_PATH=$ORACLE_HOME/lib

export ORACLE_SID=orcl

PATH=$PATH:$ORACLE_HOME/bin

ulimit -Hn 10240 --- or 65536

ulimit -Sn   256   --- or 65536

   --- 인스톨후 dbca 또는 manually create database 시 ORA-12547  발생하면

 

     Check ulimit parameter

    

     # ulimit -Hn

                         ???????

     # ulimit -Sn

                         ???????   나타나는 값으로 적용할 것.



Downloading and Extracting Oracle Software from the OTN Web Sit


Keontae-Kim-ui-iMac:~ oracle$ mkdir Oradb10gformac


Keontae-Kim-ui-iMac:~ oracle$ cd Oradb10gformac


# download db.zip to this directory

Keontae-Kim-ui-iMac:~ oracle$ unzip db.zip

Keontae-Kim-ui-iMac:database oracle$ cd database



Installing the Oracle Database Software


■ Running the OUI


Keontae-Kim-ui-iMac:database oracle$ ./runInstaller -J-d32


(* In Snow Leopard you need to pass -J-d32 option to installation script to force to run Java in 32-bit mode as some native libraries are 32-bit:)


■ Normal process

  • Select Installation Method

  Custom 선택 -->  oinstall 선택


  • Specify Inventory Directory and Credentials

   Check the full path of the Oracle Inventory directory(권한확인)


  • Configuration Assistant

   dbca로  DB생성할 것임으로 S/W만 install할 것.  


  • Summary


■ Check Error

In the middle of installation you will get error message “Error in invoking target ‘all_no_orcl ipc_g ihsodbc32’ …” (message truncated). Please do not press anything and switch to Terminal application.

Keontae-Kim-ui-iMac:database oracle$ cd ~/oracle/product/10.2.0/db_1/rdbms/lib

Keontae-Kim-ui-iMac:database oracle$ vi ins_rdbms.mk


     “HSODBC_LINKLINE”을 찾아서 “#” 처리할 것.

     # $(HSODBC_LINKLINE)


At the end of installation,

■ 터미널 창을 하나 열어서 root계정으로 shell script를 수행할 것.

Keontae-Kim-ui-iMac:database oracle$ su - username(root 권한의 계정)

Keontae-Kim-ui-iMac:database oracle$ sudo /u01/app/oracle/product/10.2.0/db_1/root.sh

Keontae-Kim-ui-iMac:database oracle$ sudo /u01/app/oracle/product/10.2.0/db_1/oraInstroot.sh



Creation of Database

■ modify .bash_profile 

Keontae-Kim-ui-iMac:database oracle$ vi $HOME/.bash_profile

export ORACLE_HOME= /u01/app/oracle/product/10.2.0/db_1/ 

export DYLD_LIBRARY_PATH=$ORACLE_HOME/lib

PATH=$PATH:$ORACLE_HOME/bin

Keontae-Kim-ui-iMac:database oracle$ . ~/.bash_profile


■ Modify java 32bit

Keontae-Kim-ui-iMac:database oracle$ vi $ORACLE_HOME/jdk/bin/java

...java -Xbootclasspath... --> ...java -d32 -Xbootclasspath 로 수정할 것.


■ 오라클 실행파일이 Snow Leopard에서는 지원이 되질 않아 이전 버전인 Leopard에서 컴파일된 파일을 사용하여야 한다.(첨부파일 oracle_ee.zip 참고,files.me.com/doitforg/f73jd0)

Keontae-Kim-ui-iMac:database oracle$ cd $ORACLE_HOME/bin

Keontae-Kim-ui-iMac:database oracle$ cp $HOME/oracle/oracle_ee.zip .

Keontae-Kim-ui-iMac:database oracle$ unzip oracle_ee.zip

Keontae-Kim-ui-iMac:database oracle$ chmod ug+s oracle

Keontae-Kim-ui-iMac:database oracle$ rm oracle_ee.zip

Keontae-Kim-ui-iMac:database oracle$ dbca


  • Create a Database
  • General Purpose
  • Specify orcl as Global Database Name and SID 
  • Specify password for SYS and SYSTEM users
  • I selected also Sample Schemas
  • and in Character Sets I selected Use Unicode (AL32UTF8)


Setup network

■ Create listener.ora 

Keontae-Kim-ui-iMac:database oracle$ vi $ORACLE_HOME/network/admin/listener.ora

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)

      (PROGRAM = extproc)

    )

    (SID_DESC =

      (SID_NAME = orcl)

      (ORACLE_HOME = /u01/app/oracle/product/10.2.0/db_1)

    )

  )

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

  )


■ Create tnsnames.ora

Keontae-Kim-ui-iMac:database oracle$ vi $ORACLE_HOME/network/admin/tnsnames.ora

ORCL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl)

    )

  )


Post-Installation 


Keontae-Kim-ui-iMac:database oracle$ lsnrctl start

Keontae-Kim-ui-iMac:db_1 oracle$ sqlplus '/as sysdba'

SQL>  alter user hr identified by hr account unlock;

SQL> conn system/oracle

Connected.

SQL> @?/sqlplus/admin/pupbld


* EM은 지원이 안됨.


'YD College' 카테고리의 다른 글

오라클관련 유용한 사이트  (0) 2011.03.09
인재로 길러지는 2010년  (0) 2010.02.12
//