原文出处        http://www.linuxidc.com/Linux/2015-02/113222.html

 

需要安装Oracle DataGuard,所以先要安装单台Oracle11g,下面是Linux下单台Oracle11g的详细安装过程。

1,安装环境

硬件环境:2台linux虚拟机,CentOS6.4 ,4G ,4核,磁盘50G


Oracle软件版本:

linux.x64_11gR2_database_1of2.zip

linux.x64_11gR2_database_2of2.zip

下载地址为:http://pan.baidu.com/s/1bappO

rlwrap软件安装参考:http://www.linuxidc.com/Linux/2013-01/77198.htm

Oracle 11gR2 RAC实时应用集群http://www.linuxidc.com/Linux/2015-01/111298.htm

在CentOS 6.4下安装Oracle 11gR2(x64) http://www.linuxidc.com/Linux/2014-02/97374.htm

Oracle 11gR2 在VMWare虚拟机中安装步骤 http://www.linuxidc.com/Linux/2013-09/89579p2.htm

Debian 下 安装 Oracle 11g XE R2 http://www.linuxidc.com/Linux/2014-03/98881.htm

Oracle Linux 6.5安装Oracle 11.2.0.4 x64 http://www.linuxidc.com/Linux/2014-11/109903.htm

2,解压缩

        unzip linux.x64_11gR2_database_1of2.zip

        unzip linux.x64_11gR2_database_2of2.zip

        会在本目录下面出现一个database的目录,大概2.3g左右大小。 

3,操作系统版本及补丁矩阵

需要安装以下RPM软件包(加32bit括号注解的是该软件包32位版本,对应同名未加注解的则是该软件包64位版本。在64位版本平台上,两种版本都要安装):

binutils-2.17.50.0.6
compat-libstdc++-33-3.2.3
compat-libstdc++-33-3.2.3 (32 bit)
elfutils-libelf-0.125
elfutils-libelf-devel-0.125
gcc-4.1.2
gcc-c++-4.1.2
glibc-2.5-24
glibc-2.5-24 (32 bit)
glibc-common-2.5
glibc-devel-2.5
glibc-devel-2.5 (32 bit)
glibc-headers-2.5
ksh-20060214
libaio-0.3.106
libaio-0.3.106 (32 bit)
libaio-devel-0.3.106
libaio-devel-0.3.106 (32 bit)
libgcc-4.1.2
libgcc-4.1.2 (32 bit)
libstdc++-4.1.2
libstdc++-4.1.2 (32 bit)
libstdc++-devel 4.1.2
make-3.81
sysstat-7.0.2 

采用yum安装,如下:
yum install -y binutils*
yum install -y compat-libstdc*
yum install -y elfutils-libelf*
yum install -y gcc*
yum install -y glibc*
yum install -y ksh*
yum install -y libaio*
yum install -y libgcc*
yum install -y libstdc*
yum install -y make*
yum install -y sysstat*
yum install libXp* -y
yum install -y glibc-kernheaders 

检查下lib是否安装齐全:

[root@powerlong4 ~]# rpm -q --queryformat %-{name}-%{version}-%{release}-%{arch}"\n" \ compat-libstdc++-33 glibc-kernheaders glibc-headers libaio libgcc glibc-devel xorg-x11-deprecated-libs

如果缺少,就继续安装缺失的组件包。

4,网络、系统参数调整及说明

在生产环境中要求尽量使用2块千/百兆网卡做绑定,预防网卡、网线、端口、单个网络交换机带来的单点故障。

4.1、调整内核参数及用户限制

以下所有相关操作需要root用户执行,并且重启动操作系统才能完全生效。

(1)  编辑/etc/sysctl.conf文件,设置相关参数的系统默认值。如果该文件中已有相关参数的设置,则确保参数值不小于如下对应值;如果还没有相关参数的设置,则按照如下格式添加相应的参数设置行。

Vim /etc/sysctl.conf

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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 

(2)编辑/etc/security/limits.conf文件,修改操作系统对oracle用户资源的限制。在该文件中添加如下行。

vim /etc/security/limits.conf

oracle          soft    nproc  2047

oracle          hard    nproc  16384

oracle          soft    nofile  1024

oracle          hard    nofile  65536

oracle          hard    stack  10240 

4.2、开启操作系统异步IO(AIO)

前面部分第2点需要安装的包已经包含了libaio-0.3.106,默认开启异步I/O。

检查在操作系统中AIO是否运行,运行命令及显示结果类似如下:

$ cat /proc/slabinfo | grep kio

kioctx    51    120    320  12    1 : tunables  54  27    8 : slabdata    10    10    0

kiocb      30    30    256  15    1 : tunables  120  60    8 : slabdata    2      2    0

 

注:如数据库使用的是文件系统,且要使用异步IO,则需要修改该数据库的初始化参数

a.    设置disk_asynch_io参数值为TRUE(默认值)

b.    设置filesystemio_options参数值为ASYNCH

 

5: 目录结构及空间规划

5.1 存储设置

PC Server的数据库存储一般不会使用高端存储(vg物理分区推荐为32M),所以vg物理分区(PE Size)大小为操作系统安装时默认的32M,或者256M(中低端存储vg物理分区推荐值)均可。


5.2 临时目录

/tmp:至少1GB空间,推荐5GB,用于存放Oracle软件安装时产生的日志。


5.3 交换要求

交换区(SWAP):按照操作系统推荐配置,根据内存大小,为物理内存的1-1.5倍。推荐:创建2个大小相同、且分布在不同盘(pv)上的SWAP空间。


5.4,数据库软件安装目录

Oracle软件安装目录建议设置为单独的文件系统,挂载的目录名定为/tpsys,实际安装的主目录为/tpsys/app/oracle,大小一般配置为20GB,目录的owner要求为oracle:oinstall。


5.5,数据库空间规划

Oracle数据库空间用表空间(tablespace)表示,如默认的:SYSAUX、SYSTEM、TEMP、UNDOTBS1、USERS等;表空间的组成单位是数据文件(datafile)。我们定义基于文件系统的文件来创建Oracle的数据文件,并定义回滚表空间、临时表空间和数据表空间单个数据文件的大小为10G。
数据库使用的文件目录及相应用途和对应文件系统大小规划如下(假设数据库名称为test,在实际操作中,斜体的test需要替换为实际定义的数据库名):
/data/oracle/data:系统及数据表空间对应数据文件存放路径;/oracle/app/oracle
/data/oracle/redolog/  :redo重做日志文件存放路径;
/data/oracle/archive/  :归档日志文件存放路径;
/data/oracle/tempfile/  :tempfile文件存放路径(n为顺序中最后一个编号)。

/data/oracle/backup/data:备份目录

……
注意:以上文件系统挂载在二级目录上,即,挂载的目录是:/data/oracle/data、/data/oracle/redolog/、/data/oracle/archive/、/data/oracle/tempfile/等

另外,根据实际使用需要,还可能要有用于闪回区的文件目录和对应文件系统:
/data/oracle/flashback:闪回区目录,建议100GB
如果需要将数据库备份到硬盘,则要创建用于存放数据库备份的文件目录及文件系统:
/data/oracle/backup:备份目录,根据将来数据量大小,建议大于数据表空间容量
注意:以上文件系统挂载在二级目录上
以上所有目录的owner要求为oracle:oinstall。 

6 ,数据库软件的安装和数据库的创建配置

6.1,数据库安装用户和组的创建

使用root用户,进行如下操作:
创建oinstall组
# groupadd  -g 5000 oinstall
创建dba组
# groupadd  -g 501 dba
创建oracle用户
#useradd -g oinstall  -G  dba  oracle

 


6.2,数据库安装用户的profile文件的设置

首先确定数据库名及数据库实例名,对于单实例(非RAC)环境下,两者一般是一致的。

假设数据库(实例)名为powerdes,使用oracle用户,编辑/home/oracle/.bash_profile,加入以下内容

 


#added by timman for oracle

 

export ORACLE_BASE=/oracle/app/oracle

export ORACLE_HOME=/oracle/app/oracle/product/11.2.0/dbhome_1

 

export ORACLE_SID=powerdes

export PATH=$ORACLE_HOME/bin:$PATH

 

export ORACLE_TERM=xterm

export TNS_ADMIN=$ORACLE_HOME/network/admin

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/oracm/lib:$ORACLE_HOME/lib

export CLASSPATH=$CLASSPATH:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/jlib:$ORACLE_HOME/network/lib

export LANG=en_US.gbk

export NLS_LANG=american_america.ZHS16GBK

export EDITOR=vi

 


6.3 创建相应的文件系统(或安装目录)并改变相应的权限

[root@powerlong4 oracle]# mkdir -p /oracle/app/oracle

[root@powerlong4 oracle]# chown -R oracle:oinstall /oracle/app/oracle

[root@powerlong4 oracle]# chmod -R 775 /oracle/app/oracle

[root@powerlong4 oracle]#

6.4,准备vnc远程连接linux桌面
参考:Linux安装设置VNC远程桌面连接来安装Oracle 11g  http://www.linuxidc.com/Linux/2015-01/112326p2.htm

6.6,在linux下准备

使用oracle用户进行。安装需要在图形界面(在控制台或者用X-Window工具软件)。打开一个终端窗口,执行如下命令进行安装:

export DISPLAY=10.7.32.145:0.0

输入xclock测试,如果能够看见时钟证明图形化可用


yum install tigervnc tigervnc-server


在xshell的linux系统里面,执行如下命令:

[root@powerlong4 rlwrap-0.37]#  xhost + 
access control disabled, clients can connect from any host
[root@powerlong4 rlwrap-0.37]# 
表示linux下视窗环境以及准备OK,可以进行oracle安装了。


7,开始安装
先用vnc远程连接linux系统,如下所示:

7.1,在linux系统上面准备启动启动命令

[root@powerlong4 ~]$ su - Oracle[root@powerlong4 ~]# export DISPLAY=192.168.121.217:0.0[root@powerlong4 ~]#  xhost + access control disabled, clients can connect from any host[root@powerlong4 /]#

[oracle@powerlong4 ~]$ cd /home/oracle_64/database/

[oracle@powerlong4 database]$ ./runInstaller

Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.  Actual 21658 MB    Passed

Checking swap space: must be greater than 150 MB.  Actual 2047 MB    Passed

Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-23_12-18-01PM. Please wait ...[oracle@powerlong4 database]$

[root@powerlong4 database]#

如下图所示:

7.2 去掉I wish to receive security updates via My Oracle Surrport选项,点击Next。

7.3,选择Install database software only,点击Next。

7.4,选择Single instance database installation,点击Next。

Linux下安装Oracle 11g详细过程

7.5,在Available Languages中点选English、Simplified Chinese、Traditional Chinese,点击两个框中间的>,将选中的语言加入到右边的Selected Languages中,然后点击Next。

Linux下安装Oracle 11g详细过程

7.6,按照实际情况,选择企业版本,如下图

7.7,填写Oracle的软件路径和基本路径,如下图:

7.8,选择安装日志目录,如下图所示:

7.9,选择dba组

7.10,继续下一步安装操作

7.11,可以忽略,因为CentOS版本较高,所以11g check的时候不识别高版本lib包

7.12,继续安装

7.13,安装中,这个时间比较漫长

需要等待中,大概20分钟左右

点击OK,继续

7.14,然后点击close,结束

8,创建数据库

数据库的创建使用Oracle用户进行(假设数据库名称为powerdes,在实际操作中,斜体的powerdes需要替换为实际定义的数据库名),按下面步骤创建数据库。

8.1.安装需要在图形界面(在控制台或者用X-Window工具软件)。打开一个终端窗口,执行如下命令:dbca,如下图所示:

Linux下安装Oracle 11g详细过程

8.2,Database Configuration Assistant图形界面启动。标题同时指明了步骤的编号和步骤的名称。在步骤名称为Welcome的欢迎窗口,直接点击next。

8.3,等待下一步NEXT

8.4, 选择Custom Database

8.5,Global Database Name框:输入前面确定的数据库名SID框:自动出现和数据库名相同的内容作为数据库实例名,单实例情况下不作改动

Linux下安装Oracle 11g详细过程

8.6,继续默认

Linux下安装Oracle 11g详细过程

8.7,Database Credentials

Use Different Administrative Passwords表格的Password和Confirm Password列中分别为User Name列SYS、SYSTEM、DBSNMP和SYSMAN用户输入口令并重复一次输入(如密码设置过于简单,下一步前会有弹出窗口提示确认接受安全风险)sys和system密码设置可以在数据库建立后修改。

Linux下安装Oracle 11g详细过程

密码为sys1624

8.8,Database File LocationsStorage Locations:选择Use Common Location for All Database FilesDatabase File Location框:输入/Oracle/data_ora

Linux下安装Oracle 11g详细过程

8.9,Recovery ConfigurationSpecify Fast Recovery Area如果前面Management Options步骤选择了自动备份,则保留勾选,并在下方:Fast Recovery Area框:修改为快速恢复区的目录名Fast Recovery Area Size框:调整快速恢复区的大小

Linux下安装Oracle 11g详细过程

 

8.10,Enable Archiving根据是否归档日志的实际需求决定是否选择(重要的生产系统必须打开归档,测试系统一般关闭归档节省服务器空间)点击旁边的Edit Archive Mode Parameters…,在弹出窗口中:Automatic Archiving:保持默认勾选Archive Log File Format框:修改为%t_%s_%r.arcArchive Log Destinations表格:第一行中输入/Oracle/data_ora/archive点击OK返回主窗口Database ContentDatabase Components页面

8.11,Initialization Parameters,内存分配20%(测试库所以分小一些,生产库可以分配较大的比如40%60%等),字符集选择兼容utf8的选项

Linux下安装Oracle 11g详细过程

Linux下安装Oracle 11g详细过程

8.12,点击File Location Variables,里面可以看到一些基础参数信息,返回,然后直接下一步,如下图所示:

Linux下安装Oracle 11g详细过程8.13,选择Generate Database Creation Scripts,默认为 /oracle/app/oracle/admin/powerdes/scripts,如下图:

Linux下安装Oracle 11g详细过程

8.14,点击Finish按钮,如下图所示:

Linux下安装Oracle 11g详细过程

点击OK按钮,有报错说/etc/oratab读取错误,报错如下图所示

Linux下安装Oracle 11g详细过程

Linux下安装Oracle 11g详细过程

所以去建立下这个目录

[root@powerlong4 rpms]# mkdir /etc/oratab

[root@powerlong4 rpms]#

[root@powerlong4 rpms]# chown -R Oracle.oinstall /etc/oratab

[root@powerlong4 rpms]#

8.15,之后点击OK按钮,开始创建数据库,如下图所示:

Linux下安装Oracle 11g详细过程

等待35分钟后,数据库创建完毕,之后点击,如下所示:

Linux下安装Oracle 11g详细过程

9,简单验

[oracle@powerlong4 ~]$ sqlplus "/ as sysdba"

 


SQL*Plus: Release 11.2.0.1.0 Production on Sat Jan 24 14:51:10 2015

 


Copyright (c) 1982, 2009, Oracle.  All rights reserved.

 

 

 

Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

 


SQL> create table z_test(id number,name varchar(20));

 


Table created.

 


SQL> insert into z_test select 1,'a' from dual;

 


1 row created.

 


SQL> select * from z_test;

 


        ID NAME

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

          1 a

 


SQL> commit;

 


Commit complete.

 


SQL> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

With the Partitioning, OLAP, Data Mining and Real Application Testing options

[oracle@powerlong4 ~]$

10,报错信息记录

 

 

 

 

 (1)报错

>>> Ignoring required pre-requisite failures. Continuing...

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-21_06-07-35PM. Please wait ...[oracle@powerlong4 database]$ Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2015-01-21_06-07-35PM/jdk/jre/lib/i386/xawt/libmawt.so: libXext.so.6: cannot open shared object file: No such file or directory

  at java.lang.ClassLoader$NativeLibrary.load(Native Method)

  at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)

  at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1647)

  at java.lang.Runtime.load0(Runtime.java:769)

  at java.lang.System.load(System.java:968)

  at java.lang.ClassLoader$NativeLibrary.load(Native Method)

  at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1751)

  at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1668)

  at java.lang.Runtime.loadLibrary0(Runtime.java:822)

  at java.lang.System.loadLibrary(System.java:993)

  at sun.security.action.LoadLibraryAction.run(LoadLibraryAction.java:50)

  at java.security.AccessController.doPrivileged(Native Method)

  at java.awt.Toolkit.loadLibraries(Toolkit.java:1509)

  at java.awt.Toolkit.<clinit>(Toolkit.java:1530)

  at com.jgoodies.looks.LookUtils.isLowResolution(Unknown Source)

  at com.jgoodies.looks.LookUtils.<clinit>(Unknown Source)

  at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:122)

  at java.lang.Class.forName0(Native Method)

  at java.lang.Class.forName(Class.java:242)

  at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1783)

  at javax.swing.UIManager.setLookAndFeel(UIManager.java:480)

  at oracle.install.commons.util.Application.startup(Application.java:758)

  at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:164)

  at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)

  at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:265)

  at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:114)

  at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:132)

^C

 


(1)  需要安装 yum install libXext* -y 

(2)  chown -R oracle:oinstall /usr/*

yum install libXext.i686 -y

 

在64位的CentOS安装64位的oracle的时候,有时候会出现“libXext.so.6: cannot open shared object file:”的错误。

这个原因主要是oracle在安装的时候需要安装一些32位的lib,也就是类似于windows下的dll

出现这个问题,可以采用如下的解决办法:

#yum install libXext.i686  即可。

 


(2)报错

[oracle@powerlong4 database]$ ./runInstaller 

Starting Oracle Universal Installer...

 


Checking Temp space: must be greater than 80 MB.  Actual 38250 MB    Passed

Checking swap space: must be greater than 150 MB.  Actual 2047 MB    Passed

Checking monitor: must be configured to display at least 256 colors

    >>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set.    Failed <<<<

 


Some requirement checks failed. You must fulfill these requirements before

 


continuing with the installation,

 


Continue? (y/n) [n] y

 

 

 

>>> Ignoring required pre-requisite failures. Continuing...

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-01-21_07-15-20PM. Please wait ...[oracle@powerlong4 database]$ Exception in thread "main" java.lang.NoClassDefFoundError

  at java.lang.Class.forName0(Native Method)

  at java.lang.Class.forName(Class.java:164)

  at java.awt.Toolkit$2.run(Toolkit.java:821)

  at java.security.AccessController.doPrivileged(Native Method)

  at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:804)

  at com.jgoodies.looks.LookUtils.isLowResolution(Unknown Source)

  at com.jgoodies.looks.LookUtils.<clinit>(Unknown Source)

  at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java:122)

  at java.lang.Class.forName0(Native Method)

  at java.lang.Class.forName(Class.java:242)

  at javax.swing.SwingUtilities.loadSystemClass(SwingUtilities.java:1783)

  at javax.swing.UIManager.setLookAndFeel(UIManager.java:480)

  at oracle.install.commons.util.Application.startup(Application.java:758)

  at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:164)

  at oracle.install.commons.flow.FlowApplication.startup(FlowApplication.java:181)

  at oracle.install.commons.base.driver.common.Installer.startup(Installer.java:265)

  at oracle.install.ivw.db.driver.DBInstaller.startup(DBInstaller.java:114)

  at oracle.install.ivw.db.driver.DBInstaller.main(DBInstaller.java:132)

^C

[oracle@powerlong4 database]$

  需要在Linux上安装图形界面服务端程序X Window

yum groupinstall "X Window System" #安装X Window

[root@powerlong4 database]# yum groupinstall "X Window System" "Desktop Platform" Desktop

yum install vnc

 [root@powerlong4 database]# export DISPLAY=192.168.121.217:0.0

[root@powerlong4 database]# xhost +

access control disabled, clients can connect from any host

[root@powerlong4 database]#

 

更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-02/113222.htm