http://wiki.ubuntu.org.cn/index.php?title=Index/database/InstallOracle10gInBreezy&variant=zh-cn
http://www.phpchina.com/batch.viewlink.php?itemid=14789
http://www.dizwell.com/prod/node/52?page=0%2C1
本文是在 ubuntu 7.04下安裝Oracle 10g 的安裝筆記。我假設(shè)您已經(jīng)成功的安裝并配置了 ununtu
Linux。并且安裝好了 sudo apt-get install gcc lesstif2 libc6 rpm libaio1 mawk gawk original-awk binutils libdb3 libdb1-compat cpp-3.3 gcc-3.3 libstdc++5-3.3-dev libstdc++2.10-glibc2.2 base-files netbase libc6 libc6-dev make 可通過 apt-get install 完成安裝(ununtu 和 debian 的這種安裝方式蠻方便的)j2re 的運行環(huán)境,不一定要安裝(注:,如果會出現(xiàn)“ Exception String: Error in invoking target 'client_sharedlib' of makefile '/opt/ora10/network/lib/ins_net_client.mk'.”錯誤,就一定要使用apt-get install sun-java6-jre 或是apt-get install sun-java6-jdk來安裝java環(huán)境)。
1. 創(chuàng)建用戶和組
oracle 安裝需要兩個 unix 用戶組和一個運行時的 oracle 用戶。
#addgroup oinstall
#addgroup dba
#addgroup nobody
#useradd -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
#usermod -g nobody nobody
2. 創(chuàng)建目錄
有很多文檔,建議您將 oracle 安裝到一個獨立的分區(qū)上面。比如:/opt。請您根據(jù)您的需要選擇合適
自己的安裝目錄。在本文檔中,我們假設(shè) oracle 的安裝目錄為/opt/ora10。確保有至少 3.0G 的可用空間。
(暈死,我全部的剩余空間呀:()
#mkdir -p /opt/ora10
#mkdir -p /opt/oradata
#chown -R oracle:oinstall /opt/ora*
#chmod -R 775 /opt/ora*
您生成了 oracle 的運行時路徑,并且授寫權(quán)限給 oracle 用戶,執(zhí)行權(quán)限給 dba 組。
3 設(shè)置內(nèi)核參數(shù)
3.1 修改 sysctl.conf
添加如下的行到/etc/sysctl.conf 中:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
注:shmmax(最大共享內(nèi)存)是一個很重要參數(shù),根據(jù)您的機器的內(nèi)存來設(shè)定。如果您設(shè)置不合適的
話,在創(chuàng)建數(shù)據(jù)庫到約 86%的時候就會掛掉。祝您好運。^_^
3.2 修改 limits.conf
添加下面的行到/etc/security/limits.conf 以修改你的資源限制:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
3.3 讓修改生效
修改了以上文件后,您必須讓其生效,您重啟系統(tǒng),或者切換到 root 用戶下用以下的方式改變內(nèi)核運
行參數(shù):
#sysctl -p
3.4 創(chuàng)建程序鏈接
#ln -s /usr/bin/awk /bin/awk
#ln -s /usr/bin/rpm /bin/rpm
#ln -s /usr/bin/basename /bin/basename
4 .設(shè)置 Oracle 用戶環(huán)境
以 oracle 用戶登錄:
~$su oracle
修改~/.bash_profile 文件,去掉下列三行的注釋符,使.bashrc 文件生效:
#if [ -f ~/.bashrc ]; then
# . ~/.bashrc
#fi
ununtu 默認是沒有注釋的,debian 用戶需要取消掉這個。
添加下列行到~/.bashrc:
# oracle 10g
export ORACLE_BASE=/opt/ora10
export ORACLE_HOME=/opt/ora10
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH //這項可不要
export ORACLE_OWNER=oracle
export ORACLE_SID=compiere
export ORACLE_TERM=xterm
# Edit paths
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=/opt/ora10/bin:$PATH
我是將上面的內(nèi)容保存到另一個文件中,.bash_oracle,然后在.bashrc 中使用 source
.bash_oracle 進行調(diào)用 的。您可以根據(jù)您的好惡進行設(shè)置。您需要注意的是,ORACLE_BASE 和
ORACLE_HOME 的設(shè)置一定得和您在前面創(chuàng)建的目錄相符。 ORACLE_SID 是默認數(shù)據(jù)庫的名稱,在本文檔
中,我們假設(shè)默認的數(shù)據(jù)庫名叫 compiere,如果您想用其他的名字,請您作相應(yīng)的修改。
5 執(zhí)行安裝
5.1 交換分區(qū)的調(diào)整
以 oracle 用戶啟動 X,進行安裝。
差點忘了,為了安裝 Oracle 10g,oracle 推薦至少 512M 內(nèi)存和至少 400M 交換空間。內(nèi)存,好象不
夠關(guān)系也不大,但是交換分區(qū) 呢,您還是大方一點吧。如果您的交換分區(qū)不夠 400M,那么您還是先看看這
一步吧。
重設(shè)交換分區(qū)可以使用如下操作:
shell# dd if=/dev/zero of=tmp_swap bs=1k count=900000
shell# chmod 600 tmp_swap
shell# mkswap tmp_swap
shell# swapon tmp_swap
完成安裝以后,可以釋放這個空間:
shell# swapoff tmp_swap
shell# rm tmp_swap
count 值是根據(jù)您需要調(diào)整的交換分區(qū)大小而定。
5.2 安裝前的準備
終于可以安裝了。我們假設(shè)下載的安裝文件位于/home/sungaoyong/oracle 下,名稱為
10201_database_linux32.zip 解壓后。
創(chuàng)建一個文件 /etc/redhat-release:添加如下內(nèi)容。
Red Hat Linux release 3.1 (drupal)
oracle 將會把系統(tǒng)認為是 redhat 3 了:)
5.3 java 中文的顯示
進入 java 的安裝路徑
$ cd /usr/lib/j2se/1.4/lib
$ sudo cp font.properties.zh_CN_UTF8.Sun font.properties
將最下面的一行改為如下:
filename.-misc-fzsongti-medium-r-normal--*-%d-*-*-p-*-iso10646-
1=/usr/share/fonts/VeraSansYuanTi/VeraSansYuanTi-Regular.ttf
appendedfontpath=/usr/share/fonts/VeraSansYuanTi
java 就支持中文顯示了。
5.4 運行 Installer
進入 oracle 數(shù)據(jù)庫解壓的目錄
./runInstaller -jreLoc /usr/lib/j2se/1.4/jre
指定 jre 的目的就是始安裝界面可以顯示中文,否則安裝界面的中文都是小框框,不信試試,嘿嘿!
接下的一般選擇默認設(shè)置就可以了。
6.啟動數(shù)據(jù)庫
1.啟動
$ sqlplus " scott/tiger as sysdba"
將出現(xiàn)如下連接數(shù)據(jù)庫信息:
SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3 月 24 16:23:27 2004
Copyright (c) 1982, 2004, Oracle. All rights reserved.
連接到:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
表明登錄數(shù)據(jù)庫系統(tǒng)成功,運行 startup 命令啟動數(shù)據(jù)庫。
SQL> startup
ORACLE instance started.
Total System Global Area 336356520 bytes
Fixed Size 279720 bytes
Variable Size 268435456 bytes
Database Buffers 67108864 bytes
Redo Buffers 532480 bytes
Database mounted.
Database opened.
SQL>
表示數(shù)據(jù)庫正常啟動。
2. 關(guān)閉 Oracle10g 數(shù)據(jù)庫
$ sqlplus "scott/tiger as sysdba" //以 sysdba 用戶登錄數(shù)據(jù)庫
成功登錄數(shù)據(jù)庫系統(tǒng)后,運行 shudown 命令關(guān)閉數(shù)據(jù)庫。
SQL> shutdown
3. 啟動 Oracle10g 監(jiān)聽程序
Oracle 的監(jiān)聽程序主要是為客戶端的連接提供接口,在控制臺窗口鍵入如下命令:
$ lsnrctl
將出現(xiàn)如下監(jiān)聽程序信息:
LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3 月 -2004 16
:59:51
Copyright (c) 1991, 2004, Oracle. All rights reserved.
歡迎來到 LSNRCTL, 請鍵入"help"以獲得信息。
LSNRCTL>
表明登錄監(jiān)聽程序控制臺成功,運行 start 命令啟動監(jiān)聽程序。
LSNRCTL> start
將出現(xiàn)監(jiān)聽程序的一系列啟動和配置情況信息列表。
信息行的最后一行是“The command completed successfully”字樣時,監(jiān)聽程序啟動成
功。
4. 關(guān)閉 Oracle10g 監(jiān)聽程序
運行 stop 命令關(guān)閉監(jiān)聽程序。
LSNRCTL> stop
7.創(chuàng)建自啟動腳本
創(chuàng)建 oracledb 腳本到/etc/init.d/oracledb,內(nèi)容如下
#!/bin/bash
#
# /etc/init.d/oracledb
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_HOME=/opt/ora10
export ORACLE_SID
http://www.phpchina.com/batch.viewlink.php?itemid=14789
http://www.dizwell.com/prod/node/52?page=0%2C1
本文是在 ubuntu 7.04下安裝Oracle 10g 的安裝筆記。我假設(shè)您已經(jīng)成功的安裝并配置了 ununtu
Linux。并且安裝好了 sudo apt-get install gcc lesstif2 libc6 rpm libaio1 mawk gawk original-awk binutils libdb3 libdb1-compat cpp-3.3 gcc-3.3 libstdc++5-3.3-dev libstdc++2.10-glibc2.2 base-files netbase libc6 libc6-dev make 可通過 apt-get install 完成安裝(ununtu 和 debian 的這種安裝方式蠻方便的)j2re 的運行環(huán)境,不一定要安裝(注:,如果會出現(xiàn)“ Exception String: Error in invoking target 'client_sharedlib' of makefile '/opt/ora10/network/lib/ins_net_client.mk'.”錯誤,就一定要使用apt-get install sun-java6-jre 或是apt-get install sun-java6-jdk來安裝java環(huán)境)。
1. 創(chuàng)建用戶和組
oracle 安裝需要兩個 unix 用戶組和一個運行時的 oracle 用戶。
#addgroup oinstall
#addgroup dba
#addgroup nobody
#useradd -g oinstall -G dba -p passwd -d /home/oracle -s /bin/bash oracle
#usermod -g nobody nobody
2. 創(chuàng)建目錄
有很多文檔,建議您將 oracle 安裝到一個獨立的分區(qū)上面。比如:/opt。請您根據(jù)您的需要選擇合適
自己的安裝目錄。在本文檔中,我們假設(shè) oracle 的安裝目錄為/opt/ora10。確保有至少 3.0G 的可用空間。
(暈死,我全部的剩余空間呀:()
#mkdir -p /opt/ora10
#mkdir -p /opt/oradata
#chown -R oracle:oinstall /opt/ora*
#chmod -R 775 /opt/ora*
您生成了 oracle 的運行時路徑,并且授寫權(quán)限給 oracle 用戶,執(zhí)行權(quán)限給 dba 組。
3 設(shè)置內(nèi)核參數(shù)
3.1 修改 sysctl.conf
添加如下的行到/etc/sysctl.conf 中:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 1048576
net.core.rmem_max = 1048576
net.core.wmem_default = 262144
net.core.wmem_max = 262144
注:shmmax(最大共享內(nèi)存)是一個很重要參數(shù),根據(jù)您的機器的內(nèi)存來設(shè)定。如果您設(shè)置不合適的
話,在創(chuàng)建數(shù)據(jù)庫到約 86%的時候就會掛掉。祝您好運。^_^
3.2 修改 limits.conf
添加下面的行到/etc/security/limits.conf 以修改你的資源限制:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
3.3 讓修改生效
修改了以上文件后,您必須讓其生效,您重啟系統(tǒng),或者切換到 root 用戶下用以下的方式改變內(nèi)核運
行參數(shù):
#sysctl -p
3.4 創(chuàng)建程序鏈接
#ln -s /usr/bin/awk /bin/awk
#ln -s /usr/bin/rpm /bin/rpm
#ln -s /usr/bin/basename /bin/basename
4 .設(shè)置 Oracle 用戶環(huán)境
以 oracle 用戶登錄:
~$su oracle
修改~/.bash_profile 文件,去掉下列三行的注釋符,使.bashrc 文件生效:
#if [ -f ~/.bashrc ]; then
# . ~/.bashrc
#fi
ununtu 默認是沒有注釋的,debian 用戶需要取消掉這個。
添加下列行到~/.bashrc:
# oracle 10g
export ORACLE_BASE=/opt/ora10
export ORACLE_HOME=/opt/ora10
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH //這項可不要
export ORACLE_OWNER=oracle
export ORACLE_SID=compiere
export ORACLE_TERM=xterm
# Edit paths
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export PATH=/opt/ora10/bin:$PATH
我是將上面的內(nèi)容保存到另一個文件中,.bash_oracle,然后在.bashrc 中使用 source
.bash_oracle 進行調(diào)用 的。您可以根據(jù)您的好惡進行設(shè)置。您需要注意的是,ORACLE_BASE 和
ORACLE_HOME 的設(shè)置一定得和您在前面創(chuàng)建的目錄相符。 ORACLE_SID 是默認數(shù)據(jù)庫的名稱,在本文檔
中,我們假設(shè)默認的數(shù)據(jù)庫名叫 compiere,如果您想用其他的名字,請您作相應(yīng)的修改。
5 執(zhí)行安裝
5.1 交換分區(qū)的調(diào)整
以 oracle 用戶啟動 X,進行安裝。
差點忘了,為了安裝 Oracle 10g,oracle 推薦至少 512M 內(nèi)存和至少 400M 交換空間。內(nèi)存,好象不
夠關(guān)系也不大,但是交換分區(qū) 呢,您還是大方一點吧。如果您的交換分區(qū)不夠 400M,那么您還是先看看這
一步吧。
重設(shè)交換分區(qū)可以使用如下操作:
shell# dd if=/dev/zero of=tmp_swap bs=1k count=900000
shell# chmod 600 tmp_swap
shell# mkswap tmp_swap
shell# swapon tmp_swap
完成安裝以后,可以釋放這個空間:
shell# swapoff tmp_swap
shell# rm tmp_swap
count 值是根據(jù)您需要調(diào)整的交換分區(qū)大小而定。
5.2 安裝前的準備
終于可以安裝了。我們假設(shè)下載的安裝文件位于/home/sungaoyong/oracle 下,名稱為
10201_database_linux32.zip 解壓后。
創(chuàng)建一個文件 /etc/redhat-release:添加如下內(nèi)容。
Red Hat Linux release 3.1 (drupal)
oracle 將會把系統(tǒng)認為是 redhat 3 了:)
5.3 java 中文的顯示
進入 java 的安裝路徑
$ cd /usr/lib/j2se/1.4/lib
$ sudo cp font.properties.zh_CN_UTF8.Sun font.properties
將最下面的一行改為如下:
filename.-misc-fzsongti-medium-r-normal--*-%d-*-*-p-*-iso10646-
1=/usr/share/fonts/VeraSansYuanTi/VeraSansYuanTi-Regular.ttf
appendedfontpath=/usr/share/fonts/VeraSansYuanTi
java 就支持中文顯示了。
5.4 運行 Installer
進入 oracle 數(shù)據(jù)庫解壓的目錄
./runInstaller -jreLoc /usr/lib/j2se/1.4/jre
指定 jre 的目的就是始安裝界面可以顯示中文,否則安裝界面的中文都是小框框,不信試試,嘿嘿!
接下的一般選擇默認設(shè)置就可以了。
6.啟動數(shù)據(jù)庫
1.啟動
$ sqlplus " scott/tiger as sysdba"
將出現(xiàn)如下連接數(shù)據(jù)庫信息:
SQL*Plus: Release 10.1.0.2.0 - Production on 星期三 3 月 24 16:23:27 2004
Copyright (c) 1982, 2004, Oracle. All rights reserved.
連接到:
Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL>
表明登錄數(shù)據(jù)庫系統(tǒng)成功,運行 startup 命令啟動數(shù)據(jù)庫。
SQL> startup
ORACLE instance started.
Total System Global Area 336356520 bytes
Fixed Size 279720 bytes
Variable Size 268435456 bytes
Database Buffers 67108864 bytes
Redo Buffers 532480 bytes
Database mounted.
Database opened.
SQL>
表示數(shù)據(jù)庫正常啟動。
2. 關(guān)閉 Oracle10g 數(shù)據(jù)庫
$ sqlplus "scott/tiger as sysdba" //以 sysdba 用戶登錄數(shù)據(jù)庫
成功登錄數(shù)據(jù)庫系統(tǒng)后,運行 shudown 命令關(guān)閉數(shù)據(jù)庫。
SQL> shutdown
3. 啟動 Oracle10g 監(jiān)聽程序
Oracle 的監(jiān)聽程序主要是為客戶端的連接提供接口,在控制臺窗口鍵入如下命令:
$ lsnrctl
將出現(xiàn)如下監(jiān)聽程序信息:
LSNRCTL for 32-bit Windows: Version 10.1.0.2.0 - Production on 24-3 月 -2004 16
:59:51
Copyright (c) 1991, 2004, Oracle. All rights reserved.
歡迎來到 LSNRCTL, 請鍵入"help"以獲得信息。
LSNRCTL>
表明登錄監(jiān)聽程序控制臺成功,運行 start 命令啟動監(jiān)聽程序。
LSNRCTL> start
將出現(xiàn)監(jiān)聽程序的一系列啟動和配置情況信息列表。
信息行的最后一行是“The command completed successfully”字樣時,監(jiān)聽程序啟動成
功。
4. 關(guān)閉 Oracle10g 監(jiān)聽程序
運行 stop 命令關(guān)閉監(jiān)聽程序。
LSNRCTL> stop
7.創(chuàng)建自啟動腳本
創(chuàng)建 oracledb 腳本到/etc/init.d/oracledb,內(nèi)容如下
#!/bin/bash
#
# /etc/init.d/oracledb
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface
export ORACLE_HOME=/opt/ora10
export ORACLE_SID