官方安装文档地址
https://docs.oracle.com/cd/E11882_01/nav/portal_11.htm
检查硬件需求
内存需求
最小1G内存,推荐2GB以上内存
swap空间在1G~2G是应该至少为1.5倍内存大小
swap空间在2G~16G是应该等于内存大小
swap空间在16G以上是应该16G内存大小
硬盘空间需求
/tmp文件至少需求1G空间
如果空间不够可以参照蓝框中的两个步骤
显示需求
检查软件需求
操作系统需求(略)
操作系统核心需求(略)
包需求
Oracle Database Package Requirements for Linux x86-64
oracle11gr2安装包for64位linux版本
Oracle Linux 6, Red Hat Enterprise Linux 6 and Asianux Server 4需要以下安装包
可以用 rpm -q package_name检查包是否安装
binutils-2.20.51.0.2-5.11.el6.i686
compat-libcap1-1.10-1.i686
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6.i686
gcc-c++-4.4.4-13.el6.i686
glibc-2.12-1.7.el6.i686
glibc-devel-2.12-1.7.el6.i686
kshlibgcc-4.4.4-13.el6.i686
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6.i686
make-3.81-19.el6.i686
sysstat-9.0.4-11.el6.i686
注:kshlibgcc-4.4.4-13.el6.i686这个包在redhat里面是libgcc
编译需求(略)
附加软件需求(略)
其他检查
检查主机名
ping 你的域名
pinging myhostname.example.com [192.0.2.2] with 32 bytes of data:Reply from 192.0.2.2: bytes=32 time=138ms TTL=56
如果没有设置域名
cd /etc
vim hosts
添加 你的IP地址 你的域名
禁用透明大页
透明大页可能会导致内存分配延迟,因为内存是动态分配的。因此,Oracle建议在所有Oracle数据库服务器上禁用透明的hugepage,以避免性能问题。
禁用透明大页你需要以下步骤
vim /etc/grub.conf
添加
transparent_hugepage=never
重启你的电脑保证你的改动永久变更
检查改动是否生效
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
The following is a sample output that shows Transparent HugePages are being used as the [always] flag is enabled.[always] never
检查网络设置
vim /etc/hosts
添加
修改:
127.0.0.1 你的主机名 你的主机名
添加:
你的IP地址 你的主机名
如果出现启动慢的情况可以尝试以下操作
1. 结束sendmail 服务:# killall sendmail
2. 在自动启动中删除sendmail:#chkconfig --del sendmail
3. 禁用sendmail:#chkconfig sendmail off
创建所需的操作系统组和用户,确定所需的软件目录
取决于在操作系统上是否是第一次安装oracle数据库,你需要创建所需的用操作系统组和用户。
为作业角色创建自定义配置组和用户(你需要使用root角色来创建用户组和用户)
创建用户组
/usr/sbin/groupadd -g 501 oinstall
/usr/sbin/groupadd -g 502 dba
/usr/sbin/groupadd -g 503 oper
/usr/sbin/groupadd -g 504 asmadmin
/usr/sbin/groupadd -g 505 asmoper
/usr/sbin/groupadd -g 506 asmdba
创建用户
/usr/sbin/useradd -g dba -G oinstall,asmdba,oper oracle
/usr/sbin/useradd -g dba -G asmadmin,asmdba,asmoper,oper,oinstall grid
创建数据库文件夹
mkdir -p /u01/soft
mkdir -p /u01/app/crs_base
mkdir -p /u01/app/crs_home
mkdir -p /u01/app/oracle/product/11.2.0/db_1
修改数据文件夹用户组用户
chown -R root:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle
chown -R grid:oinstall /u01/app/crs*
修改文件夹权限
chmod -R 775 /u01
chmod -R 755 /u01/app/crs*
创建用户
passwd oracle<<EOF
oracle
oracle
EOF
passwd grid<<EOF
oracle
oracle
EOF
显示和更改内核参数值
保存和替换sysctl.conf
grep -v shmmax /etc/sysctl.conf|grep -v shmall >/etc/sysctl.tmp
mv /etc/sysctl.conf /etc/sysctl.conf.bak
mv /etc/sysctl.tmp /etc/sysctl.conf
更改和替换内核参数值
cat >> /etc/sysctl.conf <<END
# Oracle Server
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
END
# hot update system control config
sysctl -p
检查Oracle软件安装用户的资源限制
在Oracle Linux系统上,Oracle建议您安装Oracle预安装RPM以满足预安装要求,如配置操作系统以在limits.conf文件中设置资源限制。Oracle预安装RPM仅为Oracle用户配置limits.conf文件。如果要实现Oracle网格基础结构作业角色分离,请在limits.conf文件中将值从Oracle用户复制到网格用户。对于每个安装软件所有者,请使用以下建议范围检查安装的资源限制:
cat >>/etc/security/limits.conf<<END
grid soft nproc 2047
grid hard nproc 16384
grid soft nofile 1024
grid hard nofile 65536
grid soft stack 10240 KB
grid hard stack 32768 KB
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240 KB
oracle hard stack 32768 KB
END
设置环境变量
ENVFILE1=/home/grid/setenv
cat > $ENVFILE1 <<END
# Oracle 11g Grid users Env settings
umask 0022
export PS1="`/bin/hostname`-> "
export ORACLE_HOSTNAME=`hostname`
export ORACLE_SID=+ASM1
export ORACLE_BASE=/u01/app/crs_base
export ORACLE_HOME=/u01/app/crs_home
export PATH=\$ORACLE_HOME/bin:\$PATH:/usr/local/bin/:.
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'
export JAVA_HOME=/usr/local/java
#/usr/local/bin/bash
if [ -t 0 ]; then
stty intr ^C
fi
END
chmod 777 $ENVFILE1
cat >> /home/grid/.bash_profile <<END
# Load Oracle 11g Grid Env
. $ENVFILE1
END
ENVFILE2=/home/oracle/setenv
cat > $ENVFILE2 <<END
# Oracle 11g Oracle users Env settings
umask 0022
#export PS1="`/bin/hostname`-> "
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_OWNER=oracle
export ORACLE_SID=tiqs
export PATH=\$PATH:\$ORACLE_HOME/bin:\$ORA_GRID_HOME/bin:/sbin:/usr/sbin:/bin:/usr/local/bin:.
export LD_LIBRARY_PATH=\$ORACLE_HOME/lib:\$ORACLE_HOME/rdbms/lib:/lib:/usr/lib
export CLASSPATH=\$ORACLE_HOME/JRE:\$ORACLE_HOME/jlib:\$ORACLE_HOME/rdbms/jlib:\$ORACLE_HOME/network/jlib
#export NLS_LANG=american_america.ZHS16GBK
export ORACLE_PATH=/home/oracle
export ORACLE_HOSTNAME=`hostname`
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.ZHS16GBK'
#For the Bourne, Bash, or Korn shell, add lines similar to the following to the /etc/profile file:
if [ \$USER = "oracle" ] || [ \$USER = "grid" ]; then
if [ \$SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
umask 022
fi
END
chmod 777 $ENVFILE2
cat >> /root/.bash_profile <<END
# Load Oracle 11g Env
. $ENVFILE2
END
cat >> /home/oracle/.bash_profile <<END
# Load Oracle 11g Env
. $ENVFILE2
END
以”oracle”用户上传数据库软件
linux.x64_11gR2_database_2of2.zip到”/u01/soft”目录下,并以”Oracle”用户解压缩到当前目录;
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
到这里,前期的准备工作就已经完成了