静默安装oracle11g

oracle软件安装对操作系统的要求

硬件要求

物理内存不小于1G(grep MemTotal /proc/meminfo)

swap空间不小于2G(grep SwapTotal /proc/meminfo)

硬盘空间一般不小于5G

软件要求

     操作系统的限制:详情请见oracle官方文档

     软件依赖:(摘自oracle 11g Release 1)

https://docs.oracle.com/cd/E11882_01/install.112/e47689/pre_install.htm#BABCFJFG

binutils-2.15.92.0.2 compat-libstdc++-33-3.2.3

compat-libstdc++-33-3.2.3 (32 bit) elfutils-libelf-0.97

elfutils-libelf-devel-0.97 expat-1.95.7

gcc-3.4.6 gcc-c++-3.4.6

glibc-2.3.4-2.41 glibc-2.3.4-2.41 (32 bit)

glibc-common-2.3.4 glibc-devel-2.3.4

glibc-headers-2.3.4 libaio-0.3.105

libaio-0.3.105 (32 bit) libaio-devel-0.3.105

libaio-devel-0.3.105 (32 bit) libgcc-3.4.6

libgcc-3.4.6 (32-bit) libstdc++-3.4.6

libstdc++-3.4.6 (32 bit) libstdc++-devel 3.4.6

make-3.80 numactl-0.6.4.x86_64

pdksh-5.2.14 sysstat-5.0.5

 

静默方式安装oracle server

软件依赖的安装

创建操作系统所需的用户和组

修改操作系统的内核参数

修改用户限制

使用oracle-rdbms-server-11gR2-preinstall来简化oracle的安装

这个包是oracle官方提供给安装oracle用户的,用来简化oracle软件的安装。执行这个步骤,可以省略上述带有删除线的步骤。

下面是步骤:

1)根据操作系统的版本,选择合适的yum源。

    cd /etc/yum.repos.d

    wget http://yum.oracle.com/public-yum-ol7.repo


2)选择合适的GPG KEY,进行验证安装

 wget https://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle

3)安装oracle-rdbms-server-11gR2-preinstall

  yum install oracle-rdbms-server-11gR2-preinstall
  rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc-2.5 glibc-common glibc-devel glibc-headers pdksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel 
yum install elfutils-libelf-devel 
yum install glibc-2.5 
yum install  pdksh 
yum install unixODBC 
yum install unixODBC-devel

4)设置oracle的用户的密码

passwd oracle

创建oracle安装目录和设置环境变量

创建相关安装目录:

mkdir -p /u01/app/oracle

mkdir /u01/app/oracle/oraInventory

chown -R oracle:oinstall /u01/app/oracle

chmod -R 755 /u01/app/oracle/ source  /home/oracle/.bash_profile


设置环境变量:

ORACLE_BASE=/u01/app/oracle
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOME
ORACLE_SID=orcl 
export ORACLE_SID
PATH=$PATH:$ORACLE_HOME/bin 
source  /home/oracle/.bash_profile

 

设置操作系统的hostname

vi /etc/hosts

#realip hostname.domain.com hostname

192.168.233.133 oracledb.localdomain.com oracledb

hostname oracledb

重启服务器

reboot

解压缩文件

 
 
unzip linux.x64_11gR2_database_1of2.zip -d /upload/

unzip linux.x64_11gR2_database_2of2.zip -d /upload/
chown -R  oracle:oinstall /upload/database/

准备应答文件

oracle解压缩之后,在database/response中存放着一些应答文件的模板,可以使用这些应答模板进行修改,来执行非交互式的数据库软件和数据库的安装。

  • dbca.rsp:创建数据库的应答文件模板
  • db_install.rsp:安装数据库软件的应答文件模板:
  • netca.rsp:配置oracle中的网络使用的应答文件的模板
cd /u01/app/oracle

mkdir responseFiles

cp /upload/database/response/* responseFiles/

cp responseFiles/db_install.rsp responseFiles/enterprise.rsp

chown -R oracle:oinstall responseFiles

chmod -R 755 responseFiles/

enterprise.rsp中改动的内容如下:
oracle.install.option=INSTALL_DB_SWONLY // 安装类型


ORACLE_HOSTNAME=oracledb // 主机名称(hostname查询)


UNIX_GROUP_NAME=oinstall // 安装组


INVENTORY_LOCATION=/u01/app/oracle/oraInventory


SELECTED_LANGUAGES=en,zh_CN,zh_TW // 选择语言


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


ORACLE_BASE=/u01/app/oracle


oracle.install.db.InstallEdition=EE // oracle版本


oracle.install.db.isCustomInstall=false //自定义安装,否,使用默认组件


oracle.install.db.DBA_GROUP=dba // dba用户组


oracle.install.db.OPER_GROUP=oinstall // oper用户组


oracle.install.db.config.starterdb.type=GENERAL_PURPOSE //数据库类型


oracle.install.db.config.starterdb.globalDBName=orcl //globalDBName


oracle.install.db.config.starterdb.SID=orcl //SID


oracle.install.db.config.starterdb.memoryLimit=512//自动管理内存的内存(M)


oracle.install.db.config.starterdb.password.ALL=oracle //设定所有数据库用户使用同一个密码


SECURITY_UPDATES_VIA_MYORACLESUPPORT=false(手动写了false)


DECLINE_SECURITY_UPDATES=true(如果不设置成true,安装失败,会提示输入邮件地址)

执行命令完成安装

 cd database/
 su - oracle
 cd /upload/database/
 ./runInstaller -silent -force -ignoreSysPrereqs -ignorePrereq -responseFile /u01/app/oracle/responseFiles/enterprise.rsp

  • -silent:z指定安装的类型
  • -ignoreSysPrereqs:忽略系统先决条件的检查
  • -ignorePrereq:忽略系统运行条件的检查
  • -ignorePrereq:执行应答文件的位置

当日志出现如下时,以root用户登录,执行以下脚本:

To execute the configuration scripts:

1. Open a terminal window 

2. Log in as "root" 

3. Run the scripts 

4. Return to this window and hit "Enter" key to continue

 

/u01/app/oracle/oraInventory/orainstRoot.sh

/u01/app/oracle/product/11.2.0/dbhome_1/root.sh 

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

     1. 打开一个终端窗口

     2. 以 "root" 身份登录

     3. 运行脚本

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

sh /u01/app/oracle/oraInventory/orainstRoot.sh

sh /u01/app/oracle/product/11.2.0/dbhome_1/root.sh

验证实例安装结果(oracle用户下执行):

    sqlplus / as sysdba

    出现:

SQL*Plus: Release 11.2.0.1.0 Production on Sat Mar 17 12:16:29 2018

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

Connected to an idle instance.

则说明oracle实例安装完成。

create database创建oracle数据库

oracle数据库启动状态可以分为三个阶段。
         nomount:主要读取参数文件
         mount:主要读取控制文件
         open::主要读取参数文件

    create database语句,需要数据库在nomount状态下执行,我们需要手动的创建参数文件。参数文件可以从别的数据库拷贝过来。下面我们演示的是手动的创建文本的参数文件(pfile)

创建数据库文件的相关目录

mkdir -p /u01/app/oracle/admin/ORCL/adump #oracle相关日志的存放位置
mkdir -p /u01/app/oracle/oradata/orcl	#oracle数据文件的存放位置
mkdir -p /u01/app/oracle/flash_recovery_area/db_1 #oracle闪存恢复的工作空间

准备参数文件

vi /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora
ORCL.__db_cache_size=486539264
ORCL.__java_pool_size=16777216
ORCL.__large_pool_size=16777216
ORCL.__oracle_base='/u01/app/oracle'
ORCL.__pga_aggregate_target=620756992
ORCL.__sga_target=973078528
ORCL.__shared_io_pool_size=0
ORCL.__shared_pool_size=402653184
ORCL.__streams_pool_size=33554432
*.aq_tm_processes=0
*.audit_file_dest='/u01/app/oracle/admin/ORCL/adump'
*.audit_trail='db'
*.compatible='11.2.0.1.0'
*.control_files='/u01/app/oracle/oradata/orcl/control01.ctl','/u01/app/oracle/oradata/orcl/control02.ctl'
*.db_block_size=8192
*.db_domain=''
*.db_name='db1'
*.db_recovery_file_dest='/u01/app/oracle/flash_recovery_area'
*.db_recovery_file_dest_size=4070572032
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
*.job_queue_processes=0
*.memory_target=400M
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

准备和运行create database语句

启动数据库到nomount状态:

SQL> startup nomount pfile=/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora;

出现如下信息,则说明数据库切换到nomount状态成功

SQL> startup nomount;
ORACLE instance started.

Total System Global Area  417546240 bytes
Fixed Size		    2213936 bytes
Variable Size		  268437456 bytes
Database Buffers	  142606336 bytes
Redo Buffers		    4288512 bytes
SQL> 

执行create database语句,根据要求进行相关设置,注意字符集的相关设置。

CREATE DATABASE db1
   USER SYS IDENTIFIED BY oracle
   USER SYSTEM IDENTIFIED BY oracle
   MAXLOGMEMBERS 5
   MAXLOGFILES 5
   MAXLOGHISTORY 1
   MAXDATAFILES 100
   CHARACTER SET US7ASCII
   NATIONAL CHARACTER SET AL16UTF16
   EXTENT MANAGEMENT LOCAL
   LOGFILE 
	   GROUP 1 ('/u01/app/oracle/oradata/orcl/redo01.log') SIZE 100M,
           GROUP 2 ('/u01/app/oracle/oradata/orcl/redo02.log') SIZE 100M,
           GROUP 3 ('/u01/app/oracle/oradata/orcl/redo03.log') SIZE 100M
   DATAFILE 
	  '/u01/app/oracle/oradata/orcl/system01.dbf' SIZE 325M REUSE
   SYSAUX DATAFILE
	  '/u01/app/oracle/oradata/orcl/sysaux01.dbf' SIZE 325M REUSE
   DEFAULT TABLESPACE users
      DATAFILE '/u01/app/oracle/oradata/orcl/users01.dbf'
      SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED
   DEFAULT TEMPORARY TABLESPACE tempts1
      TEMPFILE '/u01/app/oracle/oradata/orcl/temp01.dbf'
      SIZE 20M REUSE
   UNDO TABLESPACE UNDOTBS1
      DATAFILE '/u01/app/oracle/oradata/orcl/undotbs01.dbf'
      SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;

第一次运行create database语句出错,删除相关目录

rm -rf /u01/app/oracle/admin/orcl/adump/*
rm -rf /u01/app/oracle/oradata/orcl/*

运行sql脚本生成数据字典

 
 
SQL> @?/rdbms/admin/catalog.sql
SQL> @?/rdbms/admin/catproc.sql
SQL> @?/sqlplus/admin/pupbld.sql#[以system用户运行]
SQL> @?/rdbms/admin/spcreate;    #create statpack

    注:如果不执行 spcreate脚本,生成ASH时,可能会报如下错误:

 Ora-20200: No Ash Samples Exist For Database/Instance

测试数据库是否创建成功

执行完上面创建数据字典的脚本之后,关闭数据库--启动数据库

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.

Total System Global Area  417546240 bytes
Fixed Size		    2213936 bytes
Variable Size		  268437456 bytes
Database Buffers	  142606336 bytes
Redo Buffers		    4288512 bytes
Database mounted.
Database opened.
SQL> create spfile from pfile;

File created.

SQL> 




猜你喜欢

转载自blog.csdn.net/kpp19920121/article/details/79590614