redhat linux as 5 安裝oracle 10g的詳細過程(已經做過測試) - radkitty的專欄 - CSDNBlog

導讀:


(以下代碼轉自互聯網上的多篇文章,爲了便於學習,經過整理和完善。)


 


RHEL5 ()安裝redhat5時要獨立分配磁盤給SWAP,空間大小應該是內存大小*2
最好使用內存>1G的機器


系統檢查命令:


檢查內存情況


# grep MemTotal /proc/meminfo –內存大小


# grep SwapTotal /proc/meminfo ――交換分區大小swap


/tmp分區


# df -k /tmp    要求/tmp 400MB


cpu信息


# grep "model name" /proc/cpuinfo


操作系統型號


# cat /etc/issue


內核型號


# uname -r



oracle
64位和32  因此 你的機器,rehat as5,oracle 應同樣是64 32
RHEL5
安裝oracle10所應該注意的
1 .
由於orcale10不支持 RHEL5 所以需要修改/etc/redhat_realease Red Hat Enterprise Linux Server release 5 (Tikanga) 改爲Red Hat Enterprise Linux Server release 4 (Tikanga)

2 .
修改/etc/hosts 文件將127.0.0.1改爲你的ip 否則網絡檢查通不過

3 .
依次安裝下面的包


  rpm -q libXp openmotif compat libaio ---檢查是否有安裝


  rpm –ivh libXp-1.0.0-8.i386.rpm


 



引用:


libXp-1.0.0-8.i386.rpm
openmotif22-2.2.3-18.i386.rpm
compat-db-4.2.52-5.1.i386.rpm
compat-gcc-34-3.4.6-4.i386.rpm
compat-gcc-34-c++-3.4.6-4.i386.rpm
compat-libstdc++-33-3.2.3-61.i386.rpm
libaio-0.3.106-3.2.i386.rpm


4 .因爲中文有亂碼所以設置用英文安裝 export LC_ALL=en_US

5 .
在安裝過程中選擇高級安裝,並將數據庫語言選中文 字符集選GBK的。

6.
RHEL5
安裝 Oracle 10.2.0.1 步驟
root的身份完成下面的工作:

修改內核參數

增加下面的內容到文件 /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


 


附加說明:


編輯文件 /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 # 應用程序可使用的IPv4端口範圍。
net.core.rmem_default = 1048576 # 套接字接收緩衝區大小的缺省值
net.core.rmem_max = 1048576 # 套接字接收緩衝區大小的最大值
net.core.wmem_default = 262144 # 套接字發送緩衝區大小的缺省值
net.core.wmem_max = 262144 # 套接字發送緩衝區大小的最大值


注:內核參數並非必須修改,可以根據自己實際情況而定。


 


運行下面的命令使得內核參數生效:



引用:


/sbin/sysctl –p


 


然後,應該檢查一下上面的操作是否正確:


# /sbin/sysctl -a | grep sem
# /sbin/sysctl -a | grep shm
# /sbin/sysctl -a | grep file-max
# /sbin/sysctl -a | grep ip_local_port_range


 


增加下面的內容到文件 /etc/security/limits.conf 文件中:



引用:


soft    nproc   2047
               hard    nproc   16384
               soft    nofile  1024
               hard    nofile  65536


增加下面的內容到文件 /etc/pam.d/login :



引用:


session required /lib/security/pam_limits.so
       session required pam_limits.so


因爲SELINUXoracle有影響,所以把secure linux設成無效,編輯文件 /etc/selinux/config :



引用:


SELINUX=disabled


當然你也可以用圖形界面下的工具 (系統 > 管理 > 安全級別和防火牆). 選擇SELinux頁面並且設爲無效.

安裝(以下安裝命令沒有執行,只是安裝3列出的軟件包即可)


安裝下面的包:

#
RedHat AS5 光盤
1
cd /media/cdrom/Server
rpm -Uvh setarch-2* U
爲更新軟件包。

rpm -Uvh make-3*
rpm -Uvh glibc-2*
rpm -Uvh libaio-0*
cd /
eject

#
RedHat AS5 光盤2
cd /media/cdrom/Server
rpm -Uvh compat-libstdc++-33-3*
rpm -Uvh compat-gcc-34-3*
rpm -Uvh compat-gcc-34-c++-3*
rpm -Uvh gcc-4*
rpm -Uvh libXp-1*
cd /
eject

#
RedHat AS5 光盤
3
cd /media/cdrom/Server
rpm -Uvh openmotif-2*
rpm -Uvh compat-db-4*
cd /
eject

新增組和用戶:



引用:



groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba oracle
passwd oracle


創建Oracle的安裝目錄,並把權限付給oracle用戶:



引用:



mkdir -p /u01/app/oracle/product/10.2.0/db_1
chown -R oracle.oinstall /u01


登錄到oracle 用戶並且配置環境變量(增加下面的內容到文件 .bash_profile
# Oracle Settings



引用:


ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=orcl; export ORACLE_SID
PATH=$PATH: $ORACLE_HOME/bin ; export PATH
如果本機有Xserver圖形界面的話以下這段可以不寫
DISPLAY=192.168.0.11:0,0; export DISPLAY
ORACLE_TERM=xterm; export ORACLE_TERM


LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH


配置好後用 source .bash_profile 命令使配置生效 
  
BourneBashKorn shell,用編輯器 qedit 在文件/etc/profile 中加入下面的行:(備註以下的命令添加後,會提示ulimit 出錯:-bash: ulimit: pipe size: cannot modify limit: Invalid argument)



引用:


if [ $USER = "oracle" ]; then
  if [ $SHELL = "/bin/ksh" ]; then
    ulimit -p 16384
    ulimit -n 65536
  else
    ulimit -u 16384 -n 65536
  fi
fi


註釋:$oracle_home 可以自己定;爲效率有的人單獨爲oracle 分配磁盤空間 主目錄自己定的情況下
現在終於可以安裝Oracle了。

重新登錄到oracle用戶.
到剛纔解壓出來的目錄用下面的命令,啓動Oracle智能安裝嚮導(Oracle Universal Installer ),就出現了圖形界面,再按照提示一步一步安裝
:
./runInstaller

#
如出現Xlib: connection to “:0.0″ refused by server錯誤,可以運行xhost + ,如果不是在本地安裝,可能還需要指定
DISPLAY=IP:0.0 & export DISPLAY
安裝時根據說明操作即可,在選擇字符集時,可選Unicode standard utf-8 al32utf8,並選擇”Create database with sample schemas”; 另外在


Specify database schema passwords
,選擇Use the same password for all the accounts(根據需要)
#
如出現/usr/lib/libstdc++.so.5: No such file or directory錯誤,可以安裝
compat-libstdcxxx.rpm
查看以下三個.ora文件中的主機與端口

/u01/app/oracle/product/10.2.0/db_1/network/admin
listener.ora  sqlnet.ora  tnsnames.ora
安裝快完成好的時候,會出現提示,必須以root 的身份執行兩個腳本。

最後,單擊完成按鈕,完成安裝。
結束安裝

編輯 /etc/redhat-release 文件把RHEL的版本信息改回去:

Red Hat Enterprise Linux Server release 5 (Tikanga)


 


安裝後要做的工作
3.1 Oracle
系統初始化
root用戶登錄,然後運行$ORACLE_HOME/root.sh進行Oracle的系統初始化工作,通常一路按回車用默認值即可。


3、登陸並啓動數據庫的操作。


檢查:$oracle_home/ network/admin/listener.ora 的配置是否正確
[oracle@oracle oracle]$ lsnrctl start
[oracle@oracle oracle]$ sqlplus /nolog
SQL*Plus: Release 9.2.0.0 - Production on Sat Mar 12 22:58:53 2005
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> connect / as sysdba
Connected.
SQL> shutdown immediate
關閉數據庫 (OR "dbshut" command)
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
啓動數據庫

ORACLE instance started.
Total System Global Area 236000356 bytes
Fixed Size 451684 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.


//以下腳本未做測試


4, dbstart腳本修改
數據庫創建完成後,修改vi /etc/oratab,把orcl:/opt/oracle/oracle/product/10g:N那一行最後的N改成Y
然後執行dbstart啓動數據庫數據庫可能無法啓動,報告Can’t find init file …的錯誤,需要複製一個初始化文件:
cp /opt/oracle/admin/ge01/pfile/init.ora.* /opt/oracle/product/10.2.0/dbs/initge01.ora
重新執行dbstart就可以了。

修改vi /opt/oracle/product/10g/bin/dbstartORACLE_HOME_LISTNER=/opt/oracle/oracle/product/10g/
vi /etc/rc.local
加入下面一行 起動
ORACLE ON system boot
/opt/oracel/product/10g/bin/dbstart
5.
編寫啓動腳本(OPTION

爲了方便管理,可以寫一個啓動腳本ora10g
root身份進入,編寫以下腳本:

#!/bin/bash
#
# chkconfig: 2345 91 19
# description: starts the oracle listener and instance
status() {
    pid=`ps -ef | grep ora_pmon | grep -v grep | awk '{print $8}'`
    if [ "X$pid" = "X" ]
    then
        echo "oracle10g is not running."
        exit 1
    else
        echo "oracle10g is running."
        exit 0
    fi
}
case "$1" in
    start)
        #startup the listener and instance
        echo -n "oracle begin to startup: "
        su - oracle -c "lsnrctl start"
        su - oracle -c dbstart
        echo "oracle10g started"
        ;;
    stop)
        # stop listener, apache and database
        echo -n "oracle begin to shutdown:"
        su - oracle -c "lsnrctl stop"
        su - oracle -c dbshut
        echo "oracle10g shutdowned"
        ;;
    reload|restart)
        $0 stop
        $0 start
        ;;
    'status')
        status
        ;;
     *)
        echo "Usage: ora10g [start|stop|reload|restart]"
        exit 1
esac
exit 0
存爲ora10g後,然後

chmod a+x ora10g
ln -s /opt/oracle/product/10.2.0/bin/ora10g /etc/rc.d/init.d/
即可在以後以root身份運行/etc/rc.d/init.d/ora10g start |stop 來管oracle的啓動和停止了。
如果要將這個腳本加入到系統中使其可開機運行,那麼要運行以下命令:
chkconfig --level 345 ora10g on

或者可在/etc/rc.d/rc.local中加入如下:
su - oracle -c "lsnrctl start"
su - oracle -c "dbstart"
6,
關於數據庫刪除重新安裝的問題
:
ORACLE安裝目錄刪除及/etc/ora*.*刪除就行了

#rm –f /etc/ora*.*
7.
修改Oracle10g數據庫字符集

SQL> connect sys/oracle as sysdba
SQL> startup mount
SQL> alter session set sql_trace=true;
Session altered.
SQL> alter system enable restricted session;
System altered.
SQL> alter system set job_queue_processes=0;
System altered.
SQL> alter system set aq_tm_processes=0;
System altered.
SQL> alter database open;
Database altered.
SQL> set linesize 120;
SQL> alter database character set zhs16gbk;
alter database character set zhs16gbk
*
ERROR at line 1:
ORA-12712: new character set must be a superset of old character set
SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk; #
使用INTERNAL_USE可以跳過超集的檢查,ALTER DATABASE character set INTERNAL_USE
Database altered.
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> STARTUP
SQL> select name,value$ from props$ where name like '%NLS%';
NLS_CHARACTERSET
ZHS16GBK
8. oracle database
備份

(1)vi bachupDb.sh
#!/bin/sh
#oracle
用戶下
#crontab -e
增加 "35 4 * * * /home/oracle/dbbackup/backupDb.sh",保存後自動安裝
#
echo "35 4 * * * /home/oracle/dbbackup/backupDb.sh" > backupDb.cron
#crontab backupDb.cron
#############
#@tip
修改爲本機數據庫home目錄

export ORACLE_HOME=/opt/oracle/product/10g
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
#
注意字符集必須和數據庫的字符集一致,以避免字符集轉化失敗
export NLS_LANG=AMERICAN_AMERICA.zhs16gbk
#@tip 125
修改爲要備份的oracleip地址的最後一段

dmpfile="`echo ~/`dbbackup/gedb_`date +%w`.dmp"
logfile="`echo ~/`dbbackup/gedb_`date +%w`.log"

if [ -w $dmpfile ]
then
  echo "rm -f $dmpfile"
  rm -f "$dmpfile"
fi

#@tip ip
地址修改爲要備份的oracle的主機地址
exp USERID=gedb/[email protected]/ge01 file=$dmpfile log=$logfile  owner=gedb grants=y
  (2)copy bachupDb.sh
slave oracle srever 相應目錄,
     chown oracle.oinstall bachupDb.sh
     chmod 744 bachupDb.sh   
     vi bachupDb.sh
以符合安裝情況

(3)
oracle user role
    crontab -e
    35 4 * * * /home/oracle/dbbackup/backupDb.sh
9. restore oracle backup
su - oracle
imp USERID=gedb/gedb file=gedb_6.dmp log=implogfile  commit=y  grants=y full=y
 1 Oracle 10g對硬件環境的要求
物理內存
基本 - 512MB
推薦
- 1024MB
內存交換分區相對於物理內存的比例

物理內存1024MB~2048MB - 150%
物理內存
2049MB~8192MB - 100%
物理內存大於
8192MB - 75%
磁盤空間

/tmp目錄所在的分區至少要有400MB空閒磁盤空間。
根據安裝類型,安裝Oracle服務器軟件的分區至少要有1.5GB3.5GB的空閒磁盤空間。
1.2GB
磁盤空間用於數據庫預配置文件系統存儲(可選)


2 Oracle 10g對軟件環境的要求
操作系統
Red Hat Enterprise Linux AS/ES 3.0 (updat
4 o later)
Red Hat Linux 4.0
SUSE Linux Enterprise Server 9.0 with SP 2 o
later
Asianux 1.0
Asianux 2.0
軟件包

X11
相關的庫 (軟件包名視操作系統而定,故不一一列出)
gcc (
版本至少爲
2.96-124)
make (
版本至少爲
3.79)
binutils (
版本至少爲
2.11)
openmotif (
版本至少爲2.1.30
)
setarch (
版本至少爲
1.3)
compat-db (
版本至少爲
4.0.14.5)
compat-gcc (
版本至少爲
7.3-2.96.122)
compat-gcc-c++ (
版本至少爲
7.3-2.96.122)
compat-libstdc++ (
版本至少爲
7.3-2.96.122)
compat-libstdc++-devel (
版本至少爲
7.3-2.96.122)
sysstat (
版本至少爲5.0.5-1)

libaio (版本至少爲0.3.103-3)
libaio-devel (
版本至少爲0.3.103-3)


3 相關鏈接
Linux x86 上安裝 Oracle 數據庫 10g
自動安裝 Oracle 數據庫 10g Red Hat Enterprise Linux
Oracle® Database Installation Guide for Linux x86
Oracle數據庫靜默安裝實踐
 Oracle的全球化支持
Oracle 10g文檔庫


 


4 結束語
現在Oracle 10g的安裝已經完成,在任何一臺電腦上裝個Oracle客戶端就可以對它進行管理了。
如果要卸載Oracle,只須運行
$./runInstaller -silent -deinstall -removeallfiles -removeAllPatches "REMOVE_HOMES={$ORACLE_HOME}" -responseFile <安裝時使用的應答文件>


本文轉自

http://blog.csdn.net/radkitty/archive/2008/09/28/2990866.aspx
發佈了141 篇原創文章 · 獲贊 5 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章