系统环境:Oracle Linux 7(OL7)
1、首先设置主机名和ip,修改/etc/hosts (很简单,不赘述)
2、Oracle安装先决条件
执行自动设置或手动设置以完成基本先决条件。
一、自动设置
若是您计划使用“oracle-database-preinstall-18c”软件包来执行全部先决条件设置,请发出如下命令。
#yum install -y oracle-database-preinstall-18c
它进行全面更新,但严格来讲这并非必需的。
#yum update -ypython
二、手动设置
若是还没有使用“oracle-database-preinstall-18c”软件包来执行全部先决条件,则须要手动执行如下设置任务。linux
将如下行添加到“/etc/sysctl.conf”文件或名为“/etc/sysctl.d/98-oracle.conf”的文件中。sql
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
运行如下命令以更改当前内核参数。shell
/ sbin / sysctl -p
将如下行添加到名为“/etc/security/limits.d/oracle-database-preinstall-18c.conf”文件的文件中。数据库
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle hard memlock 134217728
oracle soft memlock 134217728
有人建议可能须要将之前的行添加到CentOS7的“/etc/security/limits.conf”文件中。这绝对不是OL7所必需的,但值得考虑的是安装程序是否为这些设置提供了先决条件故障。安全
根据须要列出如下软件包,包括某些软件包的32位版本。许多软件包应该已经安装好了。bash
#OL7(RHEL7)
yum install -y bc
yum install -y binutils
yum install -y compat-libcap1
yum install -y compat-libstdc ++ - 33
yum install -y compat-libstdc ++ - 33.i686
yum install -y elfutils-libelf.i686
yum install -y elfutils-libelf
yum install -y elfutils-libelf-devel.i686
yum install -y elfutils-libelf-devel
yum install -y fontconfig-devel
yum install -y glibc.i686
yum install -y glibc
yum install -y glibc-devel.i686
yum install -y glibc-devel
yum install -y ksh
yum install -y libaio.i686
yum install -y libaio
yum install -y libaio-devel.i686
yum install -y libaio-devel
yum install -y libX11.i686
yum install -y libX11
yum install -y libXau.i686
yum install -y libXau
yum install -y libXi.i686
yum install -y libXi
yum install -y libXtst.i686
yum install -y libXtst
yum install -y libgcc.i686
yum install -y libgcc
yum install -y librdmacm-devel
yum install -y libstdc ++。i686
yum install -y libstdc ++
yum install -y libstdc ++ - devel.i686
yum install -y libstdc ++ - devel
yum install -y libxcb.i686
yum install -y libxcb
yum install -y make
yum install -y nfs-utils
yum install -y net-tools
yum install -y python
yum install -y python-configshell
yum install -y python-rtslib
yum install -y python-six
yum install -y smartmontools
yum install -y sysstat
yum install -y targetcli
yum install -y unixODBC
建立新组和用户。服务器
groupadd -g 54321 oinstall
groupadd -g 54322 dba
groupadd -g 54323 oper
#groupadd -g 54324 backupdba
#groupadd -g 54325 dgdba
#groupadd -g 54326 kmdba
#groupadd -g 54327 asmdba
#groupadd -g 54328 asmoper
#groupadd -g 54329 asmadmin
#groupadd -g 54330 racdba并发
useradd -u 54321 -g oinstall -G dba,oper oracle
取消注释所需的额外组。oracle
注意其余设置 :
不管您是手动仍是自动设置,都必须执行如下步骤。
设置“oracle”用户的密码。
passwd oracle
经过编辑“/ etc / selinux / config”文件将安全Linux设置为容许,确保SELINUX标志设置以下。
SELINUX =许可
更改完成后,从新启动服务器或运行如下命令。
#setenforce Permissive
若是启用了Linux防火墙,则须要禁用或配置它,如此处或此处所示。要禁用它,请执行如下操做。
#systemctl stop firewalld
#systemctl disable firewalld
若是您不使用Oracle Linux和UEK,则须要手动禁用透明的大页面。
建立将安装Oracle软件的目录。
mkdir -p /u01/app/oracle/product/18.0.0/dbhome_1
mkdir -p / u02 / oradata
chown -R oracle:oinstall / u01 / u02
chmod -R 775 / u01 / u02
注意:将挂载点直接放在root下一般是个坏主意。对于真正的安装,应该为操做系统保留“/”。
除非您使用控制台或使用SSH隧道,不然以root用户身份登陆并发出如下命令。
xhost + <machine-name>
下面建立“脚本”目录。
mkdir / home / oracle / scripts
建立一个名为“setEnv.sh”的环境文件。
cat> /home/oracle/scripts/setEnv.sh << EOF
#Oracle设置
export TMP = / tmp
export TMPDIR = \ $ TMP
export ORACLE_HOSTNAME = ol7-183.localdomain
export ORACLE_UNQNAME = cdb1
export ORACLE_BASE = / u01 / app / oracle
export ORACLE_HOME = \ $ ORACLE_BASE / product / 18.0.0 / dbhome_1
export ORA_INVENTORY = / u01 / app / oraInventory
export ORACLE_SID = cdb1
导出PDB_NAME = pdb1
export DATA_DIR = / u02 / oradata
export PATH = / usr / sbin:/ usr / local / bin:\ $ PATH
export PATH = \ $ ORACLE_HOME / bin:\ $ PATH
export LD_LIBRARY_PATH = \ $ ORACLE_HOME / lib:/ lib:/ usr / lib
export CLASSPATH = \ $ ORACLE_HOME / jlib:\ $ ORACLE_HOME / rdbms / jlib
EOF
在“/home/oracle/.bash_profile”文件的末尾添加对“setEnv.sh”文件的引用。
echo“./ home /oracle/scripts/setEnv.sh”>> /home/oracle/.bash_profile
建立一个能够从启动/关闭服务调用的“start_all.sh”和“stop_all.sh”脚本。确保全部权和权限正确无误。
cat> /home/oracle/scripts/start_all.sh << EOF
#!/bin/bash
/home/oracle/scripts/setEnv.sh
export ORAENV_ASK = NO
oraenv的
export ORAENV_ASK = YES
dbstart \ $ ORACLE_HOME
EOF
cat> /home/oracle/scripts/stop_all.sh << EOF
#!/bin/bash
。/home/oracle/scripts/setEnv.sh
export ORAENV_ASK = NO
。oraenv的
export ORAENV_ASK = YES
dbshut \ $ ORACLE_HOME
EOF
chown -R oracle:oinstall / home / oracle / scripts
chmod u + x /home/oracle/scripts/*.sh
一旦安装完成而且您编辑了“/ etc / oratab”,您就可使用从“oracle”用户运行的如下脚原本启动/中止数据库。
〜/脚本/ start_all.sh
〜/脚本/ stop_all.sh
您能够在此处查看如何建立Linux服务以自动启动/中止数据库(OL7)。
2、安装
登陆oracle用户。若是您使用X仿真,则设置DISPLAY环境变量。
DISPLAY = <机器名>:0.0; 导出显示
切换到该ORACLE_HOME目录,将软件直接解压缩到此路径中,而后经过在ORACLE_HOME目录中发出如下命令之一来启动Oracle Universal Installer(OUI)。交互模式将显示GUI安装程序屏幕以容许用户输入,而静默模式将安装软件而不显示任何屏幕,由于已在命令行上指定了全部必需选项。
#解压缩软件。
cd $ ORACLE_HOME
unzip -oq /path/to/software/LINUX.X64_180000_db_home.zip
#互动模式(界面交互)。
./runInstaller
# 静音模式。
./runInstaller-ignorePrereq -waitforcompletion -silent \
-responseFile $ {ORACLE_HOME} /install/response/db_install.rsp \
oracle.install.option = INSTALL_DB_SWONLY \
ORACLE_HOSTNAME = $ {ORACLE_HOSTNAME} \
UNIX_GROUP_NAME = oinstall \
INVENTORY_LOCATION = $ {ORA_INVENTORY} \
SELECTED_LANGUAGES = en,en_GB \
ORACLE_HOME = $ {ORACLE_HOME} \
ORACLE_BASE = $ {ORACLE_BASE} \
oracle.install.db.InstallEdition = EE \
oracle.install.db.OSDBA_GROUP = dba \
oracle.install.db.OSBACKUPDBA_GROUP = dba \
oracle.install.db.OSDGDBA_GROUP = dba \
oracle.install.db.OSKMDBA_GROUP = dba \
oracle.install.db.OSRACDBA_GROUP = dba \
SECURITY_UPDATES_VIA_MYORACLESUPPORT = false \
DECLINE_SECURITY_UPDATES =真
出现提示时运行根脚本。
以root用户身份执行如下脚本:
3、建立数据库
数据库建立
您可使用Database Configuration Assistant(DBCA)建立数据库。交互模式将显示容许用户输入的GUI屏幕,而静默模式将建立数据库而不显示任何屏幕,由于已在命令行上指定了全部必需的选项。
#启动监听器。
lsnrctl start
#互动模式(界面交互)。
DBCA
# 静音模式。
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname $ {ORACLE_SID} -sid $ {ORACLE_SID} -responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword SysPassword1 \
-systemPassword SysPassword1 \
-createAsContainerDatabase true \
-numberOfPDBs 1 \
-pdbName $ {PDB_NAME} \
-pdbAdminPassword PdbPassword1 \
-databaseType MULTIPURPOSE \
-automaticMemoryManagement false \
-totalMemory 2000 \
-storageType FS \
-datafileDestination“$ {DATA_DIR}”\
-redoLogFileSize 50 \
-emConfiguration NONE \
-ignorePreReqs
4、安装后设置
编辑“/ etc / oratab”文件,将每一个实例的重启标志设置为“Y”。
CDB1:/u01/app/oracle/product/18.0.0/db_1:Y
启用Oracle托管文件(OMF)并确保在实例启动时启动PDB。
sqlplus / as sysdba << EOFalter system set db_create_file_dest ='$ {DATA_DIR}';alter pluggable database $ {PDB_NAME} save state;exit;EOF