在CentOS 7上安装Oracle 11.2.0.3
来源:互联网 发布:诗人 知乎 编辑:程序博客网 时间:2024/06/05 07:59
一些简单的过程就不列在这里了,网上也有很多,这里主要写下遇到的一些问题,以及解决方案
CentOS 7 的环境为
$ uname -aLinux oracle 3.10.0-123.13.1.el7.x86_64 #1 SMP Tue Dec 9 23:06:09 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux注意安装的时候需要安装一个桌面系统(X-Windows + KDE 或者 Gnome),否则安装程序无法运行。
然后根据需要修改共享内存等等系统参数。这个也不写了,网上有很多。不过据我的测试,CentOS7貌似不需要修改也是可以的,Oracle在进行安装检查的时候没有报告问题(和以前的不一样)。当然为了调优数据库的性能,还是修改的好。
安装gcc,因为后面Oracle link的时候会用到
yum install gcc
安装结果为
gcc --versiongcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-16)Copyright (C) 2013 Free Software Foundation, Inc.This is free software; see the source for copying conditions. There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
(这里注意,因为Oracle需要的3.4和安装的4.8的参数的区别,后面link会失败,解决方法见后)
1. 下载,需要下载两个文件
p10404530_112030_Linux-x86-64_1of7.zip
p10404530_112030_Linux-x86-64_2of7.zip
2. 解压缩,把这两个文件解压到同一个目录下
3. 运行installer。中间依赖检查那一步,可以Skip。因为Oracle要检查是否安装了gcc,glibc等等比较老的版本(3.4)
4. 前面一切顺利。到了Link那一步,出错了。Log显示
error in invoking target 'agent nmhs'
在网上查到了解决方案:
vi $ORACLE_HOME/sysman/lib/ins_emagent.mkSearch for the line $(MK_EMAGENT_NMECTL)Change it to:$(MK_EMAGENT_NMECTL) -lnnz115. Retry重试。这就OK了。
6. 之后就没啥问题了。正常安装,执行root脚本,等等。
7. 安装后重启服务器。
8. 重启后,检查oracle用户的环境变量:
declare -x ORACLE_HOME="/home/oracle/app/oracle/product/11.2.0/dbhome_1"declare -x ORACLE_SID="orcl"9. 进入$ORACLE_HOME/network/admin,检查listener.ora:
[oracle@oracle admin]$ cat listener.ora # listener.ora Network Configuration File: /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora# Generated by Oracle configuration tools.SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = orcl) (ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_1) ) )LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.16.33.212)(PORT = 1521)) ) )ADR_BASE_LISTENER = /home/oracle/app/oracle
重点检查其中的SID,HOST,PORT,ORACLE_HOME是否正确。如果不正确客户端会报告ERROR-ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务 错误。
如果没有问题,进入$ORACLE_HOME/bin,启动监听器:
[oracle@oracle bin]$ ./lsnrctlLSNRCTL for Linux: Version 11.2.0.3.0 - Production on 16-DEC-2014 11:22:03Copyright (c) 1991, 2011, Oracle. All rights reserved.Welcome to LSNRCTL, type "help" for information.
LSNRCTL> startStarting /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin/tnslsnr: please wait...TNSLSNR for Linux: Version 11.2.0.3.0 - ProductionSystem parameter file is /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.oraLog messages written to /home/oracle/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xmlListening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.16.33.212)(PORT=1521)))Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.16.33.212)(PORT=1521)))STATUS of the LISTENER------------------------Alias LISTENERVersion TNSLSNR for Linux: Version 11.2.0.3.0 - ProductionStart Date 16-DEC-2014 11:22:07Uptime 0 days 0 hr. 0 min. 0 secTrace Level offSecurity ON: Local OS AuthenticationSNMP OFFListener Parameter File /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.oraListener Log File /home/oracle/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xmlListening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.16.33.212)(PORT=1521)))Services Summary...Service "orcl" has 1 instance(s). Instance "orcl", status UNKNOWN, has 1 handler(s) for this service...The command completed successfullyLSNRCTL>启动正常,使用sqlplus启动数据库:
[oracle@oracle bin]$ ./sqlplus '/ as sysdba'SQL> startupORACLE instance started.Total System Global Area 960372736 bytesFixed Size 2234160 bytesVariable Size 557844688 bytesDatabase Buffers 394264576 bytesRedo Buffers 6029312 bytesDatabase mounted.Database opened.
10. Centos7自带了SELINUX,关掉
11. Centos7自带了下一代防火墙firewalld,关掉,否则客户端连接过来会报TNS Timeout异常
[root@oracle ~]# service firewalld stopRedirecting to /bin/systemctl stop firewalld.service
===============================================
现在其它机器就应该可以正常连接并使用Oracle了。
另:装Oracle最省事的还是在Oracle自己的Enterprise Linux上安装。那些依赖,系统参数,等等等都不需要设置了。
- 在CentOS 7上安装Oracle 11.2.0.3
- 在CentOS上安装Oracle 11g
- CentOS 7上启动Oracle 11.2.0.3
- CentOS 7上启动Oracle 11.2.0.3
- CentOS 6.4上安装Oracle 11.2
- 在centos 5.1 上安装oracle 10g
- 在centos 5.5 i386 上安装 oracle 10g xe
- 在CentOS系统上静默安装Oracle 11gR2
- 在CentOS系统上静默安装Oracle 11gR2
- 在centOS上安装oracle出现的问题及解决方法
- 在CentOS上安装7zip
- 在CentOS 7 上安装 icinga2
- (OK) 在CentOS 7上安装Chrome
- 在CentOS 7上安装Kafka
- 在centos 7 上安装mysql
- 在CentOS 7上安装GitLab
- 如何在CentOS 7上安装MySQL
- 在VirtualBox上安装CentOS 7
- git学习笔记(1)-git基础
- 根据某一字段汇总求和
- android事件解析
- 第十六州项目二字幅串连接
- 找出N之内的所有完数
- 在CentOS 7上安装Oracle 11.2.0.3
- python安装第三方模块UnicodeDecodeError:'ascii' codec can't decode byte ···
- DEVICE_ATTR的使用
- 初探 iOS8 中的 Size Class
- Log4j配置文件解析以及加载自己的配置文件
- 建立一个二叉排序树,并计算其高度,是否为二叉平衡树
- C#集合
- SQL Server 2005 Express 开启远程连接
- 新员年终总结范文开头工年终工作总结