大家好,CentOS 7系统上部署Oracle 11g(11.2.0)数据库教程相信很多的网友都不是很明白,包括也是一样,不过没有关系,接下来就来为大家分享关于CentOS 7系统上部署Oracle 11g(11.2.0)数据库教程和的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!
第一步:检查当前服务器操作系统是64位还是32位(我的是centos7是64位)
[root@chances127 ~]# uname -a
Linux opportunity127 3.10.0-327.28.3.el7.x86_64 #1 SMP 8 月18 日星期四19:05:49 UTC 2016x86_64 x86_64 x86_64GNU/Linux
没有x86_64 x86_64 x86_64表示是32位操作系统
第2 步:检查内存
阐明:
内存大于1G(使用虚拟机安装时内存要稍大,否则安装检查无法通过)
检查内存大小#cat /proc/meminfo
交换分区是内存的1.5倍,可以根据实际情况进行调整。
检查交换分区大小#grep SwapTotal /proc/meminfo
硬盘空间必须满足所需软件的大小,要求/tmp分区不小于400M,安装目录大于4G:
检查磁盘空间使用情况#df h
检查目录空间大小#du -ch
操作:
#free-m
如果Swap小于1024,请增加内存。
1.1 增加内存
1)增加记忆力
#dd if=/dev/zero of=/tmpswap bs=1k count=2048000
2048000+0 条记录
2048000+0 条记录输出
复制了2097152000 字节(2.1 GB),169.875 秒,12.3 MB/s
2) 设置交换文件
# mkswap /tmpswap
设置交换空间版本1,大小=2097147 kB
3)立即启用交换分区文件
# 交换tmpswap
查看swap分区大小,发现增加了2G。
4) 开机时自动启用
#vi /etc/fstab
添加以下内容:
查看交换
# swapon-s
安装时我的内存满足要求,所以省略了上面的步骤(供参考)
第三步:软件检查并安装Oracle依赖的组件包:
1.binutils-2.17.50.0.6
2.compat-libstdc++-33-3.2.3
3.elfutils-libelf-0.125
4.elfutils-libelf-devel-0.125
5.elfutils-libelf-devel-static-0.125
6.gcc-4.1.2
7.gcc-c++-4.1.2
8.glibc-2.5-24
9.glibc-common-2.5
10.glibc-devel-2.5
11.glibc-headers-2.5
12.kernel-headers-2.6.18
13.pdksh-5.2.14
14.libaio-0.3.106
15.libaio-devel-0.3.106
16.libgcc-4.1.2
17.libgomp-4.1.2
18.libstdc++-4.1.2
19.libstdc++-开发-4.1.2
20.make-3.81
21.numactl-开发-0.9.8.i386
22.sysstat-7.0.2
23.unixODBC-2.2.11
24.unixODBC-devel-2.2.11
包检查命令:#rpm qa |grep 包名
软件包安装命令:#rpm ivh 软件包名称
或者
#yum安装包名称
第四步:关闭防火墙
注意:centos7默认使用的防火墙是firewall。虽然也安装了iptables,但是没有启用。
所以关闭防火墙的操作是:
systemctl stop firewalld.service #停止防火墙
systemctl禁用firewalld.service#禁用防火墙启动
参考文档:http://www.cnblogs.com/silent2012/archive/2015/07/28/4682770.html
第5步:关闭SELIINUX
#vi /etc/selinux/config 确保以下内容
SELINUX=禁用
第五步:配置系统环境
1.1 Linux内核参数设置
vi /etc/sysctl.conf ,在行尾添加以下内容
fs.文件最大值=6815744
fs.aio-max-nr=1048576
net.ipv4.ip_local_port_range=9000 65500
net.core.rmem_default=262144
net.core.rmem_max=4194304
net.core.wmem_default=262144
网络核心.wmem_max=1048576
内核.sem=250 32000 100 128
kernel.shmall=2097152(按照系统默认即可,不要修改)
kernel.shmmax=536870912(按照系统默认即可,不要修改)
#sysctl p 使内核参数生效
Linux下安装Oracle时对内核参数的要求:
kernel.shmall 是物理内存除以页面大小
kernel.shmmax 是物理内存的一半
fs.file-max是进程的512倍(比如128个进程,就是65536)
评论:
下图中的内核参数是我安装oracl时的参数设置:
部分解释:
以kernel.sem=250 32000 100 128为例:
250是参数semmsl的值,它表示一个信号量集中可以包含的最大信号量数量。
32000是参数semmns的值,表示系统允许的最大信号量数量。
100 是参数semopm 的值,它表示单个semopm() 调用可以对信号量集合执行的操作数。
128是参数semmni的值,代表系统信号量集的总数。
为什么需要设置参数:
其实oracle中有一个文件,cvu_prereq.xml文件。
该文件包含参数值和依赖包,Oracle安装时依赖这些包。它将在静默安装过程中受到监控。如果监控失败,则无法进行安装。
阐明:
我安装的时候,参数监控失败(其实安装前我已经设置过参数了,不知道为什么设置的参数值不见了,可能是因为:执行静默安装时检查了各种错误,一直重新执行,导致参数丢失,其他原因暂时未知,后来根据报错重新设置了参数值)
执行过程(当然,按照上面的步骤,这一步还不能进行,只是为了说明为什么需要安装参数设置和依赖包)
[oracle@chances127 数据库]$ ./runInstaller -silent -responseFile /opt/oracle_11g/database/response/db_install.rsp
启动Oracle 通用安装程序.
检查临时空间:必须大于120MB。实际已通过286724 MB
检查交换空间: 必须大于150 MB。实际已通过16383 MB
准备从/tmp/OraInstall2016-09-20_10-41-12AM 启动Oracle Universal Installer。请稍候.[oracle@chances127 数据库]$ [警告] [INS-32018] 所选的Oracle 主目录位于Oracle 基目录之外。
原因: 选定的Oracle 主目录位于Oracle 基本目录之外。
操作: Oracle 建议将Oracle 软件安装在Oracle 基本目录中。请相应地调整Oracle 主目录或Oracle 基目录。
[警告] [INS-32055] 主产品清单位于Oracle 基本目录中。
原因: 主产品库存位于Oracle 基本目录中。
操作: Oracle 建议将此主产品清单放置在Oracle 基本目录之外的位置。
[致命] [INS-13013] 目标环境不满足某些必需的要求。
原因: 未满足某些必需的先决条件。检查日志以获取详细信息。 /tmp/OraInstall2016-09-20_10-41-12AM/installActions2016-09-20_10-41-12AM.log
操作: 从日志/tmp/OraInstall2016-09-20_10-41-12AM/installActions2016-09-20_10-41-12AM.log 中标识失败的先决条件检查列表。然后,从日志文件或安装手册中找到满足这些先决条件的适当配置并手动修复。
注意:fatal表示安装失败,需要重新安装。
警告信息。你可以暂时不管它
部分日志信息:
错误消息:PRVF-7543 : 操作系统内核参数“wmem_max”在节点“chances127”上没有适当的值[expected=“1048576”;发现="262144"]
ErrorMessage:PRVF-7543: 操作系统内核参数“rmem_max”在节点“chances127”上没有适当的值[expected=“4194304”;发现="262144"]。
ErrorMessage:PRVF-7543: 操作系统内核参数"ip_local_port_range" 在节点"chances127" 上没有适当的值[expected=" Between900065500";发现="之间102465000"]。
ErrorMessage:PRVF-7543: 操作系统内核参数“file-max”在节点“chances127”上没有适当的值[expected=“6815744”;发现="6553600"]。
INFO:Cause: 内核参数值不满足要求。
:ErrorMessage:PRVF-7543: 操作系统内核参数“semmni”在节点“chances127”上没有适当的值[expected=“128”;发现="0"]。
INFO:Cause: 内核参数值不满足要求。
1.2 修改进程数和最大会话数
#vi /etc/security/limits.conf,在行尾添加以下内容
甲骨文软nproc 2047
Oracle 硬nproc 16384
oracle 软nofile 1024
oracle 硬文件65536
:
以我的为例:
1.3 关联设置
#vi /etc/pam.d/login 在行尾添加以下内容
需要会话pam_limits.so
如果操作系统是x64,那么
需要会话/lib64/security/pam_limits.so
以我的为例:
注意:当我安装它时,此配置是使用会话所需的pam_limits.so 配置的。这可能是安装失败的原因。由于是第一次安装,不知道是不是这个原因。
1.4 在/etc/profile中添加以下内容,红色的是实际的oracle用户(只需添加到行尾即可)
导出LIBXCB_ALLOW_SLOPPY_LOCK=true
如果[ $USER="oracle" ];然后
如果[ $SHELL="/bin/ksh" ];然后
ulimit -p 16384
ulimit -n 65536
别的
ulimit -u 16384 -n 65536
菲
掩码022
菲
取消设置我
root用户下使用命令source profile使环境变量生效。
#cd /等
#来源简介
以我的为例
阐明:
当时这个配置,我配置的是:
#vi /etc/配置文件
如果[ $USER="oracle" ];然后
如果[ $SHELL="/bin/ksh" ];然后
ulimit -p 16384
ulimit -n 65536
别的
ulimit -u 16384 -n 65536
菲
菲
导出LIBXCB_ALLOW_SLOPPY_LOCK=true 和未设置的i 丢失。当时安装并没有成功。我不知道这是不是原因之一。
1.5 修改/etc/redhat-release文件为系统支持的版本
红帽-4
以我的为例:
阐明:
其实我也不知道为什么要修改系统版本。我也安装失败。检查信息:
由于oracle10g发布时centos6/7还没有发布,所以oracle10g并没有确认对centos6/7的支持。需要修改该文件,让oracle10g支持centos6/7。
编辑/etc/redhat-release 文件
# vi /etc/redhat-release 修改内容Centos Linux release 7.1.1503 (Core) 为redhat 4
不过,我正在安装Oracle11g。我不确定是否需要修改版本号。不过为了防止安装失败,我还是修改了版本号。
第一次安装的时候,由于很多错误和原因,我一筹莫展,只能尝试当医生。
1.6 修改主机名
vi /etc/hosts 文件
127.0.0.1 本地主机本地主机.本地域本地主机4 本地主机4.本地域4
:1 本地主机本地主机.本地域本地主机6 本地主机6.本地域6
192.168.20.237 主机名
#hostname 主机名
以我的为例
上述准备工作完成后,开始安装过程:
第一步:创建oracle用户和用户组
#groupaddoinstall(创建oinstall组)
#groupadddba(创建dba 组)
#useradd -g oinstall -G dbaoracle(创建新用户oracle,将其主组设置为oinstall,辅助组设置为dba)
#id oracle(检查结果)
#passwd oracle(设置oracle用户密码)
第二步:创建oracle安装目录
#mkdir -p /opt/oracle_11g/product/110201/db_1
注:1.我是进行静默安装,报了如下错误(其实是一个警告,可以忽略)
准备从以下地址/opt/oracle_11g/u01/tmp/OraInstall2016-09-19_01-52-29PM 启动Oracle Universal Installer。请稍候.[oracle@chances127 数据库]$ [警告] [INS-32055] 主要产品清单位于Oracle 基本目录中。
原因: 主产品清单位于Oracle 基本目录中。
操作:Oracle 建议将此主产品清单放置在Oracle 基本目录以外的位置
2、根据警告信息:我删除了创建的product/110201/db_1,并在opt目录下创建了一个安装目录如:/opt/product/110201/db_1
特别要注意的是:最好不要一一创建安装目录,最好不要一一修改用户和用户组。
原因:第一:不仅麻烦,而且还容易出错。 oracle_11g目录及其所有子目录必须是oracle用户和oinstall组。
以我的为例:我在/opt/目录下重新创建了三个目录,product 110201 db_1。由于我是root用户操作的,所以当时并没有修改为oracle用户和oinstall组。结果:执行静默安装时,出现以下错误:
准备从/tmp/OraInstall2016-09-19_11-37-25AM 启动Oracle Universal Installer。请稍候. [oracle@chances127 数据库]$ [致命] [INS-32012] 无法创建目录。
原因: 未授予创建目录的正确权限,或者卷中没有剩余空间。
操作: 请检查您对所选目录的权限或选择其他目录。
此会话的日志当前保存为: /tmp/OraInstall2016-09-19_11-37-25AM/installActions2016-09-19_11-37-25AM.log。如果您想保留此日志,Oracle 建议将其从临时位置移动到更持久的位置
我一直以为/tmp没有足够的空间。 tmp是根目录下的目录,不是分区。我对Linux了解不多,就不详细说了。我指定了一个新目录。
# vim /home/oracle
#ll-a
# vim .bash_profile
添加以下变量:
导出TEMP=/opt/oracle_11g/u01/tmp
导出TMPDIR=/opt/oracle_11g/u01/tmp
u01和tmp是oracel_11g目录下新建的两个目录。
但是执行:/runInstaller -silent -responseFile 还是报错
准备从以下地址/opt/oracle_11g/u01/tmp/OraInstall2016-09-19_11-37-25AM 启动Oracle Universal Installer。请稍候.[oracle@chances127 数据库]$ [致命] [INS-32012] 无法创建目录。
原因: 未授予创建目录的正确权限,或者卷中没有剩余空间。
操作: 请检查您对所选目录的权限或选择其他目录。
此会话的日志当前保存为: /opt/oracle_11g/u01/tmp/OraInstall2016-09-19_11-37-25AM/installActions2016-09-19_11-37-25AM.log。如果您想保留此日志,Oracle 建议将其从临时位置移动到更持久的位置
检查opt/oracle_11g/u01/tmp。用户和用户组已设置为oraclehe oinstall。最后检查了目录/opt/product/110201/db_1:发现product 110201 db_1这三个目录下的用户和用户组都是root。最后执行:#chown oracle:oinstall 产品
# chown oracle:oinstall 110201
#chown oracle:oinstall db_1
发现问题:
一一设置比较麻烦,而且很容易漏设置,所以按照以下两个步骤即可完成:
#mkdir -p /opt/oracle_11g/product/110201/db_1
#chown -R oracle.oinstall /opt/oracle_11g/
特别声明:由于误导性的警告消息,我删除了该目录并将其移至基本目录之外以重新创建产品目录。结果新建的目录并没有修改用户和用户组,导致安装了Oracle。日志信息无法写入/tmp
执行成功后自动生成product/110201/db_1目录下的内容:/runInstaller
当我安装时创建目录结构时:
/opt/oracle_11g/(oraclea安装压缩包)
/opt/product/110201/db_1/(oracle安装路径)
第三步:更改oracle安装目录的用户和用户组
#chown -R oracle.oinstall /opt/oracle_11g/
第四步:授予安装目录权限
#chmod -R 755 /opt/oracle_11g/
步骤5:设置用户环境变量
#vi /home/oracle/.bash_profile
export ORACLE_BASE=/opt/oracle_11g//软件安装基目录
export ORACLE_SID=orcl //实例名
export ORACLE_HOME=$ORACLE_BASE/product/110201/db_1 //软件安装产品目录
导出路径=$PATH:$HOME/bin:$ORACLE_HOME/bin
#source /home/oracle/.bash_profile 配置生效
#env |more 检查配置的环境变量是否正确
ORACLE_BASE下有admin和product
ORACLE_HOME下有ORACLE命令、连接库、安装助手、监听器等。
这只是ORACLE自己的定义习惯。 ORACLE_HOME 比ORACLE_BASE 目录更深。也就是说:ORACLE_HOME=$ORACLE_BASE/product/version。
ORACLE_BASE是Oracle的根目录,ORACLE_HOME是Oracle产品的目录。
简单来说,如果安装了两个版本的Oracle,那么可以有一个ORACLE_BASE,但是有两个ORACLE_HOME。
全局数据库名用于区分分布式数据库不同机器上的实例; SID用于区分同一台机器上的不同实例。
即,一为外在区分;一是为了内部区别。
以我的为例:
注:以下是安装oracle10g时设置的内容。
#vi home/sc-oracle/.bash_profile 用oracle用户编辑,添加以下内容
# .bash_配置文件
# 获取别名和函数
如果[ -f ~/.bashrc ];然后。 /.bashrc
菲
# 用户特定的环境和启动程序
#对于sc-Oracle
导出ORACLE_BASE=/oracle;
导出ORACLE_HOME=/oracle/product/db_1;
导出ORACLE_SID=ORCL;
导出路径=$PATH:$HOME/bin:$ORACLE_HOME/bin;
导出LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/lib64/;
如果[ $USER="sc-oracle" ];然后
如果[ $SHELL="/bin/ksh" ];然后
ulimit -p 16384
ulimit -n 65536
别的
ulimit -u 163
84 -n 65536 fi fi #PATH=$PATH:$HOME/bin #export PATH 使环境变量生效 $ source .bash_profile 但是我安装时是用root用户添加的,且export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/lib64/;与我设置的export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib有点不一样,不知道有没有影响,但是我安装成功了 到此配置结束:下面正式开始oracle安装吧: 第一步:将oracle11g安装压缩包上传至/opt/oracle_11g/目录下 第二步:解压缩 #unzip linux_11gR2_database_1of2.zip #unzip linux_11gR2_database_2of2.zip 说明:上面两个压缩包要放在同一个目录下解压缩 如果有人尝试:将这两个压缩包放到不同目录下解压缩,解压后的文件都是database文件,有人如果疑问:在同一个目录下解压缩database不会被覆盖吗?其实则不然:这个两个压缩包解压出来是同一个文件,只是把一个大的文件分成了两个部分 第三步:编辑oracle数据库安装应答文件 1 在/opt/oracle_11g/database/response目录下有三个应答文件 2# vi db_install.rsp修改以下内容: 供参考: RESPONSEFILE_VERSION=2.2.1.0.0 UNIX_GROUP_NAME="oinstall" ORACLE_HOME_NAME="OraDb10g_home1" ORACLE_HOME="/oracle/product/db_1" SHOW_INSTALL_PROGRESS_PAGE= true SHOW_END_OF_INSTALL_MSGS= true COMPONENT_LANGUAGES={"zh_CN"} s_nameForDBAGrp= "dba" s_nameForOPERGrp="dba" INSTALL_TYPE="EE" n_configurationOption=3 RESTART_SYSTEM=false RESTART_REMOTE_SYSTEM=false 以我的为例: oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0 ORACLE_HOSTNAME=chances127 UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/opt/oracle_11g/oraInventory SELECTED_LANGUAGES=en,zh_CN,zh_TW ORACLE_HOME=/opt/product/110201/db_1 ORACLE_BASE=/opt/oracle_11g oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=true oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=oinstall oracle.install.db.CLUSTER_NODES= oracle.install.db.config.starterdb.characterSet=AL32UTF8 oracle.install.db.config.starterdb.memoryOption=true oracle.install.db.config.starterdb.memoryLimit=512 oracle.install.db.config.starterdb.installExampleSchemas=false oracle.install.db.config.starterdb.enableSecuritySettings=true oracle.install.db.config.starterdb.password.ALL=oracle oracle.install.db.config.starterdb.password.SYS= oracle.install.db.config.starterdb.password.SYSTEM= oracle.install.db.config.starterdb.password.SYSMAN= oracle.install.db.config.starterdb.password.DBSNMP= oracle.install.db.config.starterdb.control=DB_CONTROL oracle.install.db.config.starterdb.gridcontrol.gridControlServiceURL= oracle.install.db.config.starterdb.dbcontrol.enableEmailNotification=false oracle.install.db.config.starterdb.dbcontrol.emailAddress= oracle.install.db.config.starterdb.dbcontrol.SMTPServer= oracle.install.db.config.starterdb.automatedBackup.enable=false oracle.install.db.config.starterdb.automatedBackup.osuid= oracle.install.db.config.starterdb.storageType= oracle.install.db.config.starterdb.fileSystemStorage.recoveryLocation= oracle.install.db.config.asm.diskGroup= oracle.install.db.config.asm.ASMSNMPPassword= MYORACLESUPPORT_USERNAME= MYORACLESUPPORT_PASSWORD= SECURITY_UPDATES_VIA_MYORACLESUPPORT= PROXY_PORT= PROXY_PWD= 上面的参数不是都要修改的,按照我上面供参考的参数进行修改就ok了,其他参数没有的值的可以不用管 第四步:以上提到的所有操作都是在root用户下进行操作的: 下面开始要正式安装oracle了,所以先要切换至oracle用户: # su - oracle 进入到/opt/oracle_11g/database下执行静默安装: #cd /opt/oracle_11g/database 第一步:静默安装 # ./runInstaller -silent -responseFile /opt/oracle_11g/database/response/db_install.rsp 注意文件位置视自己刚刚修改的文件位置而定 这时如果报错类似这样的错: 解决办法:如果没有指定目录,则默认日志写入到/tmp下 第一,先检查/tmp所在分区空间大小是否大于60兆 第二:检查product/110201/db_1 目录用户和用户组是否是oracle和oinstall 第三:检查/tmp有无写入权限 上述的报错:我是重新指定oracle安装日志的写入目录,但是还是提示不能写入或空间不够,最后原因:是因为:我之前把product/110201/db_1删除,到基目录外重新创建此目录,没有修改此目录的用户和用户组,最后将此目录修改成oracle用户,变可解决此问题 不过,找到问题原因了,我就将指定的目录给注释掉了 再重新执行: # ./runInstaller -silent -responseFile /opt/oracle_11g/database/response/db_install.rsp 发现没有上述报错,但如果又出现其他报错如: 根据报错原因:到日志目录下,找到原因: 第一:内核参数监测不过 第二:依赖包没有装全 参数的问题: 其实内核参数我都是设置好了的,不知道为什么再次检查内核参数的时候,发现丢失了,之后又再重新设置了一遍 依赖包的问题: libstdc++-3.4.6 (i386) libgcc-3.4.6 (i386) libaio-devel-0.3.105 (i386) compat-libstdc++-33-3.2.3 (i386) glibc-2.3.4-2.41 (i686) unixODBC-devel-2.2.11 pdksh-5.2.14 发现少了上述的依赖包:而且这些依赖还是32位的,其实我的系统是64位的,oracle11g也是64位的,这些依赖包我也是都装了的,只是oracle11g不认 原来是因为:oracle11g安装,不仅要依赖64位的 还要依赖32位的,而centos使用yum安装这些依赖的包的时候,是不去区分你安装的是32位的还是64位的,centos是64位的,yum安装自然 默认装的是64位的,所以这是oracle自己的一个认证漏洞: 解决办法: 在oracle里面有一个cvu_prereq.xml文件 #vim cvu_prereq.xml 找到i386,将其全部改成i686 再执行yum安装上述依赖包 #yum install libgcc.i686(其他依赖包也是这么安装) 注意: pdksh依赖包,在centos7里不叫此名,而是ksh(特别要注意) compat-libstdc这个依赖使用yum是找不到的,所以这个安装包,我当时是自己去下载的 我的百度云盘有这个依赖包 好了解决上述问题后,再重新执行以下吧 # ./runInstaller -silent -responseFile /opt/oracle_11g/database/response/db_install.rsp [oracle@chances127 database]$ ./runInstaller -silent -responseFile /opt/oracle_11g/database/response/db_install.rsp 正在启动 Oracle Universal Installer... 检查临时空间: 必须大于 120 MB。 实际为 286724 MB 通过 检查交换空间: 必须大于 150 MB。 实际为 16383 MB 通过 准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2016-09-20_11-09-22AM. 请稍候...[oracle@chances127 database]$ [WARNING] [INS-32018] 所选 Oracle 主目录位于 Oracle 基目录外部。 原因: 所选 Oracle 主目录位于 Oracle 基目录外部。 操作: Oracle 建议在 Oracle 基目录中安装 Oracle 软件。请相应调整 Oracle 主目录或 Oracle 基目录。 [WARNING] [INS-32055] 主产品清单位于 Oracle 基目录中。 原因: 主产品清单位于 Oracle 基目录中。 操作: Oracle 建议将此主产品清单放置在 Oracle 基目录之外的位置中。 [WARNING] [INS-13014] 目标环境不满足一些可选要求。 原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/tmp/OraInstall2016-09-20_11-09-22AM/installActions2016-09-20_11-09-22AM.log 操作: 从日志 /tmp/OraInstall2016-09-20_11-09-22AM/installActions2016-09-20_11-09-22AM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。 [WARNING] [INS-32018] 所选 Oracle 主目录位于 Oracle 基目录外部。 原因: 所选 Oracle 主目录位于 Oracle 基目录外部。 操作: Oracle 建议在 Oracle 基目录中安装 Oracle 软件。请相应调整 Oracle 主目录或 Oracle 基目录。 [WARNING] [INS-32055] 主产品清单位于 Oracle 基目录中。 原因: 主产品清单位于 Oracle 基目录中。 操作: Oracle 建议将此主产品清单放置在 Oracle 基目录之外的位置中。 [WARNING] [INS-13014] 目标环境不满足一些可选要求。 原因: 不满足一些可选的先决条件。有关详细信息, 请查看日志。/tmp/OraInstall2016-09-20_11-09-22AM/installActions2016-09-20_11-09-22AM.log 操作: 从日志 /tmp/OraInstall2016-09-20_11-09-22AM/installActions2016-09-20_11-09-22AM.log 中确定失败的先决条件检查列表。然后, 从日志文件或安装手册中查找满足这些先决条件的适当配置, 并手动进行修复。 可以在以下位置找到本次安装会话的日志: /opt/oracle_11g/oraInventory/logs/installActions2016-09-20_11-09-22AM.log [oracle@chances127 database]$ [oracle@chances127 database]$ 以下配置脚本需要以 "root" 用户的身份执行。 #!/bin/sh #要运行的 Root 脚本 /opt/oracle_11g/oraInventory/ orainstRoot.sh /opt/product/110201/db_1/ root.sh 要执行配置脚本, 请执行以下操作: 1. 打开一个终端窗口 2. 以 "root" 身份登录 3. 运行脚本 4. 返回此窗口并按 "Enter" 键继续 Successfully Setup Software. 看到安装结果信息,好多警告,以为没安装成功,但是查阅资料: 只要看到Successfully Setup Software.表明oracle安装成功了 第二步:执行脚本 按照上面的安装成功信息提示: 切换至root用户分别执行信息中提到的脚本 1 执行脚本orainstRoot.sh #/opt/oracle_11g/oraInventory/orainstRoot.sh 2 执行脚本root.sh #/opt/product/110201/db_1/root.sh 第三步:安装监听 编辑oracle安装目录下的netca.rsp应答文件,地址为:/database/response/netca.rsp,主要查看以下参数配置: INSTALL_TYPE=""custom""安装的类型 LISTENER_NUMBER=1监听器数量 LISTENER_NAMES={"LISTENER"}监听器的名称列表 LISTENER_PROTOCOLS={"TCP;1521"}监听器使用的通讯协议列表 LISTENER_START=""LISTENER""监听器启动的名称 运行安装命令: #/opt/product/110201/db_1/bin/netca /silent /responseFile /opt/oracle_11g/database/response/netca.rsp 第四步:添加数据库实例 1、修改/database/response/dbca.rsp(就是解压安装文件目录下的) 根据数据库建立方式的不同编辑不同的数据库库选项。 比如在本次安装过程中设置了下列参数:(注意下面参数视情况而定啦不要照抄该选项原文件都有说明的) RESPONSEFILE_VERSION = "10.0.0" OPERATION_TYPE = "createDatabase" GDBNAME = "ORCL" --数据库全局名称 SID = "ORCL" --这个sid必须要和前面的/home/oracle/.bash_profile文件中的sid相同 TEMPLATENAME = "New_Database.dbt" SYSPASSWORD = "ches"用户的初始密码 SYSTEMPASSWORD = "ches"初始密码 DATAFILEDESTINATION ="/oracle/oradata/" RECOVERYAREADESTINATION="/oracle/flash_recovery_area" STORAGETYPE=FS CHARACTERSET = "ZHS16GBK"--数据库字符集(中文为ZHS16GBK) MEMORYPERCENTAGE = "40" SCRIPTDESTINATION ="/oracle/admin/ora10g/scripts" EMCONFIGURATION=”LOCAL” SYSMANPASSWORD = "ches” DBSNMPPASSWORD = "ches” 以我的为例:(只是部分参数,其他的参考上面给的参数即可) DATAFILEDESTINATION="/opt/oracle_11g/oracledata/" RECOVERYAREADESTINATION="/opt/oracle_11g/flash_recovery_area" CHARACTERSET="ZHS16GBK" NATIONALCHARACTERSET= "UTF8" TEMPLATENAME="General_Purpose.dbc” 2 安装 #/opt/product/110201/db_1/bin/dbca - silent - responseFile /opt/oracle_11g/database/response/dbca.rsp 如果报错:类似下图中的错误: 解决办法: #export DISPLAY=IP:1.0 ip填写服务器的ip 再重新安装一次: #/opt/product/110201/db_1/bin/dbca - silent - responseFile /opt/oracle_11g/database/response/dbca.rsp 可以发现上述错误解决了 ,但是如果又有新的报错:如下: 解决办法: /opt/product/110201/db_1/assistants/dbca/templates到这个目录下添加存在的模板 修改/database/response/dbca.rsp,将TEMPLATENAME都要换掉,换成:General_Purpose.dbc 再重新安装一次: 安装成功! 第五步:启动监听 到bin目录下启动监听: /opt/product/110201/db_1/bin bin#./lsnrctl start 如果报下面错误: TNS-01106: Message 1106 not found; No message file for product=network, facility=TNS [LISTENER] 解决办法: 查看监听程序的配置文件 cat /opt/product/110201/db_1/network/admin/listener.ora 添加:(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) 以我的为例; 我的listener.ora文件多了一个配置: SID_LIST_LSNR = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (ORACLE_HOME = /opt/product/110201/db_1) (SID_NAME = orcl) ) ) 其实我也不知道这个要不要加上去,只是我启动监听始终报下面这个错:所以多加了一个配置 TNS-01106: Message 1106 not found; No message file for product=network, facility=TNS [LISTENER] 我重新登陆服务,再次启动监听: bin#./lsnrctl start 发现启动成功! 通过查看监听状态: status ready表示oracle服务是正长启动的 第六步:启动数据库实例: 到这个目录下启动数据库实例: /opt/product/110201/db_1/bin bin#./dbstart 如果报如下错误: 请检查oracle_home路径是否正确,如果路径没问题,一定是/etc/oratab文件路径写错了 果不其然:路径与oracle_home不一致(但是是我从别的地方copy过来的,忘记改路径了) 再重新启动数据库实例: 发现启动成功! 第七步:设置开始自动 1修改$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut文件: $vi $ORACLE_HOME/bin/dbstart $vi $ORACLE_HOME/bin/dbshut 找到ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME 2修改/etc/oratab文件 $ vi /etc/oratab 找到最后一行: orcl:/opt/product/110201/db_1:N 最后设置的是“N”(此环境只有一个实例,所以只有一行配置语句),需要把“N”修改成“Y”。保存退出。 3修改/etc/rc.d/rc.local文件 把emctl start dbconsole 、lsnrctl start和dbstart添加到rc.local文件中,命令如下: #vi /etc/rc.d/rc.local 添加: su oracle -lc "home/oracle_11/app/product/11.2.0/dbhome_1/bin/emctl start dbconsole" //填写可执行程序的完整路径,填写$ORACLE_HOME/bin/环境变量加目录加可执行程序不行,不知道为什么 su oracle -lc " home/oracle_11/app/product/11.2.0/dbhome_1/bin/lsnrctl start " su oracle -lc home/oracle_11/app/product/11.2.0/dbhome_1/bin/dbstart 注意:命令有空格,要用引号 以我的为例: #reboot重启服务监测是否可以开机自启动: 发现是不能开机自启动的: 如果是在以前的centos版本中,这样就可以了。但是centos7 的/etc/rc.local不会开机执行 可以了。 原因: 所以解决办法: 1 确认了/etc/rc.local的权限 到此:oracel11g安装以及配置就全部完成了! 接下就可以用oracle客户端连接数据库了 历史遗留问题: 本次安装采用的是静默安装 1 开始是采用图形界面安装:但是执行xhost+一直报错: xhost: unable to open display "" 给的解决办法都是export DISPLAY=localhost:1,但是设置了还是不行 这个问题,现在暂时无解决办法 2 启动控制台em一直报错:这个问题现在也无解决办法CentOS 7系统上部署Oracle 11g(11.2.0)数据库教程的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、CentOS 7系统上部署Oracle 11g(11.2.0)数据库教程的信息别忘了在本站进行查找哦。
【CentOS 7系统上部署Oracle 11g(11.2.0)数据库教程】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
终于可以试一下自己搭建Oracle数据库了
有18位网友表示赞同!
CentOS系统还是比较常用的吧,稳定而且操作简单
有20位网友表示赞同!
听说Oracle 11g还是挺好用的,值得学习一下
有7位网友表示赞同!
准备学习安装Oracle数据库,这个教程看起来不错
有14位网友表示赞同!
想要自己搭建一个测试环境,刚好可以试试看
有5位网友表示赞同!
最近在看关于数据库的资料,正好碰到这个帖子
有14位网友表示赞同!
不知道安装步骤会不会太复杂,还是建议一步步来
有13位网友表示赞同!
Oracle 11g 的教程网上找不太到,感谢分享
有7位网友表示赞同!
对于初学者来说,这种详细的教程非常实用
有14位网友表示赞同!
之前用过Oracle数据库,现在想了解一下安装过程
有5位网友表示赞同!
学习新的技能总是很让人兴奋,期待成功
有6位网友表示赞同!
感觉这个版本应该比较经典了,值得探索一下
有17位网友表示赞同!
准备以后做数据分析的工作,希望学习到这方面的知识
有10位网友表示赞同!
感谢作者分享这个有用的教程,希望能顺利完成安装
有16位网友表示赞同!
最近在读Oracle数据库相关的书籍,这个内容刚好派上用场
有17位网友表示赞同!
希望这个教程能帮助我快速入门Oracle数据库
有10位网友表示赞同!
以前只用过一些简单的数据库,想尝试一下更强大的系统
有15位网友表示赞同!
对数据库的学习一直很有兴趣,希望能深入了解其中原理
有17位网友表示赞同!
想要自己搭建一个应用程序的数据库环境,正好可以用这个教程
有13位网友表示赞同!
学习新的技术永远不会嫌晚
有13位网友表示赞同!