Linux安装Oracle11G说明文档
一、 安装软件环境准备:
n Centos-6.5-X64.iso
n SecureCRT.exe
n FileZilla.exe
n linux.x64_11gR2_database_1of2.zip
n linux.x64_11gR2_database_2of2.zip
二、 安装Centos6.5系统
1:配置网络环境
根据需求设定为固定IP地址
[root@oracledb ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=00:0C:29:A0:64:4E
IPADDR=192.168.120.250
PREFIX=24
GATEWAY=192.168.120.254
2:设定hosts文件
因实际生产需求设定本地解析文件(hosts)
[root@oracledb ~]# vim /etc/hosts
192.168.120.250 oracledb
3:修改本机名称
根据需求修改本机计算机名,可忽略(修改完成后需重启系统)
[root@oracledb ~]# vim /etc/sysconfig/network
HOSTNAME=oracledb
三、 配置Oracle的安装环境
1:安装RPM软件依赖包
在安装Oracle之前,用命令检查必需的RPM软件包有没有安装,检查的命令如下:(此操作需在联网环境下进行,如无法联网请看1.1)
[root@oracledb ~]#rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers kernel-headers ksh libaio libaio-devel libgcc libgomp libstdc++ libstdc++-devel make numactl-devel sysstat unixODBC unixODBC-devel
检查后发现有未安装包需安装,命令如下:
[root@oracledb ~]#yum -y install compat-libstdc++-33 elfutils-libelf-devel gcc-c++ gcc ksh libaio-devel libstdc++-devel numactl-devel unixODBC unixODBC-devel
1.1:无法联网环境下安装RPM依赖包
使用ISO镜像文件当作yum的本地库进行安装
使用FileZilla上传ISO文件至/tmp下(此处为省略操作步骤同时上传后续所需要的oracle两个压缩包),上传后进入/tmp下查看是否正常:
[root@oracledb ~]# cd /tmp
[root@oracledb tmp]# ls
CentOS-6.5-x86_64-bin-DVD1.iso orbit-gdm virtual-root.ZSFEt0
keyring-JgajZ4 orbit-root yum.log
linux.x64_11gR2_database_1of2.zip pulse-FQHcchB7qAqm
linux.x64_11gR2_database_2of2.zip pulse-KvZzt9ppB3fG
创建虚拟光驱的目录,用于挂载iso文件
[root@oracledb ~]# mkdir /mnt/vcdrom
将ISO文件挂载
[root@oracledb ~]# mount -o loop /tmp/CentOS-6.5-x86_64-bin-DVD1.iso /mnt/vcdrom
接下来需要建立本地的yum源并指定仓库位置。yum的默认仓库配置目录是 /etc/yum.repos.d ,此目录下的以 .repo 结尾的文件都是yum的仓库地址。
[root@oracledb ~]# cd /etc/yum.repos.d/
创建一个临时文件夹
[root@oracledb yum.repos.d]#mkdir temp/
修改名称
[root@oracledb yum.repos.d]#cp CentOS-Media.repo CentOS-Media.repo.bak
将多余的文件转移到temp/下
[root@oracledb yum.repos.d]#mv CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo.bak CentOS-Vault.repo temp/
修改YUM源路径
[root@oracledb yum.repos.d]# vim CentOS-Media.repo
[c6-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/vcdrom1/
file:///media/cdrom/
file:///media/cdrecorder/
gpgcheck=0
enabled=1
使yum源立即生效
[root@oracledb ~#yum clean all
[root@oracledb ~]#yum list(如无报错则会列出所有rpm包)
2:新增用户(Oracle)
[root@oracledb ~]# groupadd oinstall
[root@oracledb ~]# groupadd dba
[root@oracledb ~]# useradd -g oinstall -g dba oracle
[root@oracledb ~]# passwd oracle
更改用户 oracle 的密码 。
新的 密码:
重新输入新的 密码:
passwd: 所有的身份验证令牌已经成功更新。
3:创建Oracle文件夹
[root@oracledb ~]#mkdir -p /home/oracle/app
[root@oracledb ~]#mkdir -p /home/oracle/app/oracle
[root@oracledb ~]#mkdir -p /home/oracle/app/oradata
[root@oracledb ~]#mkdir -p /home/oracle/app/oracle/product
[root@oracledb ~]#chown -R oracle:oinstall /home/oracle/app
4:修改用户的资源限制(PAM验证配置文件)
/etc/security/limits.conf 是 Linux 资源使用配置文件,用来限制用户对系统资源的使用
[root@oracledb ~]# vi /etc/security/limits.conf
oracle soft nproc 2047 # 警告设定所有用户最大打开进程数为2047
oracle hard nproc 16384 # 严格设定所有用户最大打开进程数为16384
oracle soft nofile 1024 # 警告设定所有用户最大打开文件数为1024
oracle hard nofile 65535 # 严格设定所有用户最大打开文件数为65535
并将配置文件加入到登录验证模块并防止本地登入一直回复到login状态
[root@oracledb ~]# vim /etc/pam.d/login
session required /lib/security/pam_limits.so
session required pam_limits.so~
环境变量文件用户(Oracle)进程限制
[root@oracledb ~]# vi /etc/profile
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384 #设定shell启动进程所设置管道缓冲区的最大值
ulimit -n 65536 #设置内核可以同时打开的文件描述符的最大值。
else
ulimit -u 16384 -n 65536
fi
fi
[root@oracledb ~]# source /etc/profile(使配置立即生效)
5:修改Linux内核参数
(注释掉原有的kernel.shmall/kernel.shmmax)
[root@oracledb ~]# vi /etc/sysctl.conf
fs.aio-max-nr = 1048576
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 = 1048586
[root@oracledb ~]#sysctl -p (使配置生效)
6:关闭Selinux(安全协议)
[root@oracledb ~]# vim /etc/selinux/config (永久关闭,需重启生效)
SELINUX=disabled
[root@oracledb ~]# setenforce 0 (临时关闭,无需重启)
7:关闭防火墙
[root@oracledb ~]# service iptables stop
[root@oracledb ~]# chkconfig iptables off
四、 安装Oracle数据库
1:上传安装包并解压缩
[root@oracledb ~]# cd /tmp/
[root@oracledb tmp]# unzip linux.x64_11gR2_database_1of2.zip
[root@oracledb tmp]# unzip linux.x64_11gR2_database_2of2.zip
2:修改环境变量(切换Oracle账号)
[root@oracledb ~]# su - oracle
[oracle@oracledb /]$ vim ~/.bash_profile
umask 022
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib64
[oracle@oracledb /]$ source ~/.bash_profile(使配置立即生效)
3:解决系统安装乱码(如系统为英文,则忽略)
[oracle@oracledb ~]$ export.UTF-8
4:开始安装Oracle
使用oracle账号登入系统界面安装:
[oracle@oracledb~]$ cd /tmp/database
[oracle@oracledb~]$./runInstaller
5:安装过程中会提示运行shell脚本
[oracle@oracledb~]$sh home/oracle/oraInventory/orainstRoot.sh
[oracle@oracledb~]$sh home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
五、 问题现象及解决
Q1:IP地址与hosts文件不匹配
查看本地hosts文件
[root@oracledb ~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Oracledb 192.168.120.250
发现主机名称与IP地址顺序颠倒,修改后正常。
Q2:安装过程中报错(Rpm依赖包问题)
以上为某些依赖包缺失导致,不要取消报错,通过SecureCRT下root账号重新安装所有依赖包后点击“Retry”可正常安装
Linux安装Oracle11g说明文档
原文:http://blog.51cto.com/12210048/2110733