I am usually busy with my work, and I still have the burden of study and support. not much time. This post is a simple document mainly intended for Oracle-based technical personnel. if I have time, I will post a more detailed document. thank you for your support from the OTN forum.
Environment:
Macmini 1.25 1 gmem (the one with the original overclock to 1.5 had to be downgraded back later)
ORACLE: Oracle 10g 10.1 for Mac OSX Server
OSX server: 10.4.5
GCC: 1, 4.0
Xcode: 1, 2.2
Note that Oracle 10.1 Only supports 10.3.6. in this document, I will detail how to make 10.1 run properly on the [Tiger] server. because Apple does not know when Version 10.2 will come out, it may only be available at that time to officially support the [Tiger] version.
Before installation, remember to execute:
USD sudo gcc_select 3.3
Or # gcc_select 3.3
Install Oracle 10g on Mac OS X Server
I. Installation preparation
Get root permission $ sudo sh
$ Sudo/usr/sbin/sysctl-
Hardware requirements
512 M [Memory] #/usr/sbin/system_profiler sphardwaredatatype | grep memory
1 gswap space # DF-H/
400 m/tmp # DF-H/tmp
1 GB hard disk space
Software requirements
Osxserver 10.3.6 !!! The official support is actually installed on 4.5 of the system # sw_vers
Xcode 1.1
GCC 3.3 !!! It must be 3.3 !!! If it is not 3.3, change it to 3.3 # gcc-V
X11 (not required)
Openmotif2.2.3 (not required)
1. Create a group and an oracle user
We recommend that you create three osdba osoper oinstall groups and ensure that the system has a nobody group.
Generally, only DBA and oinstall groups are established.
1. Create a group:
# More/var/opt/Oracle/orainst. Loc check whether the oinstall group exists
Create an oinstall group:
Graphical tools:/application/Server/Workgroup Manager
Command # nicl.-create/groups/oinstall
# Nicl.-append/groups/oinstall GID gid_number
# Nicl.-append/groups/oinstall passwd "*"
View the Group and its existence # nireport./groups GID name | more
Create a DBA group:
Command # nicl.-create/groups/DBA
# Nicl.-append/groups/oinstall GID gid_number
# Nicl.-append/gourps/oinstall passwd "*"
2. Create an oracle user
Check whether Oracle exists # ID Oracle
View all current users
# Nireport./users uid name | more
Create an oracle user
# 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"
Add oracle users to the group
# Nicl.-append/groups/DBA users Oracle
# Nicl.-append/groups/oper users Oracle
Create an oracle user home directory
# Mkdir/users/Oracle
# Chown oracleinstall/users/Oracle
Give the Oracle user a password
# Passwd Oracle
Other operations
View the Change Group ID
# Nireport./groups/oinstall GID name
# Nicl.-delete/users/Oracle GID
# Nicl.-append/users/Oracle GID oinstall_gid
3. Ensure that the nobody user exists
Verify whether the user exists
# ID nobody
Check whether the verification group exists
# Nireport./groups name GID | grep nobody
If no group exists
# Nicl.-create/groups/nobody
# Nicl.-append/groups/Nobody GID-2
# Nicl.-append/groups/Nobody passwd "*"
If no user is created
# 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 "*"
Ii. Kernel Parameter Adjustment and User restrictions
1. Kernel Parameters
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
Adjustment
#/Usr/sbin/sysctl-W Kern. maxproc = 2068
2. Shell User restrictions
Maximum number of open file descriptors 65536
Maximum number of processes available to a single user 2068
In/system/library/startupitems/ipservices
Startservice Function
Ulimit-hu2068
Ulimit-su 2068
Ulimit-hn65536
Ulimit-Sn 65536
Add systemstarter before/etc/rc
3. Directory planning (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
Other operations:
Show existing disks on the machine:
# Diskutil list
View the Apple partition table:
#/Usr/sbin/pdisk
ASM and raw device skipped
4. Set Environment Variables
Edit. Profile
Umask 022
Run. Profile
#./Users/Oracle/. Profile
. Profile content:
Temp =/tmp
Tmpdir =/tmp
Oracle_base =/Oracle/u01
ORACLE_HOME =/Oracle/u01/product/10.1.0/
Oracle_sid = jar_db
Iii. Installation
Note that X11 is only a sub-system of OSX.
In fact, this Oui only depends on local java. If you need Remote Installation, you need to use osxvnc.
# Disk/rootpre. Sh
./Runinstaller
The graphic interface will appear later. Execute several shells in the middle and follow the prompts.
If the GCC option is not changed at the beginning of installation, or the Connection Library is faulty when sqlplus is started, follow these steps:
Sudo gcc_select 3.3
If $ ORACLE_HOME is not set
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
Create a database
$ Dbca
Start Oracle
$ Su-Oracle
$ Sqlplus/nolog
SQL> Conn/As sysdba
SQL> startup