CentOS 6.5下安装Oracle 11g(转)
最近开始学习CentOS使用,做些记录。
参考文献:Cent OS 6_5(x86_64)下安装Oracle 11g
一、硬件要求
1、内存&swap
Minimum:1 GB of RAM
	Recommended: 2 GB of RAM or more

检查内存情况
- #grep MemTotal /proc/meminfo
 - #grep SwapTotal /proc/meminfo
 
2、硬盘
由于CentOS安装后差不多有4~5G,再加上Oracle等等的安装,所以请准备至少10G的硬盘空间。
检查磁盘情况
#df -h
二、软件
系统平台:CentOS6.5(x86_64)
(我这里安装的是DeskTop版。安装精简版的需要单独yum桌面程序)
Oracle版本:Oracle11g
p13390677_112040_Linux-x86-64_1of7.zip、p13390677_112040_Linux-x86-64_2of7.zip
三、系统安装注意
系统安装时一定要安装桌面模式,否则无法安装oracle,另外请勿开启SELinux,oracle官方不建议使用SELinux,防火墙也请暂时关闭,减少安装时的困扰。为防止Oracle安装过程中出现乱码,建议使用英文作为系统语言,进行Oracle的安装工作。
本文中所描述的系统命令,未经特殊标示,均为“#”代表root权限,“$”代表oracle权限。
四、安装Oracle前的系统准备工作
首先,请先以root账号登入作一些前置设定作业。
1.关闭、防火墙(SELinux临时关闭命令:setenforce 0 防火墙临时关闭命令:service iptables stop)
2.安装依赖包
以下RPM包拷贝到/opt目录下,进行opt目录,执行以下命令。
- #rpm -ivh libstdc++-devel-4.4.7-4.el6.x86_64.rpm
 - #rpm -ivh mpfr-2.4.1-6.el6.x86_64.rpm
 - #rpm -ivh cpp-4.4.7-4.el6.x86_64.rpm
 - #rpm -ivh ppl-0.10.2-11.el6.x86_64.rpm
 - #rpm -ivh cloog-ppl-0.15.7-1.2.el6.x86_64.rpm
 - #rpm -ivh gcc-4.4.7-4.el6.x86_64.rpm
 - #rpm -ivh gcc-c++-4.4.7-4.el6.x86_64.rpm
 - #rpm -ivh compat-libcap1-1.10-1.x86_64.rpm
 - #rpm -ivhcompat-libstdc++-33-3.2.3-69.el6.x86_64.rpm
 - #rpm -ivh libaio-devel-0.3.107-10.el6.x86_64.rpm
 - #rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
 - #rpm -ivhelfutils-libelf-devel-0.152-1.el6.x86_64.rpm
 
3.创建用户和组
(1)建立群组oinstall、dba
- #groupadd oinstall
 - #groupadd dba
 
(2)新增使用者oracle并将其加入dba群组
- #useradd -m -g oinstall -G dba oracle
 
(4)测试oracle账号是否建立完成
- #id oracle
 
(5)建立oracle的新密码
- #passwd oracle
 

4.将oracle使用者加入到sudo群组中
- #vi /etc/sudoers
 找到
root ALL=(ALL) ALL
这行,并且在底下再加入
- oracle ALL=(ALL) ALL
 输入wq!(由于这是一份只读文档所以需要再加上!)并且按下Enter
5、配置系统内核参数
- #vi /etc/sysctl.conf
 修改和添加以下内容:
- fs.aio-max-nr= 1048576
 - fs.file-max= 6815744
 - #kernel.shmall= 2097152
 - #官方文档kernel.shmmax= 536870912,实际软件中需要kernel.shmmax= 980742144
 - #kernel.shmmax = 980742144
 - 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
 - vm.hugetlb_shm_group= 501
 - #oracle用户组dbaid 为501,以彻底解决ORA-27125错误。
 - #id oracle
 可以看到oracle组dbaid 为501
会有一些与目前的参数重复的,就修改成文件上提供的。
编辑完之后,储存,然后执行:
- #sysctl –p
 启用刚刚所做的变更。
6、编辑/etc/security/limits.conf
- #vi /etc/security/limits.conf
 添加以下四行
- oracle soft nproc 2047
 - oracle hard nproc 16384
 - oracle soft nofile 1024
 - oracle hard nofile 65536
 
7、编辑/etc/pam.d/login
- #vi /etc/pam.d/login
 添加以下两行
- sessionrequired /lib64/security/pam_limits.so
 - session requiredpam_limits.so
 
8、修改/etc/profile
- #vi /etc/profile
 将以下代码新增到profile档案中。
- if [ $USER = "oracle" ]; then
 - if [ $SHELL = "/bin/ksh"]; then
 - ulimit -p 16384
 - ulimit -n 65536
 - else
 - ulimit -u 16384 -n 65536
 - fi
 - fi
 
10、创建Oracle安装文件夹以及数据存放文件夹
- #mkdir/opt/oracle
 - #mkdir /opt/oracle/112
 - #mkdir/opt/oraInventory
 - #chown -R oracle:dba /opt/oracle
 - #chown-R oracle:dba /opt/oraInventory
 - #chown-R oracle:dba /opt
 
11、配置Linux主机
检查/etc/hosts文件中是否有localhost的记录(指向127.0.0.1即可),若没有的话,在后面配置Oracle监听的时候会出现一些问题,导致无法启动监听,在此手工添加此记录即可。
增加以下配置IP地址加主机名称 映射
- 192.168.1.101CentOS-Oracle
 (此处前面的192.168.1.101为安装机器的IP地址 CentOS-Oracle为安装机器的主机名称 请各位根据自己的情况填写)
第一阶段到此完毕,接下来,完成这些设定之后,请先注销root账号,并且以oracle账号再次登入系统。
12、配置oracle用户环境变量
- #su oracle
 - $cd /home/oracle
 - $ vi .bash_profile
 修改并加入以下內容
- ORACLE_BASE=/opt/oracle #上面创建的Oracle安装文件夹
 - ORACLE_HOME=$ORACLE_BASE/112
 - ORACLE_SID=orcl
 - LD_LIBRARY_PATH=$ORACLE_HOME/lib
 - PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
 - exportORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH
 - #PATH=$PATH:$HOME/bin
 - #exportPATH
 保存后使用如下命令,使设置生效:
- $source /home/oracle/.bash_profile
 
五、安装Oracle,并进行相关设置
1、解压缩安装文件
将下载的p13390677_112040_Linux-x86-64_1of7.zip、p13390677_112040_Linux-x86-64_2of7.zip放至即将安装oracle的文件夹/opt/oracle
回到终端模式并且进入到oracle文件夹:
- $cd /opt/oracle
 解压缩
- $unzip p13390677_112040_Linux-x86-64_1of7.zip
 - $unzip p13390677_112040_Linux-x86-64_2of7.zip
 
接着会看到一连串的解压缩动作。
解压缩完成会在同一个文件夹中看到database的文件夹,请进入到database文件夹中:
- $cd database
 
准备执行数据库安装,如果你的操作系统是中文环境,安装时会出现中文乱码,请使用以下指令
$export LANG=en_US.UTF-8
一定不能少了.UTF-8,否则会提示以下错误:
- [oracle@databasedatabase]$ export LANG=en_US
 - [oracle@databasedatabase]$ ./runInstaller
 - ERROR:Unable to convert from "UTF-8" to "ISO-8859-1"for NLS!
 - redhat-3,SuSE-9, redhat-4, UnitedLinux-1.0, asianux-1 or asianux-2
 - /tmp/OraInstall2013-09-06_09-17-04AM.[oracle@database database]$
 接着执行(这里建议切换为oracle登录桌面再执行)
$./runInstaller
(下面的问题基本是由于远程工具安装本地安装基本不会出现)
如果无法看到安装界面,请使用root帐户执行如下命令后再运行安装程序:
#export DISPLAY=:0.0
# xhost +
切换回ORACLE用户
$./runInstaller
开始执行安装程序。
最后出现InstallSummary画面,此时只要按下Install按钮,系统即开始安装。
选择“高级安装”,以指定字符集ZH16GBK。
2、安装过程(略)
3、安装完成登录EM控制台
地址:https://db:1158/em

使用SYS、SYSTEM登录验证安装成功。
六、参考
6.1、设置Oracle服务开机自启动
1.修改Oracle系统配置文件:/etc/oratab,只有这样,Oracle自带的dbstart和dbshut才能够发挥作用。
- #vi /etc/oratab
 - orcl:/opt/oracle/102:Y
 - #Entries are of the form:
 - # $ORACLE_SID:$ORACLE_HOME:<N|Y>:
 
2.在/etc/init.d/下创建文件oracle,内容如下:
- #vi /etc/init.d/oracle
 
- #!/bin/bash
 - # chkconfig: 35 80 10
 - # description: Oracle auto start-stop script.
 - #
 - # Set ORA_HOME to be equivalent to the $ORACLE_HOME
 - # from which you wish to execute dbstart and dbshut;
 - #
 - # Set ORA_OWNER to the user id of the owner of the
 - # Oracle database in ORA_HOME.
 - ORA_HOME=/opt/oracle/1<span style="font-family:宋体;">1</span>2
 - ORA_OWNER=oracle
 - if [ ! -f $ORA_HOME/bin/dbstart ]
 - then
 - echo "Oracle startup: cannot start"
 - exit
 - fi
 - case "$1" in
 - 'start')
 - # Start the Listener:
 - echo "Starting Oracle Listeners ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Starting Oracle Listeners as part of system up." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start" >>/var/log/oracle
 - echo "Done."
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Finished." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - touch /var/lock/subsys/oracle
 - # Start the Oracle databases:
 - echo "Starting Oracle Databases ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Starting Oracle Databases as part of system up." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart" >>/var/log/oracle
 - echo "Done"
 - # Start the dbconsole:
 - echo "Starting Oracle dbconsole ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Starting Oracle dbconsole as part of system up." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole" >>/var/log/oracle
 - echo "Done."
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Finished." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - touch /var/lock/subsys/oracle
 - ;;
 - 'stop')
 - # Stop the Oracle dbconsole:
 - echo "Stoping Oracle dbconsole ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Stoping Oracle dbconsole as part of system down." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/emctl stop dbconsole" >>/var/log/oracle
 - echo "Done."
 - # Stop the Oracle Database:
 - echo "Stoping Oracle Databases ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Stoping Oracle Databases as part of system down." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut" >>/var/log/oracle
 - echo "Done."
 - echo ""
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Finished." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - # Stop the Oracle Listener:
 - echo "Stoping Oracle Listeners ... "
 - echo "-------------------------------------------------" >> /var/log/oracle
 - date +" %T %a %D : Stoping Oracle Listener as part of system down." >> /var/log/oracle
 - echo "-------------------------------------------------" >> /var/log/oracle
 - su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop" >>/var/log/oracle
 - echo "Done."
 - rm -f /var/lock/subsys/oracle
 - ;;
 - 'restart')
 - $0 stop
 - $0 start
 - ;;
 - <style type="text/css">P { margin-bottom: 0.08in; direction: ltr; text-align: justify; }</style><style type="text/css">P { margin-bottom: 0.08in; direction: ltr; text-align: justify; }</style>esac
 
3.改变文件权限
- #chmod 755 /etc/init.d/oracle
 
4.添加服务
- #chkconfig --level 35 oracle on
 
5.需要在关机或重启机器之前停止数据库,做一下操作
- #ln -s /etc/init.d/oracle /etc/rc0.d/K01oracle //关机
 - #ln -s /etc/init.d/oracle /etc/rc6.d/K01oracle //重启
 
6.使用方法
- #service oracle start //启动oracle
 - #service oracle stop //关闭oracle
 - #service oracle restart //重启oracle
 
7.测试
- a. 开机自启动
 - b. service oracle stop
 - c. service oracle start
 - d. service oracle restart
 
至此,Oracle服务启动&停止脚本与开机自启动设置完毕。
CentOS 6.5下安装Oracle 11g(转)的更多相关文章
- (静默安装)Cent OS 6_5(x86_64)下安装Oracle 11g
		
Cent OS 6_5(x86_64)下安装Oracle 11g 1 硬件要求 1.1 内存 & swap 物理内存不少于1G 硬盘可以空间不少于5G swap分区空间不少于2G Mini ...
 - Windows10下安装Oracle 11g 64位的详细步骤
		
直接附上我整理后的Word版<Windows10下安装Oracle 11g 64位的详细步骤>下载地址,提取码:9vak. 参考文献: 1.Win10 64位系统下安装Oracle11g详 ...
 - Redhat Linux 下安装Oracle 11g R2
		
能够下载:http://download.csdn.net/detail/ykh554541184/8086647文档方便查阅 官方文档:http://docs.oracle.com/cd/E1188 ...
 - 在Windows10系统下安装Oracle 11g数据库
		
在Windows10系统下安装Oracle 11g数据库 https://blog.csdn.net/wei1992_6/article/details/60054727
 - Oracle Linux 6.3下安装Oracle 11g R2(11.2.0.3)
		
本文主要描写叙述了在Oracle Linux 6.3下安装Oracle 11gR2(11.2.0.3).从Oracle 11g開始,Oracle官方站点不再提供其Patch的下载链接,须要使用Meat ...
 - solaris下安装oracle 11g与11g rac
		
1.To Find Swap, RAM, and OS Version 对于 Solaris 操作系统,查看 Swap, RAM, and OS Version 的方法: swap -l /usr/s ...
 - 在windows系统下安装oracle 11g
		
oracle 11g 安装在windows server 2012 系统下. 最近,需要配置数据库,要求在windows操作系统下,安装oracle 11g 数据库,因为以前没有安装过,所以成功后, ...
 - 详解Windows Server 2008 R2下安装Oracle 11g
		
本篇文章转载 http://www.it165.net/database/html/201212/3385.html 一.安装前的准备工作: 1. 修改计算机名: 服务器的计算机名称对于登录到Orac ...
 - Centos7下安装ORACLE 11g,弹窗不显示
		
Centos7下安装ORACLE 11gR2,弹窗不显示,安装界面显示为灰色. 解决方法:执行安装时带上一下参数 ./runInstaller -jreLoc /etc/alternatives/jr ...
 
随机推荐
- js的重载
			
1.重载 //重载(个数不同,类型不同)function prop(){var firstP = document.getElementById("p");if(arguments ...
 - 10_MySQL DQL_子查询(嵌套的select)
			
#子查询/* 含义:出现在其他语句中的select语句,称为子查询(内查询) 内部嵌套其他select语句的查询,称为主查询(外查询) 特点: 1.子查询都会放在小括号内 2.单行 ...
 - git submodule临时分支;以及git reset使用
			
submodule 已经建立好了一个gitlab submodule形式的repo: 在repo A下面有一个submodule B, A --> B. clone -b branch [rep ...
 - window.frames     &&    iframe 跨页面通信
			
1.定义 frames[]是窗口中所有命名的框架组成的数组.这个数组的每个元素都是一个Window对象,对应于窗口中的一个框架. 2.用法 假设iframe 是一个以存在的 iframe 的 ID 和 ...
 - hdu2897找规律
			
又是找规律,无语了,说好的博弈呢,搞了半天的sg函数没有一点头绪 当n%(p+q)==0时,先手win,第一次取q个,以后每次,后手取k个,先手就取p+q-k个,最后,后手必取q个 当n=(p+q)* ...
 - Spring Boot 集成 FreeMarker 详解案例(十五)
			
一.Springboot 那些事 SpringBoot 很方便的集成 FreeMarker ,DAO 数据库操作层依旧用的是 Mybatis,本文将会一步一步到来如何集成 FreeMarker 以及配 ...
 - 【hive】count() count(if) count(distinct if) sum(if)的区别
			
表名: user_active_day (用户日活表) 表内容: user_id(用户id) user_is_new(是否新用户 1:新增用户 0:老用户) location_city(用户所在地 ...
 - POJ 2823 单调队列入门水题
			
最最基础的单调队列题目.一个单增一个单减.还是可以借此好好理解一下单调队列的. #include <stdio.h> #include <string.h> #include ...
 - ArcGIS 10 Raster Calculator 在哪儿
			
ArcGIS 10 Raster Calculator 在哪儿? 现在大家用的最多的是ArcGIS9.3,所以大家都知道Raster Calculator在ArcToolbox->Spatial ...
 - PLSQL 触发器
			
触发器权限 数据库创建用户时想要在本用户下使用触发器,需要给用户触发器的权限 使用DBA用户执行 GRANT CREATE TRIGGER TO user_name; 如果想在当前用户下创建其他用户 ...