Linux 平台安装Oracle Database 12c

摘要:官方的下载地址:1:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html2:https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=16496132URL地址2需要先注册,然后才能登陆下载,注册登陆界面https://edelivery.oracle.com关于这两者有啥区别:听一个同事说,用metalink账号下载的安装文件完整一些。

官方的下载地址:

1:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

2:https://edelivery.oracle.com/EPD/Download/get_form?egroup_aru_number=16496132

URL地址2需要先注册,然后才能登陆下载,注册登陆界面https://edelivery.oracle.com

clip_image002

关于这两者有啥区别:听一个同事说,用metalink账号下载的安装文件完整一些。具体情况是不是如此,还不得而知。

地址1下载的文件为:

linuxamd64_12c_database_1of2.zip

linuxamd64_12c_database_2of2.zip

地址2下载的文件为:

V38500-01_1of2.zip

V38500-01_2of2.zip

2)检查硬件要求(CheckHardwareRequirements)

2.1CheckCPU

[root@getoraclelnx01tmp]#

[root@getoraclelnx01tmp]#grep"modelname"/proc/cpuinfo

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

modelname:Intel(R)Xeon(R)[email protected]

[root@getoraclelnx01tmp]#cat/proc/cpuinfo|grep"processor"|wc-l

8

[root@getoraclelnx01tmp]#cat/proc/cpuinfo|grep"physicalid"|sort|uniq|wc-l

4

[root@getoraclelnx01tmp]#

clip_image004

2.2CheckMemory

[root@getoraclelnx01tmp]#grepMemTotal/proc/meminfo

MemTotal:24736752kB

[root@getoraclelnx01tmp]#grepSwapTotal/proc/meminfo

SwapTotal:37748728kB

[root@getoraclelnx01tmp]#free-g

totalusedfreesharedbufferscached

Mem:23716005

-/+buffers/cache:122

Swap:35035

[root@getoraclelnx01tmp]#

clip_image006

Oracle12c对系统内存的最低要求为1G,推荐2G或更大的内存,从上面结果可以知道系统内存23G,完全满足要求。

Oracle对交换分区(SwapSpace)的推荐设置如下,这里SwapSpace为35G,不是16G,需要做一下调整。

clip_image008

2.3CheckDiskCapacity

clip_image010

Oracle12c企业版的需要6.4G大小的磁盘空间,标准版需要6.1G大小的磁盘空间。/tmp需要至少1G的大小。从上面结果得知,磁盘空间完全满足。

3)检查软件要求(CheckingtheSoftwareRequirements)

3.1操作系统版本检测

Oracle12c只支持64位的Linux系统。不支持32Linux平台,这也许是以后的趋势了。OperatingSystemRequirementsforx86-64LinuxPlatforms。Oracle的官方文档明确列出了支持下面三个Linux版本

SupportedOracleLinux6andRedHatEnterpriseLinux6Distributionsforx86-64

SupportedOracleLinux5andRedHatEnterpriseLinux5Distributionsforx86-64

SupportedSUSEDistributionsforx86-64

[root@getoraclelnx01/]#uname-m

x86_64

[root@getoraclelnx01/]#uname-r

2.6.32-200.13.1.el5uek

[root@getoraclelnx01/]#more/etc/redhat-release

RedHatEnterpriseLinuxServerrelease5.7(Tikanga)

[root@getoraclelnx01~]#uname-a

Linuxgetoraclelnx01.gfg1.esquel.com2.6.32-200.13.1.el5uek#1SMPWedJul2721:02:33EDT2011x86_64x86_64x86_64GNU/Linux

[root@getoraclelnx01Server]#lsb_release-id

DistributorID:EnterpriseEnterpriseServer

Description:EnterpriseLinuxEnterpriseLinuxServerrelease5.7(Carthage)

[root@getoraclelnx01Server]#

3.2检查oracle12c所需包

关于Oracle12c所需包,从官方文档看,不同版本的操作系统似乎有所不同,OracleLinux5andRedHatEnterpriseLinux5需要安装下面一些包

binutils-2.17.50.0.6

compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3(32bit)

gcc-4.1.2

gcc-c++-4.1.2

glibc-2.5-58

glibc-2.5-58(32bit)

glibc-devel-2.5-58

glibc-devel-2.5-58(32bit)

ksh

libaio-0.3.106

libaio-0.3.106(32bit)

libaio-devel-0.3.106

libaio-devel-0.3.106(32bit)

libgcc-4.1.2

libgcc-4.1.2(32bit)

libstdc++-4.1.2

libstdc++-4.1.2(32bit)

libstdc++-devel4.1.2

libXext-1.0.1

libXext-1.0.1(32bit)

libXtst-1.0.1

libXtst-1.0.1(32bit)

libX11-1.0.3

libX11-1.0.3(32bit)

libXau-1.0.1

libXau-1.0.1(32bit)

libXi-1.0.1

libXi-1.0.1(32bit)

make-3.81

sysstat-7.0.2

rpm-qbinutilscompat-libstdc++gccgcc-c++glibcglibc-develkshlibaiolibaio-devellibgcclibstdc++libstdc++-devellibXextlibXtstlibX11libXaulibXimakesysstat

clip_image012

如上所示,还需要安装包compat-libstdc++和libaio-devel相关包

clip_image014

[root@getoraclelnx01Server]#rpm-ivhcompat-libstdc++-33-3.2.3-61.i386.rpm

warning:compat-libstdc++-33-3.2.3-61.i386.rpm:HeaderV3DSAsignature:NOKEY,keyID1e5e0159

Preparing...###########################################[100%]

packagecompat-libstdc++-33-3.2.3-61.i386isalreadyinstalled

[root@getoraclelnx01Server]#rpm-ivhcompat-libstdc++-33-3.2.3-61.x86_64.rpm

warning:compat-libstdc++-33-3.2.3-61.x86_64.rpm:HeaderV3DSAsignature:NOKEY,keyID1e5e0159

Preparing...###########################################[100%]

packagecompat-libstdc++-33-3.2.3-61.x86_64isalreadyinstalled

[root@getoraclelnx01Server]#ls*libaio-devel*

libaio-devel-0.3.106-5.i386.rpmlibaio-devel-0.3.106-5.x86_64.rpm

[root@getoraclelnx01Server]#rpm-ivhlibaio-devel-0.3.106-5.i386.rpm

warning:libaio-devel-0.3.106-5.i386.rpm:HeaderV3DSAsignature:NOKEY,keyID1e5e0159

Preparing...###########################################[100%]

1:libaio-devel###########################################[100%]

[root@getoraclelnx01Server]#rpm-ivhlibaio-devel-0.3.106-5.x86_64.rpm

warning:libaio-devel-0.3.106-5.x86_64.rpm:HeaderV3DSAsignature:NOKEY,keyID1e5e0159

Preparing...###########################################[100%]

1:libaio-devel###########################################[100%]

[root@getoraclelnx01Server]#

如上所示,既可以用rpm安装,也可以用yum本地源进行安装,这个就看那个方便以及个人的喜好、习惯了。一般推荐用yum安装,不过需要进行配置。具体可以参见我的博客。

4)系统配置准备

4.1创建Oracle用户和用户组

[root@getoraclelnx01Server]#groupadddba

[root@getoraclelnx01Server]#groupaddoinstall

[root@getoraclelnx01Server]#useradd-goinstall-Gdbaoracle

[root@getoraclelnx01Server]#idoracle

uid=502(oracle)gid=503(oinstall)groups=503(oinstall),502(dba)

[root@getoraclelnx01Server]#

clip_image016

创建了oracle用户以及相关用户组后,需要设置oracle用户密码。

4.2创建安装目录

[root@getoraclelnx01Server]#

[root@getoraclelnx01Server]#mkdir-p/u01/app/oracle

[root@getoraclelnx01Server]#chown-Roracle:oinstall/u01/app/oracle

[root@getoraclelnx01Server]#chmod-R775/u01/app/oracle

[root@getoraclelnx01Server]#

clip_image018

4.3DisableSELinux

[root@getoraclelnx01~]#/usr/sbin/sestatus

SELinuxstatus:disabled

[root@getoraclelnx01~]#/usr/sbin/getenforce

Disabled

[root@getoraclelnx01~]#

clip_image020

从上面可以看出SELinux已经被禁用了,如果没有禁用,则可以通过下面命令禁用

getenforce(returns"Enforcing")

setenforce0

getenforce(returns"Permissive")

Endtorestoreittoenforcing

setenforce1

getenforce(returns"Enforcing")

[root@getoraclelnx01os]#/usr/sbin/sestatus

SELinuxstatus:disabled

[root@getoraclelnx01os]#/usr/sbin/getenforce

Disabled

[root@getoraclelnx01os]#

Disablesecurelinuxbyeditingthe"/etc/selinux/config"file,makingsuretheSELINUXflagissetasfollows.

SELINUX=disabled

4.4修改系统内核参数

在修改系统内核参数前,你可以用命令先查看一下当前各类系统参数的值,亦或直接查看配置文件/etc/sysctl.conf

[root@getoraclelnx01~]#getconfPAGESIZE

4096

[root@getoraclelnx01~]#sysctl-a|grepsem

kernel.sem=2503200032128

[root@getoraclelnx01~]#sysctl-a|grepshm

kernel.shmmax=68719476736

kernel.shmall=4294967296

kernel.shmmni=4096

vm.hugetlb_shm_group=0

[root@getoraclelnx01~]#sysctl-a|grepfile-max

fs.file-max=2414060

[root@getoraclelnx01~]#sysctl-a|grepip_local_port_range

net.ipv4.ip_local_port_range=3276861000

[root@getoraclelnx01~]#

clip_image022

关于内核参数的一些设置建议,可以参考下面资料:

ViewCode

修改前最后先备份一下/etc/sysctl.conf,以防万一。

[root@getoraclelnx01~]#cp/etc/sysctl.conf/etc/sysctl.conf.bak

[root@getoraclelnx01~]#vi/etc/sysctl.conf添加或修改下面参数

kernel.shmmax=68719476736

kernel.shmall=6029312

kernel.shmmni=4096

kernel.sem=25032000100128

net.core.rmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=262144

net.ipv4.ip_local_port_range=900065500

fs.file-max=65536

fs.aio-max-nr=1048576

kernel.shmall=physicalRAMsize/pagesize(getconfPAGESIZE)--Ifthedefaultsaregreaterthenleaveit.

kernel.shmall=内存大小/4k=23G*1024*1024/4k=6029312

kernel.shmmax=20*1024*1024=20971520而默认的为68719476736,那么使用默认值

修改完成后保存,然后运行sysctl-p命令使之生效

clip_image024

4.5设置用户限制

在/etc/security/limits.conf中添加如下配置。

oraclesoftnproc2047

oraclehardnproc16384

oraclesoftnofile1024

oraclehardnofile65536

oraclesoftstack10240

oraclehardstack10240

Addthefollowinglinetothe"/etc/pam.d/login"file,

ifitdoesnotalreadyexist.

sessionrequired/lib/security/pam_limits.so

sessionrequiredpam_limits.so

Addthefollowingto

/etc/profileifOracleuserwillusethebashshell.

if[$USER="oracle"];then

ulimit-u16384

ulimit-n65536

fi

4.6配置环境变量

首先切换到oracle账户,编辑修改主目录下.bash_profile

clip_image026

TMP=/tmp;exportTMP

TMPDIR=$TMP;exportTMPDIR

ORACLE_BASE=/u01/app/oracle;exportORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1;exportORACLE_HOME

ORACLE_SID=epps;exportORACLE_SID

ORACLE_TERM=xterm;exportORACLE_TERM

PATH=/usr/sbin:$PATH;exportPATH

PATH=$ORACLE_HOME/bin:$PATH;exportPATH

LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib;exportLD_LIBRARY_PATH

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;exportCLASSPATH

if[$USER="oracle"];then

if[$SHELL="/bin/ksh"];then

ulimit-p16384

ulimit-n65536

else

ulimit-u16384-n65536

fi

fi

使配置生效

[oracle@getoraclelnx01~]$source.bash_profile

[oracle@getoraclelnx01~]$

解压安装镜像文件

[oracle@getoraclelnx01tmp]$unzipV38500-01_1of2.zip

[oracle@getoraclelnx01tmp]$unzipV38500-01_2of2.zip

安装步骤截图

clip_image028

clip_image030

clip_image032

clip_image034

clip_image036

clip_image038

clip_image040

clip_image042

clip_image044

clip_image046

在这一步时,无法继续,因为oracle账户无法创建oraInventory目录,所以必须先创建该用户并授权

[root@getoraclelnx01~]#mkdir-p/u01/app/oraInventory

[root@getoraclelnx01~]#chown-Roracle:oinstall/u01/app/oraInventory

[root@getoraclelnx01~]#chmod-R775/u01/app/oraInventory

clip_image048

clip_image050

clip_image052

clip_image054

clip_image056

clip_image058

clip_image060

clip_image062

clip_image064

clip_image066

验证参数时,fs.file-max设置为65536,但是ORACLE推荐使用68157744,net.core.wmem_max大小为262144,oracle推荐使用1048576,修改内核参数,运行sysctl-p使之生效。然后重新验证通过

[root@getoraclelnx01~]#sysctl-p

net.ipv4.ip_forward=0

net.ipv4.conf.default.rp_filter=2

net.ipv4.conf.default.accept_source_route=0

kernel.sysrq=0

kernel.core_uses_pid=1

net.ipv4.tcp_syncookies=1

kernel.msgmnb=65536

kernel.msgmax=65536

kernel.shmmax=68719476736

kernel.shmall=6029312

kernel.shmmni=4096

kernel.sem=25032000100128

net.core.rmem_default=262144

net.core.rmem_max=4194304

net.core.wmem_default=262144

net.core.wmem_max=1048576

net.ipv4.ip_local_port_range=900065500

fs.file-max=6815744

fs.aio-max-nr=1048576

[root@getoraclelnx01~]#

clip_image068

clip_image070

clip_image072

运行过程会提示让你用root账户执行2个脚本,你将脚本的文件拿下来,在root账户下执行即可。

clip_image078

clip_image080

[参考资料]:

DatabaseQuickInstallationGuideforLinuxx86-64e17718.pdf

http://blog.csdn.net/lnwf5188588/article/details/8779001

用云栖社区APP,舒服~

相关推荐