MAC

MacにOracleインストール

rootでのログイン

root アカウントを有効にする

$ sudo passwd root
Password: ********
Changing password for root.
New password:********
Retype new password:********
$ su - 
Password:********
# id
uid=0(root) gid=0(wheel) groups=0(wheel),204(_developer),100(_lpoperator)
    ,98(_lpadmin),80(admin),61(localaccounts),29(certusers),20(staff),12(everyone)
	,9(procmod),8(procview),5(operator),4(tty),3(sys),2(kmem),1(daemon)
	,401(com.apple.access_screensharing)
# 

インストール環境の確認

メモリの確認 (1G以上)

$ /usr/sbin/system_profiler SPHardwareDataType
Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro7,1
      Processor Name: Intel Core 2 Duo
      Processor Speed: 2.4 GHz
      Number Of Processors: 1
      Total Number Of Cores: 2
      L2 Cache: 3 MB
      Memory: 4 GB
      Bus Speed: 1.07 GHz
      Boot ROM Version: MBP71.0039.B05
$

空きディスク容量の確認(Enterrprise Edition: 1.5GB以上)

# df -h /
Filesystem     Size   Used  Avail Capacity  Mounted on
/dev/disk0s2  233Gi   28Gi  204Gi    13%    /
# 

プロセッサの確認

# uname -p
i386
#

Mac バージョンの確認

$ sw_vers
ProductName:	Mac OS X
ProductVersion:	10.6.3
BuildVersion:	10D2125
$ 

GCCインストール/バージョン確認

# gcc -v
-sh: gcc: command not found
# 
GCC がインストールされていないのでGCCをインストールする。

アップデート版だったのでインストールできない。
もともと入っていないとインステールできないみたいなので。
xcode(統合開発環境)をインストールするとgccも付随しているようなので、
ダウンロードする。(CDにもあり)
Xcodeのインストール

インストール完了
# gcc -v 
Using built-in specs.
Target: i686-apple-darwin10
Configured with: /var/tmp/gcc/gcc-5659~1/src/configure 
   --disable-checking --enable-werror --prefix=/usr --mandir=/share/man 
   --enable-languages=c,objc,c++,obj-c++ 
   --program-transform-name=/^[cg][^.-]*$/s/$/-4.2/ 
   --with-slibdir=/usr/lib --build=i686-apple-darwin10 
   --program-prefix=i686-apple-darwin10- 
   --host=x86_64-apple-darwin10 
   --target=i686-apple-darwin10 
   --with-gxx-include-dir=/include/c++/4.2.1
Thread model: posix
gcc version 4.2.1 (Apple Inc. build 5659)
# 

名前解決の設定

Verity that the /etc/hosts files is used for name resolution.

結果に /BSD/local が出ていればOK
# dscacheutil -configuration 
DirectoryService Cache search policy:
    /Local/Default
    /BSD/local

Settings:
    AAAA Queries  - Disabled (link-local IPv6 addresses)
    Default TTL   - 3600
    Policy Flags  - 0

# 

hostname の結果が /etc/hosts ファイルに登録されているか確認

# cat /etc/hosts | grep `eval hostname`
xxx.xxx.xxx.xxx     myhost.local
#

グループ/ユーザの作成

グループの作成

現状の登録確認 
  * /groups はファイルシステム上の ディレクトリではなく
    ディレクトリサーバの階層を表しているので ls /groups では表示されない
	ディレクトリ名大文字小文字を区別しないので /Gropus /GROUPS と指定しても同じ。
	
# dscl . -list /groups gid name 

  ※省略 

mail                             6
staff                            20
sys                              3
tty                              4
utmp                             45
wheel                            0
#

oinstall グループの作成
# dscl . -create /groups/oinstall
# dscl . -append /groups/oinstall gid 600
# dscl . -append /groups/oinstall passwd "*"
# 
* 確認
# dscl . -list /groups gid name | grep oinstall
oinstall                         600
# 

dba グループの作成
# dscl . -create /groups/dba
# dscl . -append /groups/dba gid 601
# dscl . -append /groups/dba passwd "*"
# 
* 確認
# dscl . -list /groups gid name | grep dba
dba                              601
# 

oper グループの作成
# dscl . -create /groups/oper
# dscl . -append /groups/oper gid 602 
# dscl . -append /groups/oper passwd "*"
# 
* 確認
# dscl . -list /groups gid name | grep oper
_developer                       204
_lpoperator                      100
oper                             602
operator                         5
#

ユーザの作成

oracleユーザの作成
 * /users/oracle はディレクトリサービス用のディレクトリ名
 * home /Users/oracle はファイルシステム上のディレクトリ
 
# dscl . -create /users/oracle
# dscl . -append /users/oracle uid 600
# dscl . -append /users/oracle gid 600
# dscl . -append /users/oracle shell /bin/bash
# dscl . -append /users/oracle home /Users/oracle
# dscl . -append /users/oracle realname "Oracle sofrware owner"

* 確認
# dscl . -read /users/oracle
AppleMetaNodeLocation: /Local/Default
NFSHomeDirectory: /Users/oracle
PrimaryGroupID: 600
RealName:
 Oracle sofrware owner
RecordName: oracle
RecordType: dsRecTypeNative:users
UniqueID: 600
UserShell: /bin/bash
# 

ホームディレクトリの作成
# mkdir /Users/oracle
# chown oracle:oinstall /Users/oracle
# 

パスワードの設定
# passwd oracle
Changing password for oracle.
New password:
Retype new password:
# 

確認
# su - oracle
$ pwd
/Users/oracle
$ ls -ld
drwxr-xr-x  2 oracle  oinstall  68 Oct  3 09:37 .
$

/Users/oracle/.profile 作成
-----------------------------------------------
ORACLE_BASE=/opt/oracle
ORACLE_SID=orcl
export ORACLE_BASE ORACLE_SID

export DISPLAY=:0.0

ulimit -Hn 65536
ulimit -Sn 65536
umask 022
-----------------------------------------------
$ . ./.profile
$ env
TERM=xterm-color
SHELL=/bin/bash
USER=oracle
ORACLE_SID=orcl
ORACLE_BASE=/opt/oracle
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
PWD=/Users/oracle
SHLVL=1
HOME=/Users/oracle
_=/usr/bin/env
$ 

* インストール前に ORACLE_HOME 変数は設定しないこと
Note:
If the ORACLE_HOME environment variable is set, 
then Oracle Universal Installer uses the value that it specifies as the default path 
for the Oracle home directory. However, 
if you set the ORACLE_BASE environment variable,
 then Oracle recommends that you unset the  ORACLE_HOME environment variable 
 and choose the default path suggested by Oracle Universal Installer.

その他インストール前の設定

インストールディレクトリの作成


# mkdir /opt/oracle
# chown oracle:oinstall /opt/oracle
# chmod 755 /opt/oracle

oraInventory指定ファイルの作成

# mkdir -p /var/opt/oracle
# chown oracle:oinstall /var/opt/oracle

$ cat /var/opt/oracle/oraInst.loc
inventory_loc=/opt/oracle/oraInventory
inst_groups=oinstall
$

カーネルパラメータファイルの作成

# /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

Mac OS X 1.6.x SNOW Leopard の場合

java 1.4 に対応していない場合以下のようにリンクを作成する。 

# ln -s /System/Library/Frameworks/JavaVM.framework/Versions/1.5.0 \
         /System/Library/Frameworks/JavaVM.framework/Versions/1.4.2

インストール


ログインユーザで xhost +を実行し他のユーザ(oracle)でも
x  server が使用できるようにする
loginuser$ xhost +
access control disabled, clients can connect from any host

xterm で起動できるか確認
oracle$ xterm 

oracle$ cd /Users/oracle/db/Disk1
oracle$ ./runInstaller

$ ./runInstaller
Starting Oracle Universal Installer...

No pre-requisite checks found in oraparam.ini, no system pre-requisite checks will be executed.
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2010-10-03_11-03-12AM. 
  Please wait ...kk:Disk1 oracle$ Sun Oct  3 11:03:13 kk.local java[1248] : kCGErrorFailure: 
  Set a breakpoint @ CGErrorBreakpoint() to catch errors as they are logged.
Exception in thread "main" java.lang.InternalError: Can't connect to window server - 
not enough permissions.
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1823)
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1720)
	at java.lang.Runtime.loadLibrary0(Runtime.java:823)
	at java.lang.System.loadLibrary(System.java:1045)
	at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)
	at java.security.AccessController.doPrivileged(Native Method)
	at sun.awt.NativeLibLoader.loadLibraries(NativeLibLoader.java:38)
	at sun.awt.DebugHelper.(DebugHelper.java:29)
	at java.awt.Component.(Component.java:560)

oracle$ 

うまくいかないのでとりあえず oracle ユーザに管理者権限を与えて
oracle ユーザでログインしなおして再実行してみる


oracle ユーザでログインし直し、
・アプリケーション→ユーティリティ→X11を起動する。


$ ./runInstaller

java.lang.UnsatisfiedLinkError: 
     /private/tmp/OraInstall2010-10-03_11-10-21AM/oui/lib/mac_osx/liboraInstaller.dylib:  
no suitable image found.  Did find:  
/private/tmp/OraInstall2010-10-03_11-10-21AM/oui/lib/mac_osx/liboraInstaller.dylib: 
mach-o, but wrong architecture



 architecture がなんとかなので オプションを指定して再実行


$ ./runInstaller -J-d32

これでインストーラ起動成功

SNOW Leopard の場合にインストール途中で失敗する場合の対応

エラー内容
all_no_orcl ipc_g ihsodbc32 error 

以下のファイルの$(HSODBC_LINKLINE)をコメントアウトする
$ORACLE_HOME/rdbms/lib/ins_rdbms.mk
-----------------------------------------
#$(HSODBC_LINKLINE)
-----------------------------------------

インストーラを再開する。



インストーラ












先頭へ

      Document-Folder          一覧
HP-UX
HULFT
JAVA
JP1
JavaScript
Linux
MAC
PHP
Perl
Python
Ruby
SOA
Solaris
Unix全般
Windows
XML
エクセル
スタイルシート
セキュリティー
データベース
ネットワーク
パソコン
ブラウザ
プログラム構文
仮想化
          RSS-Folder
ニュース
   アットマーク・アイティ(@IT)
   シンクイット(ThinkIT)
   インターネットコム
   インターネットウォッチ
   日経IT-Pro
   日経パソコン
   CNET Japan
   ZD-NetJapan
   MYCOM
   RBB-Today
ベンダー
   日本IBM
   日本HP
   サンマイクロシステムズ
   NEC
   富士通
   日立
ソフトウェア
   マイクロソフト
   トレンドマイクロ
   オラクル
   サイボウズ
   Mozilla
   野村総合研究所
   (その他ソフトウェア企業)
更新履歴 一覧
 07/08 PERF
プログラム構文
 07/07 PERF
プログラム構文
 06/25 オブジェクトプログラミング2
Perl>サンプル
 07/12 クローン作成
仮想化>vCenter
 07/12 vyatta設定
ネットワーク>vyatta
 07/12 vyattaインストール
ネットワーク>vyatta
 07/12 リポジトリサーバ
Linux>サーバ構築
 07/05 VMwareのインストール
仮想化>VMware
 07/05 PXEブート
仮想化>KVM
 07/01 DHCPでのPXEブート
仮想化>KVM
 06/27 qcow2仮想DISK作成
仮想化>KVM
 06/13 NWの設定
仮想化>VMwareEsxi
 06/13 IPアドレスの変更
仮想化>VMwareEsxi
 06/12 自動ssh
Unix全般>シェル>Bash
 06/12 diffプログラミング
Python
Google