1. 先裝好CentOS5.4
注意:
A.記得裝好後要先關閉SELinux
B. oracle 需要有1G以上的實體記憶體(VM中建議1100MB)
C. 建議2GB(或2倍以上的實體記憶體)的SWAP空間
D.安裝必須套件 (這全部是同一行)
[root@oracle ~]# yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel
以及
[root@oracle ~]#yum install pdksh-5.2.14
E.由於考量日後還要繼續新增ORACLE的database大小
所以建議主硬碟為10G + 2G的SWAP +1G實體記憶體(建議是1100MB)
用VM時,假設掛載上的硬碟為/dev/sdb , 掛載目錄設為 /u01
掛載方法請參照筆者網誌上的另一篇文章.
F.建立oracle帳戶, 使用第二步驟建立, 此帳戶將用來開啟與管理ORACLE所有設定(不一定要給予ROOT權限)
G.下載下來的oracle安裝檔,必須解壓縮在同一目錄, 如:
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
cd database
./runInstall
2.用root執行
# groupadd oinstall (建立oinstall 群組,安裝程序那邊會用到)
# groupadd dba (建立dba群組,安裝程序那邊會用到)
# useradd -g oinstall -G dba oracle
# passwd oracle
# mkdir -p /u01/app/oracle/product/
為了使以上的設定變更到另一磁碟, ex: /dev/sdb, 請先將/dev/sdb掛載成/u01
# chown oracle:oinstall /u01/app/oracle (之後軟體安裝的路徑)
#mkdir -p /u01/app/oracle/product/
#chmod -R 775 /u01
把/u01給oracle使用
#chown -R oracle:oinstall /u01
(這段要執行, 不然之後安裝程序要回來改權限)
3. 改用oracle登入, 這邊是希望之後以oracle就執行與管理這項服務, 不要被其他帳戶混淆.(盡可能由單一用戶執行單一服務, 也盡量不要用root開啟服務)
並改寫oracle 的 .bash_profile 部分如下
export JAVA_HOME=/opt/jdk1.6.0_17
export ORACLE_BASE=/u01/app/oracle
export ORACLE_SID=orcl
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
#NLS_LANG=”TRADITIONAL CHINESE_TAIWAN”.ZHT16BIG5;export NLS_LANG
export NLS_LANG
#LC_CTYPE=zh_TW.Big5; export LC_CTYPE
export LC_CTYPE
#LC_ALL=zh_TW.UTF8; export LC_ALL
export LC_ALL
#LANG=zh_TW.Big5; export LANG
export LANG
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PATH=$JAVA_HOME/bin:$ORACLE_HOME/bin:$PATH:$HOME/bin
4.用root修改下面參數:
修改核心參數:
Add the following lines to /etc/sysctl.conf
32位元的設定
rnel.shmall=2097152
kernel.shmmax=552599552——half the size of physical memory(一半的記憶體, 以1gRAM來說, 會是552599552 )
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.core.rmem_default = 262144
net.core.wmem_default = 262144
fs.file-max = 6815744
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
64位元的
kernel.shmall=2097152
kernel.shmmax=552599552
kernel.shmmni=4096
kernel.sem=250 32000 100 128
net.core.rmem_default = 262144
net.core.wmem_default = 262144
fs.file-max = 6815744
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
讓設定生效, 改完核心參數之後, 一定要執行, 使設定生效!!!!
[root@oracle ~]# /sbin/sysctl –p
為oracle用戶設置Shell限制,
Add the following lines to /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
修改/etc/pam.d/login
Add the following lines to /etc/pam.d/login
session required pam_limits.so
如果使用bash Shell,修改/etc/profile
Add the following lines to /etc/profile
if [ \$USER = "oracle" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
5. 進入解壓縮後產生的database資料夾, 執行:
[oracle@oracle database]$ ./runInstaller
6.依照以下步驟開始安裝:
=|= 设置服务,只保留如下几个
--------------------------------------------
[root@oracle ~]# ntsysv
atd
crond
irqbalance
microcode_ctl
network
sendmail
sshd
syslog
iptables
=|= 解决中文乱码问题,添加如下行
--------------------------------------------
[root@oracle ~]# vi /etc/bashrc
export LANG=en_US
export LANGUAGE=en_US
export LC_CTYPE=zh_CN
export LC_MESSAGES=zh_CN
export SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
=|= 配置 vim 编辑文件添加如下行
--------------------------------------------
[root@oracle ~]# vi /root/.bashrc
alias mv='mv -i'
alias vi='vim'
[root@oracle ~]# vi /root/.vimrc
syntax on
=|= 安装相关组件包
--------------------------------------------
yum -y install make autoconf automake vim-enhanced sysstat glibc libgcc gcc gcc-c++ glibc-devel libstdc++ libstdc++-devel compat-libstdc++-33 unixODBC unixODBC-devel
binutils elfutils-libelf elfutils-libelf-devel pdksh libaio libaio-devel screen
yum -y update
=|= 安装桌面环境(Oracle安装要用桌面)
--------------------------------------------
yum -y groupinstall "Java Development"
yum -y groupinstall "X Window System"
yum -y groupinstall "GNOME Desktop Environment"
yum -y install vnc-server
=|= 配置VNC
--------------------------------------------
[root@oracle ~]# vncserver
根据提示输入两次密码,即可完成VNC的配置
修改iptables增加端口 5801 5901
[root@oracle ~]# iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
[root@testdb ~]# iptables -I INPUT -p tcp --dport 5801 -j ACCEPT
=|= 修改系统内核参数,增加如下行
--------------------------------------------
[root@oracle soft]# vi /etc/sysctl.conf
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.file-max = 6815744
fs.aio-max-nr = 1048576
[root@oracle ~]# sysctl -p
使之立即生效
=|= 添加oracle所需用户和组
--------------------------------------------
[root@oracle ~]# groupadd oinstall
[root@oracle ~]# groupadd dba
[root@oracle ~]# useradd -g oinstall -G dba oracle #添加oracle用户到oinstall组dba副组
[root@oracle ~]# passwd oracle #设置oracle用户的密码
[root@oracle ~]# mkdir /oracle #创建oracle要安装的目录
[root@oracle ~]# chown -R oracle:oinstall /oracle #设置目录权限
=|= 确认主机名和hosts中的主机名解析设置
--------------------------------------------
[root@oracle ~]# hostname
oracle.fei.cn
[root@oracle ~]#
[root@oracle ~]# cat /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
#::1 localhost6.localdomain6 localhost6
125.76.249.100 oracle.fei.cn oracle #主要是这一行
=|= 为oracle用户设置shell限制,添加如下内容
--------------------------------------------
[root@oracle ~]# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
[root@oracle ~]# vi /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so
[root@oracle ~]# vi/etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
切换到oracle用户,注意要用 su - root命令(注 意,‘-’的左右都有空格!)这样才确保把环境带过去
如果只是su root是不会把环境带过去的
[root@oracle ~]# su - oracle
[oracle@localhost ~]$ vi .bash_profile(设置环境变量)
export PATH
ORACLE_BASE=/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=superfei
PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
[root@localhost ~]#exit (退出登录让设置生效)
[root@localhost ~]# su - oracle
[oracle@localhost ~]$ env | grep ORA
ORACLE_SID=superfei
ORACLE_BASE=/oracle
ORACLE_HOME=/oracle/product/11.2.0/db_1
确认无误
至此,安装oracle的前期准备工作就全部完成了。
=|= 开始安装
--------------------------------------------
=|= 下载安装包上传到服务器
--------------------------------------------
linux.x64_11gR2_database_1of2.zip
linux.x64_11gR2_database_2of2.zip
我放置在了 /data/soft 目录
解压安装包
[root@oracle ~]# cd /data/soft
[root@oracle soft]# unzip -q linux.x64_11gR2_database_1of2.zip
[root@oracle soft]# unzip -q linux.x64_11gR2_database_2of2.zip
[root@oracle soft]# ls
database linux.x64_11gR2_database_1of2.zip linux.x64_11gR2_database_2of2.zip
解压后的目录为 database
=|= 执行安装
--------------------------------------------
先用vnc 使用端口 5901 连接到服务器
打开终端窗口
[root@oracle ~]# su - oracle
[oracle@localhost ~]$ cd /data/soft/database
[oracle@localhost ~]$ ./runInstaller
正常情况下,会弹出oracle的安装界面。
如果出错没有弹出,而是出了如下错误:
[oracle@localhost database]$ Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.access$000(X11GraphicsEnvironment.java:53)
at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:142)
at java.security.AccessController.doPrivileged(Native Method)
at sun.awt.X11GraphicsEnvironment.<clinit>(X11GraphicsEnvironment.java:131)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:164)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:68)
at java.awt.Window.init(Window.java:270)
at java.awt.Window.<init>(Window.java:318)
at java.awt.Frame.<init>(Frame.java:419)
at oracle.ewt.popup.PopupFrame.<init>(Unknown Source)
at oracle.ewt.lwAWT.BufferedFrame.<init>(Unknown Source)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.<init>(OiocOneClickInstaller.java:328)
at oracle.sysman.oio.oioc.OiocOneClickInstaller.<clinit>(OiocOneClickInstaller.java:168)
解决方法,再打开一个终端窗口,在root下执行
[root@oracle ~]# xhost local:oracle
non-network local connections being added to access control list
现在可以了,再次在 oracle 用户下执行 ./runInstaller 即会弹出安装窗口。