Centos7.3-Oracle11g数据库静默部署

weblogic下载地址 提取码:pgkd


1、按需配置swap分区

[root@oracledb ~]# dd if=/dev/zero of=/swap bs=1024 count=2048000
[root@oracledb ~]# mkswap /swap
[root@oracledb ~]# chmod 600 /swap
[root@oracledb ~]# swapon /swap
[root@oracledb ~]# echo "/swap swap swap default 0 0">>/etc/fstab  #设置成自动挂载

2、配置hostname以及关闭selinux

[root@oracledb ~]# hostnamectl set-hostname oracledb
[root@oracledb ~]# vi /etc/hostname // 127.0.0.1 oracledb #写入 hostname
[root@oracledb ~]# vi /etc/selinux/config //SELINUX=enforcin 改 SELINUX=disabled
[root@oracledb ~]# setenforce 0

3、安装环境所需依赖

[root@oracledb ~]# yum -y install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel net-tools vim unzip
[root@oracledb ~]# rpm -q binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel unzip vim net-tools | grep "not installed" //检测依赖是否报错

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

[root@oracledb ~]# groupadd oinstall    // Oracle inventory 组(通常为 oinstall)
[root@oracledb ~]# groupadd dba     // OSDBA 组 (通常为 dba)
[root@oracledb ~]# groupadd oper    // OSOPER 组 (通常为 oper)
[root@oracledb~]# useradd -g oinstall -G dba oracle     //软件所有者(通常为 oracle)
[root@oracledb ~]# passwd oracle    //更新 oracle 用户密码

5、配置内核参数和资源限制

在/etc/sysctl.conf 添加如下参数,如果系统中某个参数高于下面的参数的值,保留较大的值,下面的数值只是官方要求的最小值,可以根据系统调整数值,以优化系统性能
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 536870912
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
[root@oracledb ~]# sysctl -p //使内核参数立即生效
在/etc/security/limits.conf 中添加如下参数
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
在/etc/pam.d/login 文件中,添加下面内容
session required /lib64/security/pam_limits.so
session required pam_limits.so
/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
[root@oracledb ~]# source /etc/profile      //使profile文件生效

6、配置 oracle 用户环境变量,在文件/home/oracle/.bash_profile 里添加下面内容(具体值根据实际情况修改)

umask 022
export ORACLE_HOSTNAME=oracledb
export ORACLE_BASE=/data/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/
export ORACLE_SID=ORCL
export 
PATH=.:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch:$ORACLE_HOME/jdk/bin:$PATH
export LC_ALL="en_US"
export LANG="en_US"
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"

7、创建 oracle 用户目录赋予权限并重启系统

[root@oracledb ~]# mkdir -p /data/app/
[root@oracledb ~]# chown -R oracle:oinstall /data/app/
[root@oracledb ~]# chmod -R 775 /data/app/
[root@oracledb ~]# reboot

8、上传 oracle 安装包至/tmp 目录并解压

[root@oracledb ~]# unzip -q linux.x64_11gR2_database_1of2.zip -d /data
[root@oracledb ~]# unzip -q linux.x64_11gR2_database_2of2.zip -d /data
[root@oracledb ~]# mkdir -p /data/etc
[root@oracledb ~]# cp /data/database/response/* /data/etc/

9、修改/data/etc/db_install.rsp 修改以下变量值

oracle.install.option=INSTALL_DB_SWONLY
DECLINE_SECURITY_UPDATES=true
UNIX_GROUP_NAME=oinstall
NVENTORY_LOCATION=/data/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOSTNAME=oracledb
ORACLE_HOME=/data/app/oracle/product/11.2.0
ORACLE_BASE=/data/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.isCustomInstall=true
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba

10、开始安装

[root@oracledb data]# su – oracle
[oracle@oracledb data]$ cd /data/database
[oracle@oracledb data]$ ./runInstaller -silent -responseFile 
/data/etc/db_install.rsp -ignorePrereq
安装期间可以使用 tail 命令监看 oracle 的安装日志(令起一个 ssh 通道去监测)ail -f 屏幕输出提示 log 路径
安装完成后有如下提示,如果有类似如下提示,说明安装完成

11、使用 root 用户执行脚本

[oracle@oracledb database]$ su – root
[root@oracledb ~]# sh /data/app/oracle/inventory/orainstRoot.sh
[root@oracledb ~]# sh /data/app/oracle/product/11.2.0/root.sh

12、配置监听程序

[root@oracledb ~]# su - oracle
[oracle@oracledb ~]$ netca /silent /responsefile /data/etc/netca.rsp

查看监听端口
[oracle@oracledb ~]$ netstat -tnpl | grep 1521  //此处找不到命令请yum安装net-tools

13、静默创建数据库

切换 Root 用户,编辑应答文件/data/etc/dbca.rsp
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/data/app/oracle/oradata
RECOVERYAREADESTINATION=/data/app/oracle/fast_recovery_area
CHARACTERSET = "AL32UTF8"
TOTALMEMORY = "1638"
执行静默建库
[root@oracledb oracle]# su - oracle
[oracle@oracledb ~]$ dbca -silent -responseFile /data/etc/dbca.rsp

查看进程
[oracle@oracledb ~]$ ps -ef | grep ora_ | grep -v grep

查看监听状态
[oracle@oracledb ~]$ lsnrctl status

14、登录数据库

[oracle@oracledb ~]$ su – oracle
[oracle@oracledb ~]$ cp /data/app/oracle/admin/orcl/pfile/init.ora.8112019144720 
/data/app/oracle/product/11.2.0/dbs/initORCL.ora
[oracle@oracledb /]$ sqlplus / as sysdba
SQL> startup
提示: cannot mount database in EXCLUSIVE mode //无法以独占模式装载数据库

处理方式
SQL> exit;      //退出数据库
[oracle@oracledb /]$ ipcs -s    //查看信号量

清除信号量
[oracle@oracledb /]$ ipcrm -s 557056
[oracle@oracledb /]$ ipcrm -s 688129
再次进入数据库激活 scoot 用户
[oracle@oracledb /]$ sqlplus / as sysdba
SQL> startup

SQL> select * from v$version; //查看版本
SQL> alter user scott account unlock; //激活 scott 用户
SQL> alter user scott identified by tiger; //更改 scott 用户的密码
SQL> select username,account_status from dba_users; //查询 user 表

15、防火墙配置放开 Oracle 的端口

[oracle@oracledb /]$ su roo[root@oracledb /]# firewall-cmd --zone=public --add-port=1521/tcp –permanent
[root@oracledb /]# firewall-cmd --reload

16、SQL 服务常用命令

SQL>shutdown immediate; //关闭实例数据库
SQL>startup nomount; //重新开启
SQL> shutdown //关闭数据库实例

[oracle@localhost ~]$ lsnrctl start //打开监听服务
[oracle@localhost ~]$ lsnrctl status //查看 oracle 监听器运行情况
[oracle@localhost ~]$ lsnrctl stop //关闭监听
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值