Oracle教程(2)Oracle19C命令行静默安装教程

Oracle教程(2)Oracle19C命令行静默安装教程

在部分生产环境下可能并不支持通过图形化方式来安装Oracle数据库(比如需要脚本一键安装的场景),所以还需要了解通过命令行静默安装的方式来完整数据库的安装,以下是详细步骤

一、系统环境配置部分

1、确定内核版本

#centos9内核要求
#从 Oracle 19c 19.19开始,要求最低内核版本 5.14.0-70.22.1.el9_0.x86_64
uname -r
  
#centos7内核要求
从 Oracle 19c 19.19开始,要求最低内核版本 3.10.0-862.11.6.el7.x86_64
uname -r


2、安装依赖组件

可以通过官网(https://docs.oracle.com/en/database/oracle/oracle-database/index.html)选择不同版本Oracle以查看所需依赖

yum groupinstall "Development Tools"

#RHEL9依赖
yum install gcc-c++ bc binutils compat-openssl11 elfutils-libelf fontconfig glibc glibc-devel ksh libaio libasan liblsan libX11 libXau libXi libXrender libXtst libxcrypt-compat libgcc libibverbs libnsl librdmacm libstdc++ libxcb libvirt-libs make policycoreutils policycoreutils-python-utils smartmontools sysstat

#RHEL8依赖
yum install bc binutils elfutils-libelf elfutils-libelf-devel glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel libxcb libibverbs make policycoreutils policycoreutils-python-utils smartmontools sysstat

#RHEL7依赖
yum install gcc-c++ bc binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat


3、调整系统参数

如果没有调整这些参数,在后面的安装过程中无法通过自检,Oracle会根据系统当前情况给出不满足的条件和修改建议

vi /etc/sysctl.conf
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
	
sysctl -p


4、创建Oracle用户和相关组

#创建oracle组
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 54330 racdba
	
#创建oracle账户
useradd -u 54321 -g oinstall -G dba,oper,asmdba,backupdba,dgdba,kmdba,racdba oracle

#RAC架构下还需要创建grid账户
useradd -u 54331 -g oinstall -G dba,asmdba,backupdba,dgdba,kmdba,racdba grid


5、创建软件和数据目录

mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1
chown -R oracle.oinstall /u01/app/oracle


6、配置hosts

静默安装过程需要通过主机名进行通信,所以提前配置好hosts信息

vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.159.101 centos1  #配置主机名实际信息


7、配置环境变量

这些环境变量会决定 runInstaller 脚本将软件安装在哪里、netca 和 dbca 读取哪个 ORACLE_HOME等。注意只能配置到oracle用户下,因为后续runInstaller脚本必须以 oracle 用户执行,否则会出现权限错误

su - oracle
vi  ~/.bash_profile
export ORACLE_BASE=/u01/app/oracle                # Oracle 基础目录(admin/log/diag 等的根目录)
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1    # 数据库安装目录
export PATH=$ORACLE_HOME/bin:$PATH


source ~/.bash_profile

二、数据库安装部分

1、解压数据库安装包

#假设已经上传安装包目录到/tmp/db_home.zip
cd /u01/app/oracle/product/19.0.0/dbhome_1
unzip /tmp/db_home.zip


2、数据库软件安装

· 修改模板文件

vi $ORACLE_HOME/install/response/db_install.rsp   #修改Oracle自带的模板文件,主要修改行如下
oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY                         #仅安装数据库软件,不建库,后续使用DBCA安装
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE                             #安装企业版
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba

· 使用模板文件执行安装

./runInstaller -silent -responseFile $ORACLE_HOME/install/response/db_install.rsp

· 使用root执行脚本

/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh


2、安装监听器

· 静默安装

netca.rsp是netca静默模式时的默认配置。如果不需要定制端口或者建立多个监听,可以直接使用该默认文件,默认包含信息如下:

创建一个监听:LISTENER

协议:TCP

端口:1521

配置文件:$ORACLE_HOME/network/admin/listener.ora,在安装完成后可以查看该配置文件的内容

$ORACLE_HOME/bin/netca -silent -responsefile $ORACLE_HOME/assistants/netca/netca.rsp

#正常输出内容
Parsing command line arguments:
    Parameter "silent" = true
    Parameter "responsefile" = /u01/app/oracle/product/19.0.0/dbhome_1/assistants/netca/netca.rsp
Done parsing command line arguments.
Oracle Net Services Configuration:
Profile configuration complete.
Oracle Net Listener Startup:
    Running Listener Control: 
      /u01/app/oracle/product/19.0.0/dbhome_1/bin/lsnrctl start LISTENER
    Listener Control complete.
    Listener started successfully.
Listener configuration complete.
Oracle Net Services configuration successful. The exit code is 0

· 检查监听状态

lsnrctl status


3、初始化数据库

· 创建数据目录

mkdir -p /oradata/YWPIE
mkdir -p /oraarch/YWPIE
chown -R oracle:oinstall /oradata /oraarch
chmod -R 775 /oradata /oraarch

· 静默安装

dbca -silent -createDatabase   -templateName General_Purpose.dbc   -gdbname YWPIE  -sid YWPIE -responseFile NO_VALUE -characterSet AL32UTF8   -createAsContainerDatabase false -sysPassword Oracle123 -systemPassword Oracle123   -storageType FS  -datafileDestination /oradata/YWPIE  -recoveryAreaDestination /oraarch/YWPIE  -redoLogFileSize 200   -emConfiguration NONE -databaseType MULTIPURPOSE

-templateName General_Purpose.dbc:使用默认模板
-gdbname YWPIE:实例dbname
-sid YWPIE:实例SID
-responseFile NO_VALUE 
-characterSet AL32UTF8:默认字符集
-createAsContainerDatabase false:是否容器化
-sysPassword Oracle123:管理用户密码
-systemPassword Oracle123管理用户密码
-storageType FS \
-datafileDestination /oradata/YWPIE:#数据目录
-recoveryAreaDestination /oraarch/YWPIE:归档日志目录
-redoLogFileSize 200:归档日志大小
-emConfiguration NONE \
-databaseType MULTIPURPOSE

· 检查实例状态

[oracle@centos1 dbhome_1]$ lsnrctl status
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=centos1)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 19.0.0.0.0 - Production
Start Date                31-AUG-2024 11:46:00
Uptime                    0 days 0 hr. 39 min. 22 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/centos1/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=centos1)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
Services Summary...
Service "YWPIE" has 1 instance(s).                                    #可以看到创建的数据库被监听了
  Instance "YWPIE", status READY, has 1 handler(s) for this service...
Service "YWPIEXDB" has 1 instance(s).
  Instance "YWPIE", status READY, has 1 handler(s) for this service...
The command completed successfully

· 登录数据库

sqlplus / as sysdba
ERROR:ORA-12162: TNS:net service name is incorrectly specified

此时发现数据库无法通过TNS登录,这是因为ORACLE_SID 变量还没设置,监听器找不到正确的服务名,所以只需要

vi ~/.bash_profile
export PATH
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=YWPIE    #增加一行

source ~/.bash_profile

可以使用操作系统认证登录或者数据库账号登录

sqlplus / as sysdba
sqlplus sys/Oracle123 as sysdba


文章评论

猜你喜欢

MySQL | Oracle Oracle教程(4)快照与AWR报告

Oracle教程(4)快照与AWR报告
Oracle教程(4)快照与AWR报告
Oracle教程(4)快照与AWR报告
Oracle教程(4)快照与AWR报告

一、Oracle 快照Oracle中的快照(Snapshot)是指数据库在某个时间点对性能相关的数据做的一次全量采集。包括:系统资源使用情况、Top SQL、IO 性能指标、SGA、PGA 使用情况。...

Oracle教程(3)Schema、用户与表空间

MySQL | Oracle Oracle教程(3)Schema、用户与表空间

在完成 Oracle安装后,登录数据库实例可以看到有很多的模式(Schema),这些模式都是为了支持数据库核心组件、特性扩展、管理任务或者示例而创建,对于这部分默认模式,通常不需要进行操作。在生产规范...

MySQL | Oracle Oracle教程(1)Oracle19C图形化安装详细教程

Oracle教程(1)Oracle19C图形化安装详细教程
Oracle教程(1)Oracle19C图形化安装详细教程
Oracle教程(1)Oracle19C图形化安装详细教程
Oracle教程(1)Oracle19C图形化安装详细教程

一、Oracle数据库版本说明Oracle作为最出名的商业数据库,其特点是可用性强、扩展性强、安全性强、稳定性强。相比MySQL,更适合高并发的业务。从18c版本开始,Oracle采用年份来对版本进行...

PostgreSQL教程(13)使用pgbench进行基准测试

PostgreSQL PostgreSQL教程(13)使用pgbench进行基准测试

pgbench是一款 PostgreSQL 官方自带的数据库性能基准测试工具,可以模拟多用户并发事务,用于评估数据库在不同并发度、数据量和硬件环境下的性能表现。一、pgbench常用选项 ...

MySQL教程(11)物理备份工具Xtrabackup使用教程

MySQL | Oracle MySQL教程(11)物理备份工具Xtrabackup使用教程

一、Xtrabackup 介绍Xtrabackup是Percona出品的一款针对MySQL的物理备份工具。物理备份通常是指直接对数据文件、日志文件、配置文件等对象直接进行复制的一种备份方法。...