生产搭建环境:
操作系统:CentOS7.5
内存大小:32GB
硬盘:1T
注:正文中内核参数的优化根据实际环境修改
1 安装软件准备
1.1 软件准备

  1. jdk-8u161-linux-x64
    http://www.oracle.com
  2. ORACLE
    linux.x64_11gR2_database_1of2,linux.x64_11gR2_database_2of2
    http://www.oracle.com
    1.2 注意事项
    安装过程路径、密码尽量不要出现中文、特殊字符、空格、少于8位密码。
    2 Oracle数据库安装
    2.1 依赖包安装

  # yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel libaio libaio-devel libgcc libstdc++ libstdc++-devel make numactl sysstat libXp unixODBC unixODBC-devel

2.2 创建用户、设置密码


# groupadd oinstall
    # groupadd dba
    # useradd -m -g oinstall -G dba oracle
    # passwd oracle

2.3 配置系统内核参数


# vi /etc/sysctl.com

kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 15728640
kernel.sem = 1010 32000 1010 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
fs.aio-max-nr = 1048576
fs.file-max = 6815744

# sysctl -p

2.4 修改系统资源限制


# vi /etc/security/limits.conf

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240


2.5 修改环境变量


# vi /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

2.6 创建oracle安装路径和权限


# mkdir -p /u01/oracle
# chown -R oracle:oinstall /u01
# chmod 755 /u01/oracle

2.7 解压安装文件


# cd /opt/software
# unzip linux.x64_11gR2_database_1of2.zip -d /u01/oracle/
# unzip linux.x64_11gR2_database_2of2.zip -d /u01/oracle/
# chmod -R 700 /u01/oracle/database
# chown -R oracle:oinstall /u01/oracle/database

2.8 设置oracle用户环境变量


$ su -l oracle 
$ vi /home/oracle/.bash_profile

ORACLE_BASE=/u01/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
ORACLE_SID=srment
LD_LIBRARY_PATH=$ORACLE_HOME/lib
PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID LD_LIBRARY_PATH PATH

$ source /home/oracle/.bash_profile

2.9 静默安装


$ mkdir /u01/oracle/rsp/
$cp /u01/oracle/database/response/* /u01/oracle/rsp/
$ vi /u01/oracle/rsp/db_install.rsp

#----只装数据库软件
oracle.install.option=INSTALL_DB_SWONLY
#----配置主机名
ORACLE_HOSTNAME=主机名
#----指定oracle inventory目录的所有者
UNIX_GROUP_NAME=oinstall
#----指定产品清单oracle inventory目录的路径
INVENTORY_LOCATION=/u01/oraInventory
#----指定语言
SELECTED_LANGUAGES=en,zh_CN
#----设置ORALCE_HOME的路径
ORACLE_HOME=/u01/oracle/product/11.2.0/dbhome_1
#----指定ORALCE_BASE的路径
ORACLE_BASE=/u01/oracle/
#----安装数据库软件的版本,企业版
oracle.install.db.InstallEdition=EE
#----指定拥有DBA用户组,通常会是dba组
oracle.install.db.DBA_GROUP=dba
#----指定oper用户组
oracle.install.db.OPER_GROUP=oinstall
#----指定GlobalName
oracle.install.db.config.starterdb.globalDBName=zabbix
#----你指定的SID
oracle.install.db.config.starterdb.SID=zabbix
#----设置数据库编码
oracle.install.db.config.starterdb.characterSet=AL32UTF8
#----所有用户名的密码
oracle.install.db.config.starterdb.password.ALL=密码
#----安装时的安全更新检查
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
#----安装时不更新
DECLINE_SECURITY_UPDATES=true


配置dbca静默安装:


$ vi /u01/oracle/rsp/dbca.rsp

#----数据库的Global database name
GDBNAME = "zabbix"
#----数据库的实例名
SID = "zabbix"
#----指定sys用户密码
SYSPASSWORD = "密码"
#----指定system用户密码
SYSTEMPASSWORD = "密码"
#----指定数据文件存放的目录,默认$ORACLE_BASE/oradata
DATAFILEDESTINATION =
#----指定字符集
CHARACTERSET = "AL32UTF8"
#----指定国家字符集
NATIONALCHARACTERSET= "UTF8"
#----指定使用内存的大小,单位是MB。物理内存的60%-70%。
TOTALMEMORY = "8192"

$cd  /u01/oracle/database
$ ./runInstaller -silent -ignorePrereq -responseFile /u01/oracle/rsp/db_install.rsp

 使用root执行脚本


# /u01/oraInventory/orainstRoot.sh
    # /u01/oracle/product/11.2.0/dbhome_1/root.sh

 配置监听程序


$ cd $ORACLE_HOME/bin/
$ netca /silent /responsefile /u01/oracle/rsp/netca.rsp

 配置建库


$ cd $ORACLE_HOME/bin/
$dbca -silent -responseFile /u01/oracle/rsp/dbca.rsp

2.10 配置数据库启动参数


$vi /etc/oratab

zabbix:/u01/oracle/product/11.2.0/dbhome_1:Y

$ vi  /u01/oracle/product/11.2.0/dbhome_1/bin/dbshut

ORACLE_HOME_LISTNER=$ORACLE_HOME

$ vi /u01/oracle/product/11.2.0/dbhome_1/bin/dbstart

ORACLE_HOME_LISTNER=$ORACLE_HOME


 启动、停止数据库命令


$dbshut
$dbstart


2.11 防火墙开放数据库端口(root用户)
 编辑firewall开放相关端口:(--permanent永久生效,没有此参数重启后失效)


# firewall-cmd --zone=public --add-port=1521/tcp --permanent

 重新载入


 # firewall-cmd --reload

2.12 数据导入


# su -l oracle

$ mkdir /u01/oracle/backup

SQL> conn system/密码@zabbix;

SQL> create temporary tablespace zabbix_temp tempfile '/u01/oracle/oradata/zabbix/zabbix_temp.dbf' size 64m autoextend on next 64m maxsize unlimited extent management local;

SQL> create tablespace zabbix_data logging datafile '/u01/oracle/oradata/zabbix/zabbix_data.dbf' size 64m autoextend on next 64m maxsize unlimited extent management local;

SQL> create user 用户 identified by 密码 default tablespace zabbix_data temporary tablespace zabbix_temp;

SQL> grant connect,resource to 用户;

SQL> grant create view to 用户;

SQL> grant create public synonym to 用户;

SQL> grant drop public synonym to 用户;

SQL> grant unlimited tablespace to 用户;

SQL> create or replace directory dir_dump  as  '/u01/oracle/backup';

SQL> grant read,write on directory dir_dump to 用户;

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

SQL> alter system set processes=500 scope=spfile;

SQL> alter system set sessions=555 scope=spfile;

    SQL> exit

 $ impdp 用户名/密码@库名 DUMPFILE=zabbix.dmp DIRECTORY=dir_dump remap_schema=(dmp库名:当前用户名) remap_tablespace=(dmp库表空间:当前用户表空间) )

参数及部署过程有不足之处,还请多多指教!!