centos5.5上安装oracle 11g R2

简介:

+ ------------------ CentOS 5.5上安装配置oracle 11g R2  ----------------- +
+-------------------------------- by  kerryhu ----------------------------------+

一、运行环境
系统环境:centos 5.5 32位(图形安装)
硬盘分区:
/boot 150M
swap 4096M(最少要3G以上)
/ 10G
/home 5G
/tmp 5G
/usr 10G
/usr/local 10G
/var 10G
/opt 10G
/data 剩余所有

df -h

#同步时钟
yum -y install ntp
ntpdate time.nist.gov
echo "* */2 * * * /sbin/ntpdate time.nist.gov" >> /etc/crontab

关闭服务:
iptables
selinux
portmap
rpc.statd
cupsd
avahi-daemon
sendmail

killall iptables
chkconfig --level 2345 iptables off
killall portmap
chkconfig --level 2345 portmap off
killall avahi-daemon
chkconfig --level 2345 avahi-daemon off
killall sendmail
chkconfig --level 2345 sendmail off

二、安装oracle 11gR2 依赖的组件包
#需要以下组件:
Downloading Packages:
(1/22): libaio-devel-0.3.106-5.i386.rpm                                               |  12 kB     
(2/22): numactl-devel-0.9.8-11.el5.i386.rpm                                           |  17 kB     
(3/22): elfutils-libelf-devel-0.137-3.el5.i386.rpm                                    |  24 kB    
(4/22): elfutils-libelf-devel-static-0.137-3.el5.i386.rpm                             |  66 kB   
(5/22): libgomp-4.4.4-13.el5.i386.rpm                                                 |  72 kB    
(6/22): libgcc-4.1.2-50.el5.i386.rpm                                                  |  96 kB     
(7/22): nscd-2.5-58.el5_6.3.i386.rpm                                                  | 167 kB     
(8/22): sysstat-7.0.2-3.el5_5.1.i386.rpm                                              | 170 kB    
(9/22): pdksh-5.2.14-36.el5.i386.rpm                                                  | 198 kB      
(10/22): compat-libstdc++-33-3.2.3-61.i386.rpm                                        | 232 kB   
(11/22): libstdc++-4.1.2-50.el5.i386.rpm                                              | 362 kB    
(12/22): glibc-headers-2.5-58.el5_6.3.i386.rpm                                        | 603 kB   
(13/22): unixODBC-devel-2.2.11-7.1.i386.rpm                                           | 739 kB    
(14/22): unixODBC-2.2.11-7.1.i386.rpm                                                 | 832 kB   
(15/22): kernel-headers-2.6.18-238.9.1.el5.i386.rpm                                   | 1.1 MB   
(16/22): glibc-devel-2.5-58.el5_6.3.i386.rpm                                          | 2.0 MB     
(17/22): cpp-4.1.2-50.el5.i386.rpm                                                    | 2.7 MB    
(18/22): libstdc++-devel-4.1.2-50.el5.i386.rpm                                        | 2.8 MB    
(19/22): gcc-c++-4.1.2-50.el5.i386.rpm                                                | 3.4 MB    
(20/22): gcc-4.1.2-50.el5.i386.rpm                                                    | 5.2 MB    
(21/22): glibc-2.5-58.el5_6.3.i686.rpm                                                | 5.3 MB   
(22/22): glibc-common-2.5-58.el5_6.3.i386.rpm 

yum -y install binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh numactl-devel glibc-headers
/sbin/ldconfig

三、调整内核参数
vi /etc/sysctl.conf
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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.aio-max-nr = 1048576

#让内核参数生效
sysctl -p

#修改limits.conf
vi /etc/security/limits.conf
#oracle settings
oracle           soft    nproc   2047
oracle           hard    nproc   16384
oracle           soft    nofile  1024
oracle           hard    nofile  65536

#修改系统版本(Redhat 5.×系列系统略过这步)
cp /etc/redhat-release /etc/redhat-release.bk
vi /etc/redhat-release
#修改内容为:
Red Hat Enterprise Linux AS release 5 (Taroon)

#修改/etc/pam.d/login
#添加以下内容:
session    required     /lib/security/pam_limits.so
session    required     pam_limits.so

#修改/etc/profile
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

#修改/etc/csh.login
vi /etc/csh.login
#添加以下内容:
if ( $USER == "oracle" ) then
     limit maxproc 16384
     limit deors 65536
endif

四、创建oracle用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle     #753951

mkdir -p /data/oracle
mkdir -p /data/oralnventory
mkdir -p /data/software
chown -R oracle:oinstall /data/oracle
chown -R oracle:oinstall /data/software
chown -R oracle:oinstall /data/oralnventory

#设置用户环境变量
#su - oracle
$ vi .bash_profile 
#添加以下内容:
ORACLE_SID=kerry; export ORACLE_SID
ORACLE_BASE=/data/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1; export ORACLE_HOME
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin; export PATH

ORACLE_BASE下是admin和product
ORACLE_HOME下则是ORACLE的命令、连接库、安装助手、listener等等一系列的东东。
这只是ORACLE自己的定义习惯。ORACLE_HOME比ORACLE_BASE目录要更深一些。也就是说:ORACLE_HOME=$ORACLE_BASE/product/version

ORACLE_BASE是oracle的根目录,ORACLE_HOME是oracle产品的目录。
简单说,你如果装了2个版本的oracle,那么ORACLE_BASE可以是一个,但ORACLE_HOME是2个

全局数据库名用于区别分布式数据库各个不同机器上的实例。
SID用于区别同一台机器上的不同实例,
即一个用于外部区分。
一个用于内部区分。

$source .bash_profile

五、安装oracle
#上传oracle安装文件到/data/software目录下,并解压
cd /data/software
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
xhost +   #(这里使用root用户执行,一定要执行以下2步,如果没有执行,将无法启动图形安装界面)
xhost + localhost
su - oralce
cd /data/software/database
$./runInstaller  #(到oracle安装文件所在目录执行该命令)

#方案口令:大写字母+数字+小写字母

#以root身份执行脚本
su -
/data/oralnventory/orainstRoot.sh
/data/oracle/product/11.2.0/db_1/root.sh

六、开机启动设置
#自动启动和关闭数据库实例和监听
vi /oracle/oracle/product/11.2.0/db_1/bin/dbstart
ORACLE_HOME_LISTNER=$1
#修改为:
ORACLE_HOME_LISTNER=$ORACLE_HOME

vi /etc/init.d/oracle
#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g AutoRun Services
# /etc/init.d/oracle
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface

export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=kerry
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"

# if the executables do not exist -- display error


if [ ! -f $ORACLE_HOME/bin/dbstart -o ! -d $ORACLE_HOME ]
then
     echo "Oracle startup: cannot start"
     exit 1
fi

# depending on parameter -- startup, shutdown, restart
# of the instance and listener or usage display

case "$1" in
 start)
     # Oracle listener and instance startup
     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbstart
     echo "Oracle Start Succesful!OK."
     ;;
 stop)
     # Oracle listener and instance shutdown
     su $ORA_OWNR -lc $ORACLE_HOME/bin/dbshut
     echo "Oracle Stop Succesful!OK."
     ;;
 reload|restart)
     $0 stop
     $0 start
     ;;
 *)
     echo $"Usage: `basename $0` {start|stop|reload|reload}"
     exit 1
esac
exit 0

chmod 750 /etc/init.d/oracle
ln -s /etc/init.d/oracle /etc/rc1.d/K61oracle
ln -s /etc/init.d/oracle /etc/rc3.d/S61oracle
chkconfig --level 345 oracle on
chkconfig --add oracle

#启动oracle
service oracle start

#自动启动和关闭 EM
vi /etc/init.d/oraemctl
#!/bin/sh
# chkconfig: 345 61 61
# description: Oracle 11g AutoRun Services
# /etc/init.d/oraemctl
#
# Run-level Startup script for the Oracle Instance, Listener, and
# Web Interface

export ORACLE_BASE=/data/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=kerry
export PATH=$PATH:$ORACLE_HOME/bin
ORA_OWNR="oracle"

case "$1" in
start)
echo -n $"Starting Oracle EM DB Console:"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
echo "OK"
;;
stop)
echo -n $"Stopping Oracle EM DB Console:"
su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
echo "OK"
;;
*)
echo $"Usage: $0 {start|stop}"
esac

chmod 750 /etc/init.d/oraemctl
#启动EM
service oraemctl start

七、安装过程中排错总结
#1、机器CPU如果是AMD64位,装Linux32系统,再装32位Oracle会出现netca无法执行的错误,网上说,需要打p8670579_112010_LINUX.zip这个补丁就可以了
#下载地址:http://www.megaupload.com/?d=6A29ZU8T


su - oracle
cd /data/software
unzip p8670579_112010_LINUX.zip
cd 8670579
/data/oracle/product/11.2.0/db_1/OPatch/opatch apply -invPtrLoc /data/oracle/product/11.2.0/db_1/oraInst.loc
#其中/apps/oracle/product/11.2.0/db_1/为ORACLE_HOME,可使用$ORACLE_HOME代替

 


#补丁打好后,点击安装程序的retry,继续安装即可。

#2、libail程序包缺失


yum -y install libaio-devel libaio
/sbin/ldconfig

#3、严重: 无法在指定的范围内为以下进程分配端口: JMS [5540-5559],RMI [5520-5539],Database Control [5500-5519],EM Agent [3938] | [1830-1849]


#主机名与IP不对导致
vi /etc/hosts



本文转自king_819 51CTO博客,原文链接:http://blog.51cto.com/kerry/568220,如需转载请自行联系原作者

相关文章
|
4月前
|
存储 Ubuntu Linux
VMware-安装CentOS系统教程及安装包
虚拟机相当于是一个独立于你电脑的环境,在这个环境上面,你可以安装Linux、Windows、Ubuntu等各个类型各个版本的系统,在这个系统里面你不用担心有病读等,不用担心文件误删导致系统崩溃。 虚拟机也和正常的电脑系统是一样的,也可以开关机,不用的时候,你关机就可以了,也不会占用你的系统资源,使用起来还是比较方便 这里也有已经做好的CentOS 7系统,下载下来解压后直接用VMware打开就可以使用
773 69
|
3月前
|
存储 分布式计算 Linux
安装篇--CentOS 7 虚拟机安装
VMware 装 CentOS 7 不知道从哪下手?这篇超详细图文教程手把手教你在 VMware Workstation 中完成 CentOS 7 桌面系统的完整安装流程。从 ISO 镜像下载、虚拟机配置,到安装图形界面、设置用户密码,每一步都有截图讲解,适合零基础新手快速上手。装好之后无论你是要搭 Hadoop 集群,还是练 Linux ,这个环境都够你折腾一整天!
1098 2
|
4月前
|
Ubuntu Linux 索引
Centos 7、Debian及Ubuntu系统中安装和验证tree命令的指南。
通过上述步骤,我们可以在CentOS 7、Debian和Ubuntu系统中安装并验证 `tree`命令。在命令行界面中执行安装命令,然后通过版本检查确认安装成功。这保证了在多个平台上 `tree`命令的一致性和可用性,使得用户无论在哪种Linux发行版上都能使用此工具浏览目录结构。
390 78
|
3月前
|
安全 关系型数据库 MySQL
CentOS 7 yum 安装 MySQL教程
在CentOS 7上安装MySQL 8,其实流程很清晰。首先通过官方Yum仓库来安装服务,然后启动并设为开机自启。最重要的环节是首次安全设置:需要先从日志里找到临时密码来登录,再修改成你自己的密码,并为远程连接创建用户和授权。最后,也别忘了在服务器防火墙上放行3306端口,这样远程才能连上。
586 16
|
5月前
|
Linux 网络安全 Apache
针对在Centos/Linux安装Apache过程中出现的常见问题集锦
以上每个问题的解决方案应深入分析错误日志、系统消息和各种配置文件,以找到根本原因并加以解决。务必保持系统和Apache软件包更新到最新版本,以修复已知的bugs和安全漏洞。安装和管理Web服务器是一项需要细致关注和不断学习的任务。随着技术的发展,推荐定期查看官方文档和社区论坛,以保持知识的更新。
241 80
|
4月前
|
存储 关系型数据库 MySQL
在CentOS 8.x上安装Percona Xtrabackup工具备份MySQL数据步骤。
以上就是在CentOS8.x上通过Perconaxtabbackup工具对Mysql进行高效率、高可靠性、无锁定影响地实现在线快速全量及增加式数据库资料保存与恢复流程。通过以上流程可以有效地将Mysql相关资料按需求完成定期或不定期地保存与灾难恢复需求。
337 10
|
5月前
|
人工智能 数据挖掘 Linux
Centos安装Python3.7(亲测可用)
本指南详细介绍了在基于Linux(以CentOS系统为例,使用yum包管理器)的系统上安装Python 3.7版本的完整流程。Python是一种广泛使用的高级编程语言,在各种领域如软件开发、数据分析、人工智能和区块链开发等都有着重要的应用。
491 2
|
4月前
|
运维 网络协议 Linux
CentOS下Bind服务的安装与故障排查
通过以上的步骤,您应该能够在CentOS系统上安装并配置BIND DNS服务,并进行基本的故障排查。
376 0
|
4月前
|
存储 Ubuntu Linux
安卓手机免root安装各种Linux系统:Ubuntu, Centos,Kali等
此外还可以安装Slackware、Archstrike等系统,还可以通过github查找方法安装更多有趣的东西。 昨日小编就是通过Termux安装的Kali Linux工具包。