一、下载Oracle 11g R2版本。
网址:https://www.oracle.com/index.html,下载需要登录oracle网站,没有账户就注册一个。
或直接下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html
点Downloads-->Oracle Database
点AcceptLicense Agreement前同意OTN协议。列表里目前最新微12CR1版,我们这次是11gr版,往下面拉。
注意,下载是Linux版64位(x86-64),32位是(x86)。注意区分。
注意,文件总大小2G多点,“File 1,File 2”两个文件都需要下载。
下载后上传到CentOS系统里。
二、安装Oracle 11gr2
Oracle官方安装文档:http://docs.oracle.com/cd/E11882_01/install.112/e24326/toc.htm
1.创建用户。
#groupaddoinstall #groupadddba #useradd-goinstall-Gdbaoracle #idoracle uid=500(oracle)gid=500(oinstall)groups=500(oinstall),501(dba) #mkdir-p/u01/app/oracle #chown-Roracle.oinstall/u01 #chmod-R775/u01
2.配置内核参数和资源限制
1)将以下参数设置加入/etc/sysctl.conf中,这样每次操作系统启动时,便会自动设置这些内核参数,而不需要每次都人工设置。
# vi /etc/sysctl.conf
fs.aio-max-nr=1048576 fs.file-max=6815744 kernel.shmall=2097152 kernel.shmmax=536870912 kernel.shmmni=4096 kernel.sem=25032000100128 net.ipv4.ip_local_port_range=900065500 net.core.rmem_default=262144 net.core.rmem_max=4194304 net.core.wmem_default=262144 net.core.wmem_max=1048576
修改生效
# sysctl -p
2)更改shell限制
# vi /etc/security/limits.conf
oraclesoftnproc2047 oraclehardnproc16384 oraclesoftnofile1024 oraclehardnofile65536
3)还必须添加以下内容到vi /etc/pam.d/login
# vi /etc/pam.d/login
sessionrequired/lib/security/pam_limits.so sessionrequiredpam_limits.so
4)最后,为了能让每个用户在每次登陆系统之后,都能自动设置其最大可启动进程数与最多可开启文件数,设置 /etc/profile
# vi /etc/profile
if[$USER=“oracle”];then if[$SHELL=“/bin/ksh”];then ulimit�Cp16384 ulimit-n65536 else ulimit�Cu16384-n65536 fi fi
5)设置用户环境变量,将下列设置添加到 /home/oracle/.bash_profile 文件中
#vi /home/oracle/.bash_profile
注意:要写到原有“PATH=$PATH:$HOME/bin”变量上面,否则会提示“bash: sqlplus: command not found”
umask022 exportORACLE_BASE=/u01/app/oracle exportORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1 exportORACLE_SID=orcl exportPATH=$ORACLE_HOME/bin:$PATH exportNLS_LANG="SIMPLIFIEDCHINESE_CHINA.ZHS16GBK"
设置生效:
source /home/oracle/.bash_profile
6)安装相关依赖包
#yum -y install elfutils-libelf-devel unixODBC unixODBC-devel libaio-devel
上传本地pdksh-5.2.14-37.el5_8.1.x86_64.rpm 用YUM安装
#yum localinstall pdksh-5.2.14-37.el5_8.1.x86_64.rpm
3.安装Oracle Database11gR2
#unziplinux.x64_11gR2_database_1of2.zip-d/home/oracle/ #unziplinux.x64_11gR2_database_2of2.zip-d/home/oracle/
/home/oracle/database 有执行权限可使用如下命令将该目录赋予oracle帐号所有,并拥有执行权限:
#chmod-R700/home/oracle/database #chown-Roracle:oinstall/home/oracle/database #unsetLANGLANGUAGE#解决中文乱码,如果中文系统。
2)切换为oracle 用户,以静默方式执行安装脚本,在安装过程中如果没有错误不会有信息输出,最后会输出请运行root.sh脚本的信息。
#su-oracle $cddatabase $./runInstaller
错误:监视器检查未通过。
Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set. Failed
解决方法:
切换回root用户:$su -l root
@H_301_234@# xhost +SI:localuser:oracle
@H_301_234@- @H_301_234@
重新运行:./runInstaller
@H_301_234@
3)运行安装。
等待一会就启动界面出来了。
选择YES
选择仅安装数据库
选择“单实例安装”。
选择语言,软件默认会使用系统所用的语言。
因为上文已经用YUM安装相关包,选择右上角“Igrnore all”(全部忽略)
安装完成后,登录root用户,到下面的两个目录下执行脚本即可。
#/u01/app/oraInventory/orainstRoot.sh #/u01/app/oracle/product/11.1.0/db_1/root.sh
运行完脚本后,重启服务器。
4.验证安装。
在oracle用户中执行“sqlplus /nolog”出现下图即是安装成功。
sqlplus/nolog或sqlplus/assysdba
启动数据库报错,找不到initorcl.ora
解决方法:
$cd /u01/app/oracle/admin/xcky/pfile/
$cp init.ora.032017151120/u01/app/oracle/product/11.1.0/db_1/dbs/initorc.ora
注:桔黄色背景的文字会随设置变化,使用时按实际路径填写。
5.开机启动
vi /etc/init.d/oracle
#!/bin/sh #chkconfig:23452080 #description:Oracledbstart/dbshut #以上两行为chkconfig所需 #ORA_HOME需要更具实际安装路径修改 ORA_HOME=/u01/app/oracle/product/11.1.0/db_1 ORA_OWNER=oracle LOGFILE=/var/log/oracle.log echo"#################################">>${LOGFILE} date+"###%T%a%D:RunOracle">>${LOGFILE} if[!-f${ORA_HOME}/bin/dbstart]||[!-f${ORA_HOME}/bin/dbshut];then echo"Error:Missingthescriptfile${ORA_HOME}/bin/dbstartor${ORA_HOME}/bin/dbshut!">>${LOGFILE} echo"#################################">>${LOGFILE} exit fi start(){ echo"###StartupDatabase..." su-${ORA_OWNER}-c"${ORA_HOME}/bin/dbstart${ORA_HOME}" echo"###Done." echo"###Rundatabasecontrol..." su-${ORA_OWNER}-c"${ORA_HOME}/bin/emctlstartdbconsole" echo"###Done." } stop(){ echo"###Stopdatabasecontrol..." su-${ORA_OWNER}-c"${ORA_HOME}/bin/emctlstopdbconsole" echo"###Done." echo"###ShutdownDatabase..." su-${ORA_OWNER}-c"${ORA_HOME}/bin/dbshut${ORA_HOME}" echo"###Done." } case"$1"in 'start') start>>${LOGFILE} ;; 'stop') stop>>${LOGFILE} ;; 'restart') stop>>${LOGFILE} start>>${LOGFILE} ;; esac date+"###%T%a%D:Finished.">>${LOGFILE} echo"#################################">>${LOGFILE} echo""
改变文件权限
#chmod755/etc/init.d/oracle
添加服务
#chkconfig--level35oracleon
需要在关机或重启机器之前停止数据库,做一下操作
#ln-s/etc/init.d/oracle/etc/rc0.d/K01oracle//关机 #ln-s/etc/init.d/oracle/etc/rc6.d/K01oracle//重启
参考文章:
http://blog.itpub.net/21582653/viewspace-716034/
http://www.centoscn.com/CentosServer/sql/2015/0410/5144.html
原文链接:https://www.f2er.com/centos/379225.html