linux CentOS7安装oracle12c

纵然是瞬间 提交于 2020-02-12 13:29:17

初始虚拟机只给了20G内存,最后流程到最后静默安装数据库时提示内存空间不够

增加内存方法:https://www.cnblogs.com/dreamShines/p/12298612.html

一.环境准备、用户组创建、修改系统内核参数、修改用户配置
1.安装准备
systemctl stop firewalld.service #关闭防火墙
systemctl disable firewalld.service #禁止防火墙开机启动
systemctl status firewalld.service  #查看防火墙状态
2.关闭selinux
vi /etc/selinux/config #编辑文件
SELINUX=disabled  #修改的内容
3.修改host名称(可以省略)
# 在文件末尾加上192.168.159.129 oracle12c    名称自己取,前两行后面也加上名称,开始没加最后本机navicat连一直报监听找不着,实际监听是开了
#127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 oracle12c
#::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 oracle12c
#192.168.159.129 oracle12c
vi /etc/hosts
4.yum安装必要安装包(有错误就多执行几次)
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*i686 compat-libstdc++-33*.devel compat-libstdc++-33 compat-libstdc++-33*.devel gcc gcc-c++ glibc glibc*.i686 glibc-devel glibc-devel*.i686 ksh libaio libaio*.i686 libaio-devel libaio-devel*.devel libgcc libgcc*.i686 libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.devel libXi libXi*.i686 libXtst libXtst*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686
# 检查是否安装成功(31个安装包)
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
5.创建用户组
# 创建oinstall和dba组
groupadd oinstall
groupadd dba
# 创建oracle用户
useradd -g oinstall -G dba oracle    
# 设置oracle密码
passwd oracle #输入密码,确认密码后 passwd: all authentication tokens updated successfully.
# 查看创建结果
id oracle
6.修改内核参数
vi /etc/sysctl.conf
# 文件内容添加如下
fs.aio-max-nr = 1048576
fs.file-max = 6815744
# 该参数表示系统任意时刻可以分配的所有共享内存段的总和的最大值(以页为单位).其值应不小于
# shmmax/page_size(getconf PAGESIZE可以查询到).缺省值就是2097152
kernel.shmall = 2097152
#64 位 linux 系统:可取的最大值为物理内存值 -1byte ,建议值为多于物理内存的一半,一般取值大于 SGA_MAX_SIZE 即可,
# 可以取物理内存 -1byte.例:内存为 16G 时,该值为 16*1024*1024*1024-1 = 17179869183 
kernel.shmmax = 17179869183
# 缺省为32M,对于oracle来说,该缺省值太低了,通常将其设置为2G
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

sysctl -p #使配置生效
7.修改用户限制
vi /etc/security/limits.conf
# 在文件末尾添加下面6行内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 10240
8.修改用户登录库文件引用
vi /etc/pam.d/login
# 在文件末尾添加下面2行内容
session required /lib64/security/pam_limits.so
session required pam_limits.so
9.修改用户登录环境变量
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
10.创建安装目录,配置安装目录权限。
mkdir -p /usr/app/oracle
chown -R oracle:oinstall /usr/app/
chmod -R 775 /usr/app/
11.配置Oracle用户环境变量
su - oracle #切换用户
vi ~/.bash_profile # 添加内容如下

# 和创建的安装目录路径一样
export ORACLE_BASE=/usr/app/oracle
# 指定sid名称
export ORACLE_SID=orcl

source ~/.bash_profile #使配置生效source .bash_profile

二.数据库应用安装
1.使用oracle 用户,创建数据库安装配置文件夹etc
su - oracle #不是oracle用户就先切换用户,是就不用执行
cd /home/oracle/ #到oracle目录下
mkdir etc
2.上传安装文件到/home/oracle/目录下并解压(上传文件命令rz,需安装才能用此命令:yum install -y lrzsz)
su - root #切换到root用户
yum install -y unzip zip #安装解压软件,已经安装就不用执行
su - oracle #切换到oracle用户
unzip xxx.zip #解压文件
3.复制Oracle配置文件到etc目录下,并修改配置文件权限
cp /home/oracle/database/response/* /home/oracle/etc/ #复制文件
chmod 700 /home/oracle/etc/*.rsp #修改文件权限
4.修改静默安装配置文件db_install.rsp
vi /home/oracle/etc/db_install.rsp
# 修改内容如下
oracle.install.option=INSTALL_DB_SWONLY   #安装类型
UNIX_GROUP_NAME=oinstall    #安装组
INVENTORY_LOCATION=/usr/app/oracle/oraInventory   #与上面创建的安装目录有关/usr/app/oracle
ORACLE_HOME=/usr/app/oracle/product/12/db_1          #与上面创建的安装目录有关/usr/app/oracle
ORACLE_BASE=/usr/app/oracle                          #与上面创建的安装目录有关/usr/app/oracle
oracle.install.db.InstallEdition=EE                  #企业版本
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oinstall
oracle.install.db.OSBACKUPDBA_GROUP=oinstall
oracle.install.db.OSDGDBA_GROUP=oinstall
oracle.install.db.OSKMDBA_GROUP=oinstall
oracle.install.db.OSRACDBA_GROUP=oinstall
oracle.install.db.config.starterdb.type=GENERAL_PURPOSE  #数据库类型
oracle.install.db.config.starterdb.globalDBName=orcl    #数据库名
oracle.install.db.config.starterdb.SID=orcl                #实例名
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
oracle.install.db.config.starterdb.characterSet=AL32UTF8
5.开始安装,执行db_install.rsp
cd /home/oracle/database;
./runInstaller -silent -responseFile /home/oracle/etc/db_install.rsp #等待安装完成
6.切换到root用户,修改数据库配置
su - root
/usr/app/oracle/oraInventory/orainstRoot.sh
/usr/app/oracle/product/12/db_1/root.sh
7.修改oracle用户环境变量
su - oracle
vi ~/.bash_profile
# 后面追加内容如下
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_HOME=/usr/app/oracle/product/12/db_1
export PATH=$PATH:$ORACLE_HOME/bin
export LANG="zh_CN.UTF-8"
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.AL32UTF8"
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'

source .bash_profile #执行命令使环境变量生效
8.配置监听程序
cd /home/oracle;
netca /silent /responsefile /home/oracle/etc/netca.rsp
9.启动监听
lsnrctl start
10.静默建库配置文件修改
mkdir /usr/app/oracle/oradata;#创建数据文件存放的目录

vi etc/dbca.rsp
#修改如下
gdbName=orcl
sid=orcl
characterSet=AL32UTF8
listeners=LISTENER
databaseConfigType=SI
createAsContainerDatabase=true
numberOfPDBs=1
datafileDestination=/usr/app/oracle/oradata   #指定数据文件存放的目录
recoveryAreaDestination=/usr/app/oracle/flash_recovery_area     #恢复数据存放目录
totalMemory=1638    #totalMemory ="1638" 为1638MB,物理内存2G*80%
templateName=General_Purpose.dbc    #不填写的时候报了[FATAL] [DBT-10503] 指定的模板文件无效。
pdbName=orclpdb                        #不填写的时候报了[FATAL] [DBT-10314] (可插入数据库名) 不能为空。
nationalCharacterSet=UTF8
sysPassword=oracle12c   #指定sys用户密码
pdbAdminPassword=oracle12c    #指定pdbAdmin用户密码
systemPassword=oracle12c    #指定system用户密码
11.执行静默建库
cd /home/oracle;
dbca -silent -createDatabase -responseFile /home/oracle/etc/dbca.rsp
12.测试登录
sqlplus / as sysdba

注:每次虚拟机重启执行命令都要开启监听,打开数据库
su - oracle    #切换到oracle用户
lsnrctl start #开启监听
sqlplus / as sysdba
startup
****把上面步骤放到开机自动执行****
vi /etc/oratab #修改此文件,让sqlplus / as sysdba;startup;不用手动执行
orcl:/u01/app/oracle/product/11.2.0.4/db_1:N    #这里把N改成Y,数据库开机自动打开
vi /etc/rc.local #修改此文件,数据库监听和服务开机自启
su - oracle -lc "/usr/app/oracle/product/12/db_1/bin/lsnrctl start" #与安装目录相关
su - oracle -lc /usr/app/oracle/product/12/db_1/bin/dbstart #与安装目录相关

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!