配色: 字号:
centos6_64位安装oracle11g
2016-10-18 | 阅:  转:  |  分享 
  




Centos6.064位版本上安装oracle11g教程

Centos6.064位版本上安装oracle11g教程 1

一. 安装前准备 1

1.准备文件 1

2.环境配置 1

二. 安装oracle11g64位 4

三. 测试安装是否正确 17

四.重启centos,仍然以oracle用户登录 18

启动orcl实例服务 18

启动dbconsole,这个的启动必须要监听器启动才可以。 20

五.配置root用户启动,和自动启动oracle 23

1.配置root用户启动oracle 23

2.配置root用户自动启动oracle 24



安装前准备

1.准备文件

到oracle官网下载oracle数据的64bitlinux版本,我下载的版本是:linux.x64_11gR2_database_1of2.zip(1.2G),linux.x64_11gR2_database_2of2.zip(1G)。解压后的大小为2.3G

然后分别解压2个文件,命令如下:

Unziplinux.x64_11gR2_database_1of2.zip

Unziplinux.x64_11gR2_database_2of2.zip

2.环境配置

将/etc/hosts配置127.0.0.1机器名

安装包检测及安装

[root@centOS6-xie~]#rpm-qgccmakebinutilssetarchcompat-dbcompat-gcccompat-gcc-c++compat-libstdc++compat-libstdc++-develunixODBCunixODBC-devellibaio-develsysstat







gcc-4.4.4-13.el6.x86_64

make-3.81-19.el6.x86_64

binutils-2.20.51.0.2-5.11.el6.x86_64

packagesetarchisnotinstalled

compat-db-4.6.21-15.el6.x86_64

packagecompat-gccisnotinstalled

packagecompat-gcc-c++isnotinstalled

packagecompat-libstdc++isnotinstalled

packagecompat-libstdc++-develisnotinstalled

unixODBC-2.2.14-11.el6.x86_64

unixODBC-devel-2.2.14-11.el6.x86_64

libaio-devel-0.3.107-10.el6.x86_64

sysstat-9.0.4-12.el6_0.1.x86_64



没有安装的可以在光盘中找到,然后按照rpm–ivh安装就好了,上面是我安装好后的情况。



系统参数设置及用户目录设置



//查看内存及swap

[root@centOS6-xie~]#grepMemTotal/proc/meminfo

MemTotal:3903656kB

[root@centOS6-xie~]#grepSwapTotal/proc/meminfo

SwapTotal:8388600kB

sysctl.conf



[root@centOS6-xie~]#vim/etc/sysctl.conf

#Controlsthemaximumsizeofamessage,inbytes

kernel.msgmnb=65536

#Controlsthedefaultmaxmimumsizeofamesagequeue

#

kernel.msgmax=65536

#Controlsthemaximumsharedsegmentsize,inbytes

kernel.shmmax=4294967295

#Controlsthemaximumnumberofsharedmemorysegments,inpages

kernel.shmall=268435456



#Belowfororacle11g

kernel.core_uses_pid=1

kernel.shmmax=536870912

kernel.shmmni=4096

kernel.shmall=2097152

kernel.sem=25032000100128

net.core.rmem_default=4194304

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=262144

fs.file-max=6553600

net.ipv4.ip_local_port_range=102465000



//添加用户组及用户

#groupaddoracleDba

#useraddoracle-goinstall-GoracleDba

#passwdoracle



//新建目录权限

#mkdir-p/usr/local/oracle

#chown-Roracle:oracleDba/usr/local/oracle

#chmod-R755/usr/local/oracle



//用户环境变量

通常的/etc/profile文件设置的环境变量对所有的用户都会生效,然而这儿设置了oracle用户,所有将环境变量设置在oracle用户的/~/.bashrc文件中。考虑到要通过root用户启动和维护数据库,我们将写一个脚本来自动启动oracle。



[oracle@centOS6-xie~]$vim.bashrc

#.bashrc



#Sourceglobaldefinitions

if[-f/etc/bashrc];then

./etc/bashrc

fi



ORACLE_BASE=/usr/local/oracle/



ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1



ORACLE_SID=orcl2



PATH=$ORACLE_HOME/bin:$PATH



ORACLE_OWNER=oracle



exportORACLE_UNQNAME=$ORACLE_SID



exportORACLE_BASEORACLE_HOMEORACLE_SIDPATHORACLE_OWNR



#Userspecificaliasesandfunctions

~

~

".bashrc"21L,368C



//将解压出来的文件夹放到/usr/local/oracle下,同时修改其所有者和权限

chown-Roracle:oracleDba/usr/local/oracle

ls-al

drwxr-xr-x.8oracleoracleDba409610?1107:39.

drwxr-xr-x.3oracleoracledba409610?1114:49..

drwxr-xr-x.12oracleoracleDba40968?172009doc

drwxr-xr-x.4oracleoracleDba40968?152009install

drwxr-xr-x.2oracleoracleDba40968?152009response

drwxr-xr-x.2oracleoracleDba40968?152009rpm

-rwxr-xr-x.1oracleoracleDba32268?152009runInstaller

drwxr-xr-x.2oracleoracleDba40968?152009sshsetup

drwxr-xr-x.14oracleoracleDba40968?152009stage

-rwxr-xr-x.1oracleoracleDba54028?172009welcome.html



安装oracle11g64位

本来想用ssh客户端操作linux安装oracle的,结果由于xserver检测失败,所以直接在电脑上装了。



安装之前先导入语言,exportLANG=en_US,否则安装过程会出现乱码。



过程如下:

[oracle@centOS6-xie桌面]$cd/usr/local/oracle/database/

[oracle@centOS6-xiedatabase]$ls-al

总用量44

drwxr-xr-x.8oracleoracleDba409610月1107:39.

drwxr-xr-x.4oracleoracledba409610月1114:56..

drwxr-xr-x.12oracleoracleDba40968月172009doc

drwxr-xr-x.4oracleoracleDba40968月152009install

drwxr-xr-x.2oracleoracleDba40968月152009response

drwxr-xr-x.2oracleoracleDba40968月152009rpm

-rwxr-xr-x.1oracleoracleDba32268月152009runInstaller

drwxr-xr-x.2oracleoracleDba40968月152009sshsetup

drwxr-xr-x.14oracleoracleDba40968月152009stage

-rwxr-xr-x.1oracleoracleDba54028月172009welcome.html

[oracle@centOS6-xiedatabase]$exportLANG=en_US

[oracle@centOS6-xiedatabase]$./runInstaller

StartingOracleUniversalInstaller...



CheckingTempspace:mustbegreaterthan120MB.Actual109900MBPassed

Checkingswapspace:mustbegreaterthan150MB.Actual8191MBPassed

Checkingmonitor:mustbeconfiguredtodisplayatleast256colors.Actual16777216Passed

PreparingtolaunchOracleUniversalInstallerfrom/tmp/OraInstall2011-10-11_03-00-41PM.Pleasewait...[oracle@centOS6-xiedatabase]$

第一步:填写email信息,以便得到支持,需要联网。



第二步:选择创建并配置一个数据库(新安装的)



第三步:选择服务端









第四步:选择单实例数据库安装



第五步:选择自定义安装





第六步:选择产品的语言



第七步:选择要安装的oracle版本







第八步:选择安装路径



第十步:选择数据库实例名字(SID)







第十一步:选择数据库的编码字符集



第十一步:开启自动内存管理



第十二步:



第十三步:指定数据存放的位置







第十四步:选择备份存放路径,备份用户的用户名和密码



第十五步:登录数据库的用户名和密码,这4个用户都采用相同的密码这是oracle所不推荐的,同时只有sys和system2个用户开启,其他的用户都将会被锁定,除非在最后解除需要的用户的锁定状态。



第十七步:这是oracle检测必须的组件,我选择了ignoreall,这样选择安装好oracle后,oracle是能正常工作的。



第十八步:这是oracle安装好后的一些信息,记住这些信息有时候会给你带来方便。



第十九步:oracle进入安装状态



配置数据库实例orcl









数据库安装好后的信息,记住这些信息会给你的工作带来方便。



打开用户,我开启了3个用户,他们是:sys,system,scott



测试安装是否正确

配置远程pl/sql,然后登陆(说明安装linux+oracle电脑的ip为:172.7.22.23,而安装windows+oracle+pl/sql电脑的ip是:172.7.22.22,在ip为172.7.22.22的oracle配置一个远程监听)。



Pl/sql登陆如下:



登陆成功,



看看https://172.7.22.23:1158/em/(注意:11g变成了https)是否可以。



四.重启centos,仍然以oracle用户登录

我们发现,oracle数据库服务和dbconsole服务并没有启动,

通过这个命令:netstat–tnl没有发现1521端口和1158端口。所以我们要手动启动。



启动orcl实例服务

直接进入:oracle的bin目录[oracle@centOS6-xie桌面]$cd

/usr/local/oracle/product/11.2.0/dbhome_1/bin



[oracle@centOS6-xiebin]$emctl-statusdbconsole

OC4JConfigurationissue.

/usr/local/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/OC4J_DBConsole_centOS6-xie_orcl2notfound.(这个问题是我的问题)

[oracle@centOS6-xiebin]$emca-configdbcontroldb-reposrecreate



EMCA开始于2011-10-1116:19:07

EMConfigurationAssistant,11.2.0.0.2正式版

版权所有(c)2003,2005,Oracle。保留所有权利。



输入以下信息:

数据库SID:orcl

已为数据库orcl配置了DatabaseControl

您已选择配置DatabaseControl,以便管理数据库orcl

此操作将移去现有配置和默认设置,并重新执行配置

是否继续?[是(Y)/否(N)]:y

监听程序ORACLE_HOME[/usr/local/oracle/product/11.2.0/dbhome_1]:

/usr/local/oracle/product/11.2.0/dbhome_1/bin

SYS用户的口令:

DBSNMP用户的口令:

SYSMAN用户的口令:

通知的电子邮件地址(可选):

通知的发件(SMTP)服务器(可选):

-----------------------------------------------------------------



已指定以下设置



数据库ORACLE_HOME................/usr/local/oracle/product/11.2.0/dbhome_1



本地主机名................centOS6-xie

监听程序ORACLE_HOME................/usr/local/oracle/product/11.2.0/dbhome_1/bin

监听程序端口号................1521

数据库SID................orcl

通知的电子邮件地址...?............

通知的发件(SMTP)服务器...............



-----------------------------------------------------------------

是否继续?[是(Y)/否(N)]:y

2011-10-1116:19:59oracle.sysman.emcp.EMConfigperform

信息:正在将此操作记录到

/usr/local/oracle/cfgtoollogs/emca/orcl/emca_2011_10_11_16_19_06.log。

2011-10-1116:20:00oracle.sysman.emcp.util.DBControlUtilstopOMS

信息:正在停止DatabaseControl(此操作可能需要一段时间)...

2011-10-1116:20:06oracle.sysman.emcp.EMConfigperform

严重:监听程序未启动或数据库服务未注册到该监听程序。启动该监听程序并注册数据库服务,然后重新运行EMConfigurationAssistant。

有关详细资料,请参阅

/usr/local/oracle/cfgtoollogs/emca/orcl/emca_2011_10_11_16_19_06.log中的日志文件。

无法完成配置。有关详细资料,请参阅

/usr/local/oracle/cfgtoollogs/emca/orcl/emca_2011_10_11_16_19_06.log中的日志文件。



[oracle@centOS6-xiebin]$./dbstart$ORACLE_HOME

ProcessingDatabaseinstance"orcl":logfile

/usr/local/oracle/product/11.2.0/dbhome_1/startup.log

[oracle@centOS6-xiebin]$netstat-tnl

ActiveInternetconnections(onlyservers)

ProtoRecv-QSend-QLocalAddressForeignAddressState

tcp000.0.0.0:36900.0.0.0:LISTEN

tcp000.0.0.0:1110.0.0.0:LISTEN

tcp000.0.0.0:220.0.0.0:LISTEN

tcp00127.0.0.1:6310.0.0.0:LISTEN

tcp00127.0.0.1:250.0.0.0:LISTEN

tcp000.0.0.0:322910.0.0.0:LISTEN

tcp00:::111:::LISTEN

tcp00:::80:::LISTEN

tcp00:::1521:::LISTEN

tcp00:::4530:::LISTEN

tcp00:::22:::LISTEN

tcp00::1:631:::LISTEN

tcp00:::64671:::LISTEN



启动dbconsole,这个的启动必须要监听器启动才可以。

重新配置em:

emca-configdbcontroldb-reposrecreate

启动em:emctlstartdbconsole

查看em状态:emctlstatusdbconsole



由于我是删除了一个数据库,然后重新安装的,配置过程中真是郁闷,emca-configdbcontroldb-reposrecreate配置这个玩意太费时间了。如果是第一次安装这个是不用配置的。

[oracle@centOS6-xiebin]$emctlstartdbconsole

OC4JConfigurationissue.

/usr/local/oracle/product/11.2.0/dbhome_1/oc4j/j2ee/OC4J_DBConsole_centOS6-xie_orcl2notfound.

[oracle@centOS6-xiebin]$emca-configdbcontroldb-reposrecreate



EMCA开始于2011-10-1116:21:41

EMConfigurationAssistant,11.2.0.0.2正式版

版权所有(c)2003,2005,Oracle。保留所有权利。

输入以下信息:

数据库SID:orcl

已为数据库orcl配置了DatabaseControl

您已选择配置DatabaseControl,以便管理数据库orcl

此操作将移去现有配置和默认设置,并重新执行配置

是否继续?[是(Y)/否(N)]:y

监听程序ORACLE_HOME[/usr/local/oracle/product/11.2.0/dbhome_1]:

SYS用户的口令:

DBSNMP用户的口令:

SYSMAN用户的口令:

通知的电子邮件地址(可选):

通知的发件(SMTP)服务器(可选):

-----------------------------------------------------------------



已指定以下设置



数据库ORACLE_HOME................/usr/local/oracle/product/11.2.0/dbhome_1

本地主机名................centOS6-xie

监听程序ORACLE_HOME................/usr/local/oracle/product/11.2.0/dbhome_1

监听程序端口号................1521

数据库SID................orcl

通知的电子邮件地址...............

通知的发件(SMTP)服务器...............



-----------------------------------------------------------------

是否继续?[是(Y)/否(N)]:y

2011-10-1116:22:08oracle.sysman.emcp.EMConfigperform

信息:正在将此操作记录到

/usr/local/oracle/cfgtoollogs/emca/orcl/emca_2011_10_11_16_21_41.log。

2011-10-1116:22:09oracle.sysman.emcp.util.DBControlUtilstopOMS

信息:正在停止DatabaseControl(此操作可能需要一段时间)...

2011-10-1116:22:11oracle.sysman.emcp.EMReposConfiginvoke

信息:正在删除EM资料档案库(此操作可能需要一段时间)...

2011-10-1116:24:38oracle.sysman.emcp.EMReposConfiginvoke

信息:已成功删除资料档案库

2011-10-1116:24:38oracle.sysman.emcp.EMReposConfigcreateRepository

信息:正在创建EM资料档案库(此操作可能需要一段时间)...

2011-10-1116:30:37oracle.sysman.emcp.EMReposConfiginvoke

信息:已成功创建资料档案库

2011-10-1116:30:39oracle.sysman.emcp.EMReposConfiguploadConfigDataToRepository

信息:正在将配置数据上载到EM资料档案库(此操作可能需要一段时间)...

2011-10-1116:31:59oracle.sysman.emcp.EMReposConfiginvoke

信息:已成功上载配置数据

2011-10-1116:32:05oracle.sysman.emcp.util.DBControlUtilconfigureSoftwareLib

信息:软件库已配置成功。

2011-10-1116:32:05oracle.sysman.emcp.EMDBPostConfigconfigureSoftwareLibrary

信息:正在部署预配档案...

2011-10-1116:32:41oracle.sysman.emcp.EMDBPostConfigconfigureSoftwareLibrary

信息:预配档案部署成功。

2011-10-1116:32:41oracle.sysman.emcp.util.DBControlUtilsecureDBConsole

信息:正在保护DatabaseControl(此操作可能需要一段时间)...

2011-10-1116:33:30oracle.sysman.emcp.util.DBControlUtilsecureDBConsole

信息:已成功保护DatabaseControl。

2011-10-1116:33:30oracle.sysman.emcp.util.DBControlUtilstartOMS

信息:正在启动DatabaseControl(此操作可能需要一段时间)...

2011-10-1116:34:06oracle.sysman.emcp.EMDBPostConfigperformConfiguration

信息:已成功启动DatabaseControl

2011-10-1116:34:06oracle.sysman.emcp.EMDBPostConfigperformConfiguration

信息:>>>>>>>>>>>DatabaseControlURL为https://centOS6-xie:1158/em<<<<<<<<<<<

2011-10-1116:34:09oracle.sysman.emcp.EMDBPostConfiginvoke

警告:

WARNING



管理资料档案库已置于安全模式下,在此模式下将对EnterpriseManager数据进行加密。加密密钥已放置在文件

/usr/local/oracle/product/11.2.0/dbhome_1/centOS6-xie_orcl/sysman/config/emkey.ora中。请务必备份此文件,因为如果此文件丢失,则加密数据将不可用。





已成功完成EnterpriseManager的配置

EMCA结束于2011-10-1116:34:09

[oracle@centOS6-xiebin]$netstat-tnl

ActiveInternetconnections(onlyservers)

ProtoRecv-QSend-QLocalAddressForeignAddressState

tcp000.0.0.0:36900.0.0.0:LISTEN

tcp000.0.0.0:1110.0.0.0:LISTEN

tcp000.0.0.0:220.0.0.0:LISTEN

tcp00127.0.0.1:6310.0.0.0:LISTEN

tcp00127.0.0.1:250.0.0.0:LISTEN

tcp000.0.0.0:39380.0.0.0:LISTEN

tcp000.0.0.0:322910.0.0.0:LISTEN

tcp00:::111:::LISTEN

tcp00:::5520:::LISTEN

tcp00:::80:::LISTEN

tcp00:::1521:::LISTEN

tcp00:::4530:::LISTEN

tcp00:::22:::LISTEN

tcp00::1:631:::LISTEN

tcp00:::64671:::LISTEN

tcp00:::1158:::LISTEN

这样oracle服务和dbconsole已经正常工作了。



五.配置root用户启动,和自动启动oracle

1.配置root用户启动oracle

在/etc/init.d目录下建立一个文件名叫oracle,内容如下:

#!/bin/sh



ORACLE_HOME=/usr/local/oracle/product/11.2.0/dbhome_1

case$1in

"start")



echo"startoracle....."



su-oracle-c"$ORACLE_HOME/bin/dbstart$ORACLE_HOME&"



su-oracle-c"$ORACLE_HOME/bin/lsnrctlstart"



su-oracle-c"$ORACLE_HOME/bin/emctlstartdbconsole"

;;



"stop")



echo"stoporacle....."

su-oracle-c"$ORACLE_HOME/bin/dbshut&"



su-oracle-c"$ORACLE_HOME/bin/lsnrctlstop"



su-oracle-c"$ORACLE_HOME/bin/emctlstopdbconsole"

;;



)



echo"usage:$0{start|stop}"

exit

;;

esac



现在可以在控制台中输入启动和停止命令:

Serviceoraclestart

Serviceoraclestop

2.配置root用户自动启动oracle

编辑/etc/oratab文件,将对应的sid那一行的N改为Y

[root@ocp~]#vi/etc/oratab

修改后的例子:orcl:/usr/local/oracle/product/11.2.0/dbhome_1:Y



建立启动与关闭界面的连接(S打头的是启动程序,K打头的是关闭程序)

[root@ocp~]#ln-s/etc/init.d/oracle/etc/rc5.d/S85oracle

(linux图形界面下的自启动在rc5.d目录下)



[root@cop~]#ln-s/etc/init.d/oracle/etc/rc5.d/K15oracle

(linux图形界面下的关闭服务链接)



故障处理:ORA-00845:MEMORY_TARGETnotsupportedonthissystem

Oracle11g的Linux版本在修改了MEMORY_TARGET或者SGA_TARGET后启动可能会报错:

ORA-00845:MEMORY_TARGETnotsupportedonthissystem

这个问题是由于设置SGA的大小超过了操作系统/dev/shm的大小:

[root@enterprice64~]#df-k/dev/shmFilesystem1K-blocksUsedAvailableUse%Mountedontmpfs4089416040894160%/dev/shm



[root@db2~]#vi/etc/fstab?????//更换/dev/shm默认大小为2G

LABEL=/????ext3???defaults???????11LABEL=/boot????/boot????ext3???defaults???????12#tmpfs??????/dev/shm????tmpfs??defaults???????00tmpfs??????/dev/shm????tmpfs??defaults,size=2048M?00

//注:本行defaults,size=10240M中间无空格

devpts?????/dev/pts?????devpts?gid=5,mode=620?00sysfs?????/sys???????sysfs??defaults???????00proc????/proc??????proc???defaults???????00[root@db2~]#umount/dev/shm[root@db2?~]#mount/dev/shm

修改/etc/fstab,重新mount/dev/shm,然后就可以启动数据库了。























献花(0)
+1
(本文系樱梦雪苹宝首藏)