安装环境及系统要求 (下文具体参数值与路径根据自己的环境调整)
操作系统:Red Hat Enterprise Linux 6 (x86) 或者CentOS 6 (x64)
数据库:Oracle 11g r2 32-bit for Linux 或者 Oracle 11g r2 64-bit for Linux
内存:至少1G的物理内存
交换空间:1G的内存推荐设置swap 分区至少为2G
硬盘:至少5G硬盘空间
配置Linux系统参数进行Oracle的安装
在Root用户下执行以下步骤:
前提:
1. cat /etc/sysconfig/network (查看主机名)
vi /etc/hosts (把Ip 与 主机名加进去)
2. vi /etc/resolv.conf
在此文件最后加入:nameserver 8.8.8.8
(1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
编辑完成后按Esc键,输入“:wq”存盘退出
(2)修改/etc/pam.d/login 文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
session required /lib64/security/pam_limits.so (说明/lib64为x86_64位机器,如果是/lib则为32为机器,否则出现无法登陆现象)
session required pam_limits.so
编辑完成后按Esc键,输入“:wq”存盘退出
(3)修改linux内核,修改/etc/sysctl.conf文件,输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
编辑完成后按Esc键,输入“:wq”存盘退出
(4)编辑 /etc/profile ,输入命令:vi /etc/profile,按i键进入编辑模式,将下列内容加入该文件。
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
编辑完成后按Esc键,输入“:wq”存盘退出
(5)创建相关用户和组,作为软件安装和支持组的拥有者。
创建用户,输入命令:
groupadd oinstall
groupadd dba
创建Oracle用户和密码,输入命令:
useradd -g oinstall -G dba -m oracle
passwd oracle
然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认
(6)创建数据库软件目录和数据文件存放目录
输入命令:
mkdir /u01/app/oracle
(7)更改目录属主为Oracle用户所有
输入命令:
chown -R oracle:oinstall /u01/app/oracle
(8)配置好yum源,补包
yum install binutils compat-libcap1 vsftpd compat-libstdc++-33 iptraf gcc gcc-c++
glibc-devel glibc elfutils-libelf-devel compat-libcap1 compat-libstdc++-33 libaio-devel ksh libgcc
libstdc libstdc++ libstdc++-devel libaio libaio-devel make sysstat unixODBC unixODBC-devel -y
在oracle用户下执行以下步骤:
(1)配置oracle用户的环境变量
输入命令:
vi .bash_profile
按i进入编辑模式,增加以下内容:
PATH=$PATH:$HOME/bin
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=nifa
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
编辑完成后按Esc键,输入“:wq”存盘退出。 执行命令直接生效 source .bash_profile
(2)将Oracle安装包(以64位为例)复制到linux的home目录下,打开终端命令行界面,运行unzip命令解压oracle安装文件。
输入命令:
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
(3)创建oraInst.loc(命令 vim /etc/oraInst.loc 没有这个文件录入以下内容保存后会新建)
inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall
编辑完成后按Esc键,输入“:wq”存盘退出
(4) 静默安装软件 , 可以将原文件cp拷贝一份 。
[oracle@orcl ~]$ vi /home/oracle/database/response/db_install.rsp
[oracle@orcl ~]$ cat /home/oracle/database/response/db_install.rsp
oracle.install.option=INSTALL_DB_SWONLY //安装类型,只装数据库软件
ORACLE_HOSTNAME=oracle //主机名称(命令hostname查询)
UNIX_GROUP_NAME=oinstall // 安装组
INVENTORY_LOCATION=/u01/app/oracle/oraInventory//INVENTORY目录(**不填就是默认值,本例此 处需修改,因个人创建安装目录而定)
SELECTED_LANGUAGES=en,zh_CN // 选择语言
ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 // oracle_home *路径根据目录情况注意修改 本例安径/u01/app/oracle
ORACLE_BASE=/u01/app/oracle // oracle_base *注意修改
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=nifa //globalDBName
oracle.install.db.config.starterdb.SID=nifa //SID(**此处注意与环境变量内配置SID一致)
oracle.install.db.config.starterdb.memoryLimit=81920 //自动管理内存的内存(M)
oracle.install.db.config.starterdb.password.ALL=oracle //设定所有数据库用户使用同一个密码
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false //(手动写了false)
DECLINE_SECURITY_UPDATES=true // **注意此参数 设定一定要为true
[oracle@orcl ~]$ cd database/
[oracle@orcl database]$ ./database/runInstaller -silent -force -noconfig -ignorePrereq -responseFile
/home/oracle/database/response/db_install.rsp
### 参数说明:
/database是安装包解压后的路径,此处根据安装包解压所在位置做修改,因人而异。
runInstaller 是主要安装脚本
-silent 静默模式
-force 强制安装
-ignorePrereq忽略warning直接安装。
-responseFile读取安装应答文件。
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 2533 MB Passed
Checking swap space: must be greater than 150 MB. Actual 2047 MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2017-07-30_01-58-53PM. Please wait ...[oracle@orcl database]$ You can find the log of this install session at:
/u01/app/oracle/oraInventory/logs/installActions2017-07-30_01-58-53PM.log
The installation of Oracle Database 11g was successful.
Please check '/u01/app/oracle/oraInventory/logs/silentInstall2017-07-30_01-58-53PM.log' for more details.
As a root user, execute the following script(s):
1. /u01/app/oracle/11.2.0/product/db/root.sh
Successfully Setup Software.
(5) root执行脚本
[root@orcl ~]# /u01/app/oracle/11.2.0/product/db/root.sh
(6) 手动配置监听,文件不存在就手动创建一个
[oracle@orcl response]$ cat /u01/app/oracle/11.2.0/product/db/network/admin/listerer.ora
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.8)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
[oracle@orcl response]$ cat /u01/app/oracle/11.2.0/product/db/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/11.2.0/product/db/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
NIFA =
(DESCRIPTION =
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = nifa)
)
)
(7) DBCA静默建库:
[oracle@orcl bin]$ vi /home/oracle/database/response/dbca.rsp
[oracle@orcl bin]$ cat /home/oracle/database/response/dbca.rsp (有些值为#RECOVERYAREADESTINATION 可以使用默认值)
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "nifa"
SID = "nifa"
TEMPLATENAME = "General_Purpose.dbc"
STORAGETYPE=FS
DATAFILEDESTINATION =/oracle/app/oradata
RECOVERYAREADESTINATION=/oracle/app/flash_recovery_area
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "AL32UTF8"
LISTENERS=LISTENER
TOTALMEMORY = "7000"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
[oracle@orcl bin]$ $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/database/response/dbca.rsp
Copying database files
1% complete
3% complete
11% complete
18% complete
26% complete
37% complete
Creating and starting Oracle instance
40% complete
45% complete
50% complete
55% complete
56% complete
57% complete
60% complete
62% complete
Completing Database Creation
66% complete
70% complete
73% complete
85% complete
96% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/nifa/nifa.log" for further details.
说明:
如果使用asm , 则指定为 -storageType ASM 。 (注意没有带+)
如果为12c数据库,则 -createAsContainerDatabase true 指定为容器数据库
(8) 检查oracle实例是否正常运行
[oracle@orcl ~]$ ps -ef|grep ora_pmon
oracle 3400 5309 0 18:01 pts/1 00:00:00 grep ora_pmon
oracle 31779 1 0 15:45 ? 00:00:01 ora_pmon_nifa
[oracle@orcl ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Sun Jul 30 18:01:53 2017
Copyright (c) 1982, 2013, Oracle. All rights reserved.