- 上传文件到服务器目录
- 解压文件到当前目录
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
- 关闭selinux
vim /etc/selinux/config
设置SELINUX=disabled
-
关闭防火墙
-
安装Oracle 11g依赖包
yum install gcc make binutils gcc-c++ compat-libstdc++-33elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-develnumactl-devel sysstat unixODBC unixODBC-devel pcre-devel –y
- 添加安装用户和用户组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
id oracle
- 修改内核参数配置文件
vim /etc/sysctl.conf
在末尾添加以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
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 = 1048576
查看是否成功写进/etc/sysctl.conf文件中:
sysctl -p
其中kernel.shmmax = 1073741824为本机物理内存(2G)的一半,单位为byte。
- 修改用户的限制文件
修改/etc/security/limits.conf文件:
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
修改/etc/pam.d/login文件:
vim /etc/pam.d/login
在末尾添加以下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
修改/etc/profile文件:
vim /etc/profile
在末尾添加以下内容:
#oracle配置
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
- 创建安装目录和文件目录权限
mkdir -p /data/oracle/product/11.2.0
mkdir /data/oracle/oradata
mkdir /data/oracle/inventory
mkdir /data/oracle/fast_recovery_area
chown -R oracle:oinstall /data/oracle
chmod -R 775 /data/oracle
- 设置oracle用户环境变量
首先切换到oracle用户下:
su -l oracle
vim .bash_profile
在末尾添加以下内容:
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PATH
ORACLE_BASE=/data/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
注意,标红处必须与创建的数据库实例名称一致,否则数据库启动后无法访问。第一次配置完记得source一下。
source .bash_profile
- 编辑静默安装响应文件
复制安装文件夹response到当前oracle用户的~目录下:
[oracle@centos-linux ~]$ cp -R /usr/local/database/database/response/ .
[oracle@centos-linux ~]$ cd response/
[oracle@centos-linux response]$ vim db_install.rsp
需要设置的选项有:
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=CentOS
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/oracle/product/11.2.0
ORACLE_BASE=/data/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
- 根据响应文件安装oracle
[oracle@centos-linux response]$ cd /usr/local/database/database/
[oracle@centos-linux database]$ ./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
按照要求执行脚本。
打开终端,退出到root身份登录,执行脚本:
[root@centos-linux database]# sh /data/oracle/inventory/orainstRoot.sh
[root@centos-linux database]# sh /data/oracle/product/11.2.0/root.sh
- 以静默方式配置监听
重新使用oracle用户登录:
netca /silent /responseFile /home/oracle/response/netca.rsp
- 以静默方式建立新库和新的实例
vim /home/oracle/response/dbca.rsp
[GENERAL]
# oracle版本,不能更改
RESPONSEFILE_VERSION = "11.2.0"
# Description : Type of operation
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
# Description : Global database name of the database
# 全局数据库的名字=SID+主机域名# 第三方工具链接数据库的时候使用的service名称
GDBNAME = "orcl.oracle"
# Description : System identifier (SID) of the database
# 对应的实例名字
SID = "orcl"
# Description : Name of the template
# 建库用的模板文件
TEMPLATENAME = "General_Purpose.dbc"
# Description : Password for SYS user
# SYS管理员密码
SYSPASSWORD = "123456"
# Description : Password for SYSTEM user
# SYSTEM管理员密码
SYSTEMPASSWORD = "123456"
# Description : Password for SYSMAN user
# SYSMAN管理员密码
SYSMANPASSWORD = "123456"
# Description : Password for DBSNMP user
# DBSNMP管理员密码
DBSNMPPASSWORD = "123456"
# Description : Location of the data file's
# 数据文件存放目录
DATAFILEDESTINATION =/data/oracle/oradata
# Description : Location of the data file's
# 恢复数据存放目录
RECOVERYAREADESTINATION=/data/oracle/fast_recovery_area
# Description : Character set of the database
# 字符集,重要!!! 建库后一般不能更改,所以建库前要确定清楚。
# (CHARACTERSET = "AL32UTF8" NATIONALCHARACTERSET= "UTF8")
CHARACTERSET = "ZHS16GBK"
# Description : total memory in MB to allocate to Oracle
# oracle内存1638MB,物理内存2G*80%
TOTALMEMORY = "1638"