阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

CentOS 6.5上Oracle 11g R2静默安装

235次阅读
没有评论

共计 6770 个字符,预计需要花费 17 分钟才能阅读完成。

一、环境准备环境

操作系统:CentOS release 6.5 (Final)

内核版本:2.6.32-431.el6.x86_64

物理内存:2G(必须大于 1G)

swap 分区:3G(必须大于 3G)

硬盘空间:100G(必须大于 100G)

Oracle 版本:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 – 64bit Production

说明:物理内存如果小于 2G,硬盘如果小于 100G,oracle 安装前环境监测的时候会有错误提示

二、安装前准备

1、添加一块 120G 的硬盘,并挂载到了 /oracle/ 目录下

2、上传 oracle 的软件包并解压

3、在 /etc/hosts 文件中的回环 IP 中添加主机名

127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4 master.fansik.com

::1        localhost localhost.localdomain localhost6 localhost6.localdomain6 master.fansik.com

4、关闭 selinux

5、关闭防火墙

6、安装依赖的包

# yum install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio.i686 libaio-devel.i686 numactl-devel sysstat unixODBC.i686 unixODBC-devel.i686 pcre-devel libstdc++.i686

说明:有很多的安装包需要 32 的安装包,查看安装文件的时候会提示是 i386 的包,但,实际安装 i686 的也可以,如果因为包检测不通过,可以通过安装日志查看到底是哪些包没装或版本不对,有些包即 使安装了 i686 还是会提示缺失 i386 的包,但是只要不出现 error 或者 FAILED 就可以了。

7、准备安装用户及用户组

# groupadd oinstall

# groupadd dba

# useradd -g oinstall -G dba -d /home/oracle oracle

# passwd oracle

8、修改内核参数配置文件

# vim /etc/sysctl.conf 在文件最后增加

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 2147483648

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 = 10485866

使上面的参数生效

# sysctl -p

9、修改用户的限制文件

# vim /etc/security/limits.conf 加入如下内容

oracle          soft    nproc          2047

oracle          hard    nproc          16384

oracle          soft    nofile          1024

oracle          hard    nofile          65536

oracle          soft    stack          10240

10、修改 /etc/pam.d/login 文件(32 位系统在 /lib 下)

session  required  /lib64/security/pam_limits.so

session  required  pam_limits.so

11、修改 /etc/profile,增加如下内容:

if [$USER = “oracle”]; then

  if [$SHELL = “/bin/ksh”]; then

  ulimit -p 16384

  ulimit -n 65536

  else

  ulimit -u 16384 -n 65536

  fi

fi

# source /etc/profile

12、创建安装目录和设置文件权限

# mkdir /oracle/11.2.0  // 数据库安装目录

# mkdir /oracle/oradata  // 数据文件目录

# mkdir /oracle/oradata_bak  // 数据库备份目录

# mkdir /home/oracle/inventory  // 清单目录

# chown -R oracle:oinstall /oracle

# chown -R oracle:oinstall /home/oracle/inventory

# chmod -R 755 /oracle

13、编辑静默安装文件

# su – oracle

$ cp -R /oracle/database/response /home/oracle  // 复制一份模板

$ cd /home/oracle/response

$ mv db_install.rsp db_install_swonly.rsp // 因为下面的安装是只安装软件不安装启动数据库实例,所以改个名字以提示自己

$ vim db_install_swonly.rsp    // 开始修改这个安装响应文件

需要设置的选项如下:

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v11_2_0  // 系统生成的,不要修改

oracle.install.option=INSTALL_DB_SWONLY  // 只安装软件,不安装启动数据库

ORACLE_HOSTNAME=oracle11gCentOS6.dlxg.gov.cn            // 通过 hostname 命令获得

UNIX_GROUP_NAME=oinstall

INVENTORY_LOCATION=/home/oracle/inventory

SELECTED_LANGUAGES=en,zh_CN

ORACLE_HOME=/opt/oracle/11.2.0

ORACLE_BASE=/opt/oracle

oracle.install.db.InstallEdition=EE

oracle.install.db.isCustomInstall=false oracle.install.db.customComponents=oracle.server:11.2.0.1.0,    oracle.sysman.ccr:10.2.7.0.0,oracle.xdk:11.2.0.1.0,oracle.rdbms.oci:11.2.0.1.0,oracle.network:11.2.0.1.0,oracle.network.listener:11.2.0.1.0,oracle.rdbms:11.2.0.1.0,oracle.options:11.2.0.1.0,oracle.rdbms.partitioning:11.2.0.1.0,oracle.oraolap:11.2.0.1.0,oracle.rdbms.dm:11.2.0.1.0,oracle.rdbms.dv:11.2.0.1.0,orcle.rdbms.lbac:11.2.0.1.0,oracle.rdbms.rat:11.2.0.1.0,oracle.install.db.DBA_GROUP=dba,oracle.install.db.OPER_GROUP=dba

DECLINE_SECURITY_UPDATES=true      // 一定要设置为 true

三、安装 oracle 软件

$ cd /oracle/database

$ ./runInstaller -silent -responseFile /home/oracle/response/db_install_swonly.rsp

安装过程中,如果提示 [WARNING] 不必理会,此时安装程序仍在进行,如果出现[FATAL],则安装程序已经停止了。打开另一个终端,执行 #tail -f /home/oracle/inventory/logs/installActions……log

可以实时跟踪查看安装日志,了解安装的进度。

当出现

  以下配置脚本需要以 “root” 用户的身份执行。

  #!/bin/sh

  #要运行的 Root 脚本

  /home/oracle/inventory/orainstRoot.sh

  /oracle/11.2.0/root.sh

  要执行配置脚本, 请执行以下操作:

    1. 打开一个终端窗口

    2. 以 “root” 身份登录

    3. 运行脚本

    4. 返回此窗口并按 “Enter” 键继续

 Successfully Setup Software.

 表示安装成功了。按照其提示操作。

使用 root 用户执行以上脚本

# /home/oracle/inventory/orainstRoot.sh

# /oracle/11.2.0/root.sh

四、安装数据库实例

1、编辑静默建库响应文件

$ cd /home/oracle/response

$ mv dbca.rsp dbca_fansik.rsp  // 改名为 dbca_数据库名.rsp

2、配置监听

注:netca 命令是 oracle 的 bin 目录下的命令,因此要配置好环境变量后才能使用:将 /oracle/11.2.0/bin 添加到.bash_profile 中,然后重读 source ~/bash_profile

$ netca /silent /responsefile /home/oracle/response/netca.rsp

正在对命令行参数进行语法分析:

 参数 ”silent” = true

 参数 ”responsefile” = /home/oracle/response/netca.rsp

 完成对命令行参数进行语法分析。

 Oracle Net Services 配置:

 完成概要文件配置。

 Oracle Net 监听程序启动:

  正在运行监听程序控制:

    /opt/oracle/11.2.0/bin/lsnrctl start LISTENER

  监听程序控制完成。

  监听程序已成功启动。

 监听程序配置完成。

 成功完成 Oracle Net Services 配置。退出代码是 0

成功运行后,在 /oracle/11.2.0/network/admin 目录下生成 sqlnet.ora 和 listener.ora 两个文件。

通过 netstat -tlnup | grep 1521 命令,看到

tcp  0  0 :::1521      :::*      LISTEN      5477/tnslsnr

说明监听器已经在 1521 端口上开始工作了。

3、安装数据库实例

修改 /home/oracle/response/dbca_fansik.rsp,设置如下:

RESPONSEFILE_VERSION = “11.2.0”  // 不能更改

 OPERATION_TYPE = “createDatabase”

 GDBNAME = “master.fansik.com”  // 数据库的名字

 SID = “fansik”    // 对应的实例名字

 TEMPLATENAME = “General_Purpose.dbc” // 建库用的模板文件

 SYSPASSWORD = “fanjinbao”  //SYS 管理员密码

 SYSTEMPASSWORD = “fanjinbao”  //SYSTEM 管理员密码

 DATAFILEDESTINATION = /oracle/oradata // 数据文件存放目录

 RECOVERYAREADESTINATION=/oracle/oradata_back // 恢复数据存放目录

 CHARACTERSET = “UFT8”  // 字符集,重要!!! 建库后可以更改。

 TOTALMEMORY = “2048”    //oracle 内存 2048MB

创建 oracle 数据库实例:

 $dbca -silent -responseFile /home/oracle/response/dbca_fansik.rsp

执行以上命令后会有以下提示:

复制数据库文件

1% 已完成

3% 已完成

11% 已完成

18% 已完成

26% 已完成

37% 已完成

正在创建并启动 Oracle 实例

40% 已完成

45% 已完成

50% 已完成

55% 已完成

56% 已完成

60% 已完成

62% 已完成

正在进行数据库创建

66% 已完成

70% 已完成

73% 已完成

85% 已完成

96% 已完成

100% 已完成

有关详细信息, 请参阅日志文件 “/oracle/cfgtoollogs/dbca/master/master.log”。

数据库信息:

 全局数据库名:master.fansik.com

 系统标识符 (SID):fansik

五、查看 oracle 是否启动

查看 oracle 进程

$ ps -ef | grep oracle

查看监听状态

$ lsnrctl status

注意:如果未看到监听信息,是 oracle 环境变量的问题,去设置一下环境变量:

使用 root 用户去操作

# vim /etc/profile.d/oracle.sh 加入如下内容:

export ORACLE_SID=fansik

export ORACLE_HOME=/oracle/11.2.0

export PATH=$ORACLE_HOME/bin:$PATH

重读配置文件:

# source /etc/profile

六、修改数据库为归档模式(归档模式才能热备份,增量备份)

$ sqlplus / as sysdba

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down

SQL> startup mount

ORACLE instance started.

Total System Global Area  839282688 bytes

Fixed Size        2217992 bytes

Variable Size      494929912 bytes

Database Buffers   335544320 bytes

Redo Buffers        6590464 bytes

Database mounted.

SQL> alter database archivelog;

Database altered.

SQL> alter database flashback on;

Database altered.

SQL> alter database open;

Database altered.

SQL> execute utl_recomp.recomp_serial();

PL/SQL procedure successfully completed.

SQL> alter system archive log current;

System altered.

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 启动配置文件

$ vim /etc/oratab

fansik:/oracle/11.2.0:Y

修改后边可以通过 dbstart 启动实例,可以通过 dbshut 关闭实例了:

关闭 oracle 进程

$ dbshut /oracle/11.2.0

启动 oracle 进程

$ dbstart /oracle/11.2.0

启动 oracle 后:如果使用:sqlplus / as sysdba 登录时提示:

ERROR:

ORA-01031: insufficient privileges

解决办法:

$ orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=fanjinbao entries=5 force=y

八、Oracle 启动脚本,开机自启动设置

参考:http://www.linuxidc.com/Linux/2017-01/139998.htm

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

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139999.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-22发表,共计6770字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中