CentOS 7.4下安装Oracle 11.2.0.4数据库的方法
在Linux下安装Oracle数据库是一件较为麻烦的事情。由于Linux的安装过程中可能会选择不同的安装包,会导致Oracle安装过程中缺失或多一些软件包,很难一次性的安装成功。所以,本文详细记录了Oracle在Linux上的安装过程,以供参考。
本环境仅供软件开发和测试环境使用,并不适合用于生产环境。
Oracle官方支持的Linux发行版本有RedHat和Oracle Linux,所以,我们在CentOS(7.4)下安装Oracle(11gR2)时,还需要做一些特别的准备工作。
本文的CentOS 7.4使用官网上下载的CentOS-7-x86_64-DVD-1708.iso文件安装,安装时选择Server with GUI,并选择FTP Server。语言使用英语。
选择安装包
为了日常使用方便,执行命令systemctl set-default multi-user.target,让linux启动后,直接进入字符界面。
本文的Oracle数据库使用的是11.2.0.4(这个版本适配红帽7,官网免费下载的版本并不适用于红帽7)。
附下载地址,请使用迅雷下载即可。
https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_1of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_1of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_2of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_2of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_3of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_3of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_4of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_4of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_5of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_5of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_6of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_6of7.zip https://updates.oracle.com/Orion/Services/download/p13390677_112040_Linux-x86-64_7of7.zip?aru=16716375&patch_file=p13390677_112040_Linux-x86-64_7of7.zip
1. 关闭防火墙
由于是开发测试环境,为了方便,将防火墙关闭。但是,在正式的生产环境,千万不要这样做。
首先执行命令systemctl status firewalld.service检查防火墙状态,
检查防火墙状态
然后,执行命令systemctl stop firewalld.service关闭防火墙。
当然,我们可以执行命令systemctl disable firewalld.service,禁用防火墙。
禁用防火墙
2. 关闭selinux
selinux提供了很多Linux的系统安全措施,演示系统中,将其关闭,方便操作。需要注意的是,在正式生产环境下,也千万不要这样做。
执行命令getenforce查看selinux的状态,初始安装的CentOS7是打开状态。
执行命令vi /etc/selinux/config,编辑文件,配置SELINUX=disabled,关闭selinux。
3. 为yum配置阿里源
在安装Oracle的过程中,需要安装一些依赖包。为了加快安装速度,最好将yum源更新为国内的,首推阿里yum源。执行命令cd /etc/yum.repos.d/,然后执行命令wget http://mirrors.aliyun.com/repo/Centos-7.repo下载阿里yum源。执行命令mv CentOS-Base.repo CentOS-Base.repo.bak备份现有源信息。执行命令mv Centos-7.repo CentOS-Base.repo,使用上一步中下载回来的阿里yum源。依次执行命令yum clean all、yum makecache和yum update,更新yum源。
4. (可选)为虚拟机生成快照
为了保险起见,为虚拟机生成一份快照,避免后续安装出错,重头再来安装操作系统。
5. 创建数据库目录
创建Oracle数据库的安装目录到/opt下。执行命令mkdir -p /opt/oracle,创建oracle安装目录;执行命令mkdir -p /opt/oraInventory,创建oracle数据库配置文件目录;执行命令chown -R oracle:oinstall /opt/oracle,设置oracle为目录的所有者;执行命令chown -R oracle:oinstall /opt/oraInventory,设置oracle为目录的所有者。
6. 创建用户和用户组
Oracle安装过程中,需要使用固定的用户和用户组。执行命令groupadd oinstall,创建oinstall用户组;执行命令groupadd dba,创建dba用户组;执行命令useradd -g oinstall -g dba -m oracle,创建oracle用户;执行命令passwd oracle,为oracle用户设置密码,为了好记密码为123456;执行命令id oracle,查看刚刚创建的oracle用户信息。
创建用户组及用户
执行命令vi /home/oracle/.bash_profile,添加如下内容,为oracle用户设置环境变量。
export ORACLE_BASE=/opt/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export ORACLE_TERM=xterm export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
执行命令source /home/oracle/.bash_profile,让配置立即生效。
7. 对oracle用户设置限制
为了提高软件运行性能,需要对oracle用户设置限制。
执行命令vi /etc/security/limits.conf,添加如下内容:
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
验证最新版的PAM 已经被加载,如果不存在的话,在 /etc/pam.d/login 文件中添加如下内容:
session required pam_limits.so
验证当前的ulimits,并启用。 这个可以通过很多方式来做, 在/etc/profile添加如下内容是推荐的方式:
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -u 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fifi
8. 修改OS系统标识
Oracle数据库支持在红帽和Oracle Linux上安装,不支持在CentOS上安装,所以需要修改OS系统标识为红帽。
执行命令vi /etc/redhat-release,修改系统标识为redhat-7。
9. 修改内核参数
部分参数,在Oracle安装过程中,可自动修复(使用root用户执行Oracle安装程序给出的修复脚本),但是有部分不能自动修复。
执行命令vi /etc/sysctl.conf
修改的内核参数如下:
kernel.shmall = 2097152 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 262144 net.core.wmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_max = 1048576 kernel.shmmax = 2079272960 kernel.shmmni = 4096 fs.aio-max-nr = 1048576
执行命令sysctl -p,使修改的内核参数生效。
10. 安装依赖的软件包
Oracle11gR2在CentOS7.4上安装,缺少如下19个包,需要执行命令yum install -y gcc libaio glibc.i686 compat-libstdc++-33 compat-libstdc++-33.i686 elfutils-libelf-devel glibc-devel glibc-headers gcc-c++ libaio-devel libaio-devel.i686 libgcc.i686 libstdc++ libstdc++.i686 unixODBC unixODBC.i686 unixODBC-devel unixODBC-devel.i686 ksh,来安装需要的19个依赖包。
针对pdksh找不到的问题,可安装ksh即可。据说oracle使用新的ksh了,但是检查脚本中还使用的是pdksh
缺少的依赖包
页:
[1]