一、预安装
1. 环境准备
- 操作系统:CentOS7
- 数据库版本:Oracle 11.2.0.4
- 相关包:
- p13390677_112040_Linux-x86-64_1of7.zip
- p13390677_112040_Linux-x86-64_2of7.zip
- p13390677_112040_Linux-x86-64_3of7.zip
2. 系统配置
-
内核参数
cat >> /etc/sysctl.conf<< EOF #ORACLE SETTING fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 kernel.shmmax = 4182079488 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 EOF # 生效 sysctl -p
-
限制
# 用户限制配置文件 cat >> /etc/security/limits.conf<<EOF #ORACLE SETTING oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536 EOF # 生效 uname -a # 将配置文件加入到登录验证模块 cat >> /etc/pam.d/login <<EOF session required pam_limits.so EOF
-
yum 安装依赖包
yum -y install binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-devel glibc-common glibc-headers kernel-headers ksh libgcc libgomp libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC unixODBC-devel
注:在 CentOS7 中,使用 yum 安装时,可能会出现上述的某些软件包没有,此时需要下载rpm包
例:compat-libstdc+±33-3.2.3-72.el7.x86_64.rpm 这个包没有
# 在任意一个目录下都可以 wget http://mirror.centos.org/centos/7/os/x86_64/Packages/compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm # 下载完成后 yum 安装,即可解决此安装包不存在问题,其他情况类似 yum -y install compat-libstdc++-33-3.2.3-72.el7.x86_64.rpm
检查缺失包
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \ compat-libcap1 \ compat-libstdc++ \ gcc \ gcc-c++ \ glibc \ glibc-devel \ ksh \ libgcc \ libstdc++ \ libstdc++-devel \ libaio \ libaio-devel \ make \ sysstat \ unixODBC \ unixODBC-devel
-
创建所需用户和组
groupadd -g 501 oinstall groupadd -g 502 dba groupadd -g 503 oper useradd -g oinstall -G dba oracle # 设置密码 passwd oracle
-
创建所需目录
mkdir -p /oracle/{app,software} mkdir -p /oracle/app/oracle chmod -R 777 /oracle chmod -R 770 /oracle/app/ chmod -R 775 /oracle/app/oracle/ chown -R oracle:oinstall /oracle/
-
上传并解压安装包:下载对应的数据库安装包
su - oracle cd /oracle/software # 将上述的三个数据库安装包上传到 /oracle/software 目录下 ls p13390677_112040_Linux-x86-64_1of7.zip p13390677_112040_Linux-x86-64_2of7.zip p13390677_112040_Linux-x86-64_3of7.zip # 解压安装包 unzip p13390677_112040_Linux-x86-64_1of7.zip unzip p13390677_112040_Linux-x86-64_2of7.zip
-
配置环境变量
su - oracle cat >> .bash_profile <<EOF ################################################## # User specific environment and startup programs ################################################## export ORACLE_BASE=/oracle/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0 export ORACLE_PATH=$ORACLE_BASE/common/oracle/sql:.:$ORACLE_HOME/rdbms/admin export ORACLE_SID=PROD export PATH=${PATH}:/usr/bin:/bin:/usr/bin/X11:/usr/local/bin:$ORACLE_HOME/bin export ORACLE_TERM=xterm #export TNS_ADMIN=$ORACLE_HOME/network/admin export LD_LIBRARY_PATH=$ORACLE_HOME/lib export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib export CLASSPATH=$ORACLE_HOME/JRE export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib export THREADS_FLAG=native export TEMP=/tmp export TMPDIR=/tmp ################################################## # set NLS_LANG to resolve messy code in SQLPLUS ################################################## export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1 ################################################## # Shell setting. ################################################## umask 022 set -o vi export PS1="\${ORACLE_SID}@`hostname` \${PWD}$ " ################################################## # Oracle Alias ################################################## alias ls="ls -FA" alias vi=vim alias base='cd $ORACLE_BASE' alias home='cd $ORACLE_HOME' alias alert='tail -200f $ORACLE_BASE/admin/RACDB/bdump/alert_$ORACLE_SID.log' alias tnsnames='vi $ORACLE_HOME/network/admin/tnsnames.ora' alias listener='vi $ORACLE_HOME/network/admin/listener.ora' EOF #生效 source .bash_profile 或者 . .bash_profile
说明:ORACLE_SID与字符集等环境变量根据实际要求修改
二、Oracle 安装
-
执行安装
su - oracle xhost + cd /oracle/software/database/ ./runInstaller # 设置 DISPLAY 环境变量(当执行安装时图形化界面出不来,需执行如下命令) export DISPLAY=:0.0 # 再重新执行安装Oracle命令
-
外网不通,不更新软件,最后打补丁,NEXT
-
跳过软件更新,NEXT
-
仅安装数据库软件,NEXT
-
安装单实例,NEXT
-
语言选择,NEXT
-
安装企业版,NEXT
-
环境变量中已配置ORACLE_BASE和ORACLE_HOME,检查无误后,NEXT
-
清单目录,NEXT
-
选择相应的组,默认,NEXT
-
如与不满足的条件,可以先点击Fix&check again修复,pdksh可以忽略
-
开始安装
-
安装
-
root用户执行下面两个脚本,执行完成后点击OK
# root 用户执行 /oracle/app/oracle/product/11.2.0/root.sh /oracle/app/oraInventory/orainstRoot.sh
-
安装完成
三、安装时出现的问题
1、安装过程弹窗显示bug
解决法一:拖动鼠标可以将图片展开
解决法二:运行安装时执行如下命令:需要指定jdk路径启动(注意空格)
./runInstaller -jreLoc /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.262.b10-1.el7.x86_64/
2、启动安装乱码
解决方法:执行export LANG=en_US
命令,并重新执行安装命令:./runInstaller
3、安装过程中报错:Error in invoking target ‘agent nmhs’ of makefile
解决方法:在makefile中添加链接libnnz11库的参数
cd $ORACLE_HOME/sysman/lib
# 建议修改前备份原始文件
cp ins_emagent.mk ins_emagent.mk.bak
# 将$(MK_EMAGENT_NMECTL)修改为:$(MK_EMAGENT_NMECTL) -lnnz11
cat ins_emagent.mk | grep NMECTL
$(MK_EMAGENT_NMECTL) -lnnz11
# 保存推出后点击 Retry
4、执行检查时的错误
例:
此时可以点到具体的错误上,点击下面的 more details
来获取详细信息,如下图。可根据详细信息改问题,错误修改后点击图片上方的Fix & Check Again
最后修改时间:2021-12-17 09:23:01
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。