前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Oracle 19c 之 RPM 包安装初体验(一)

Oracle 19c 之 RPM 包安装初体验(一)

作者头像
JiekeXu之路
发布2020-06-22 18:22:59
2.6K0
发布2020-06-22 18:22:59
举报
文章被收录于专栏:JiekeXu之路JiekeXu之路

作者 | JiekeXu

来源 | JiekeXu之路(ID: JiekeXu_IT)

Oracle 自18c 开始,便已经提供Linux 环境单机的 rpm 安装方式,不过仅支持单实例安装,不支持集群,也只有企业版,其他版本的没有发布,不过有2.5 G 大小。

昨天在墨天轮数说里,看到恩墨盖总发的 Oracle 数据库的产品支持生命周期又有更新了。大概是说Oracle 19c 的支持期继续延展了,这样相当于有七年的支持时间,可以获得技术支持和补丁支持,是目前最值得安装的版本。12c、18c、20c 这些都是过渡版本,生命周期比较短暂。Oracle 20c 原计划今年 6 月发布但也尚未浮出水面,估计因为疫情的影响,Oracle 20c 今年极有可能不做正式发布了,随着 OOW 大会的临近,Oracle 21c 的信息即将会展示出来,敬请期待吧。

原文 Release Schedule of Current Database Releases (Doc ID 742060.1) 于 2020.6.16 日更新了,有账号的伙伴可以去查看。

安装检查过程

下面根据官方文档一起看看安装过程和检查步骤

https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/index.html

首先操作系统版本要求 Oracle Linux7.4、RedHat 7.5 或者 SUSE Linux Enterprise Server12 SP3以上版本,我这里的版本是 RedHat 7.4 勉强可以凑合安装,Linux 6 已经不在支持范围内了。

检查磁盘空间,Linux 企业版需要至少 7.2 G 的空间

更多环境检查步骤请查看上文官方文档链接即可,下面来看看软件下载。

软件下载

在 Oracle 官网上便可以轻松下载如下软件包,你只需要注册一个账号即可,如果你没有账号,不知道怎么下载,没关系,我这里下载好了,公众号[ID:JiekeXu_IT]后台回复【19cRPM包下载】即可获得。

https://www.oracle.com/database/technologies/oracle19c-linux-downloads.html

如果你的系统是Oracle Linux 平台,直接

代码语言:javascript
复制
yum -y installoracle-database-preinstall-19c

如果不是OracleLinux 平台,首先要下载对应平台的RPM,我这里用的是RedHat7.4,下载链接地址 https://oss.oracle.com/ol7/SRPMS-updates/ 搜索 -19c 即可找到,下载最新的即可。也可使用如下地址 https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/index.html

使用最新的即可,当然你也可以选择下载这里的 Oracle Linux 操作系统,注册Oracle 账号即可从如下网址下载软件。

https://edelivery.oracle.com/osdc/faces/SoftwareDelivery

检查基础环境配置

然后将软件包一起上传至服务器 /soft 目录。

代码语言:javascript
复制
[root@localhost soft]# ll
total 524244
-rw-r--r-- 1 root root 271761408 Jun 1722:18 oracle-database-ee-19c-1.0-1.x86_64.rpm
-rw-r--r-- 1 root root     19552 Jun 17 22:10oracle-database-preinstall-19c-1.0-2.el7.x86_64.rpm
[root@localhost soft]#
[root@localhost soft]# rpm -ivhoracle-database-preinstall-19c-1.0-2.el7.x86_64.rpm
warning:oracle-database-preinstall-19c-1.0-2.el7.x86_64.rpm: Header V3 RSA/SHA256Signature, key ID ec551f03: NOKEY
error: Failed dependencies:
       bc is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       bind-utils is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       compat-libcap1 is needed byoracle-database-preinstall-19c-1.0-2.el7.x86_64
       libaio-devel is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       libstdc++-devel is needed byoracle-database-preinstall-19c-1.0-2.el7.x86_64
       nfs-utils is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       psmisc is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       smartmontools is needed byoracle-database-preinstall-19c-1.0-2.el7.x86_64
       unzip is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       xorg-x11-utils is needed by oracle-database-preinstall-19c-1.0-2.el7.x86_64
       xorg-x11-xauth is needed byoracle-database-preinstall-19c-1.0-2.el7.x86_64
[root@localhost soft]#

如上使用 rpm 安装时需要很多依赖包,所以这里改用 yum 安装方式,首先配置 yum 源,我这里使用本地 yum 源的方式,将光盘传至本地 /media 目录下,新建配置 /etc/yum.repos.d/test.repo 文件如下,大家可随意选择合适自己的安装方式即可。

第一步:preinstall 包安装

代码语言:javascript
复制
[root@localhost soft]# yum installoracle-database-preinstall-19c-1.0-2.el7.x86_64.rpm -y
Loaded plugins: product-id,search-disabled-repos, subscription-manager
This system is not registered with anentitlement server. You can use subscription-manager to register.
Examiningoracle-database-preinstall-19c-1.0-2.el7.x86_64.rpm:oracle-database-preinstall-19c-1.0-2.el7.x86_64
Marking oracle-database-preinstall-19c-1.0-2.el7.x86_64.rpmto be installed
Resolving Dependencies
………………(省略安装信息)…………
Installed:
 oracle-database-preinstall-19c.x86_64 0:1.0-2.el7                                                                                                              

Dependency Installed:
 bc.x86_64 0:1.06.95-13.el7              bind-libs.x86_64 32:9.9.4-50.el7      bind-utils.x86_64 32:9.9.4-50.el7      compat-libcap1.x86_64 0:1.10-7.el7  
 gssproxy.x86_64 0:0.7.0-4.el7           keyutils.x86_64 0:1.5.8-3.el7         libXinerama.x86_64 0:1.1.3-2.1.el7     libXmu.x86_64 0:1.1.2-2.el7         
 libXrandr.x86_64 0:1.5.1-2.el7          libXt.x86_64 0:1.1.5-3.el7            libXv.x86_64 0:1.0.11-1.el7            libXxf86dga.x86_64 0:1.1.4-2.1.el7  
 libXxf86misc.x86_64 0:1.0.3-7.1.el7     libaio-devel.x86_64 0:0.3.109-13.el7  libbasicobjects.x86_64 0:0.1.1-27.el7  libcollection.x86_64 0:0.6.2-27.el7 
 libdmx.x86_64 0:1.1.3-3.el7             libevent.x86_64 0:2.0.21-4.el7        libini_config.x86_64 0:1.3.0-27.el7    libnfsidmap.x86_64 0:0.25-17.el7    
 libpath_utils.x86_64 0:0.2.1-27.el7      libref_array.x86_64 0:0.1.5-27.el7     libstdc++-devel.x86_64 0:4.8.5-16.el7   libtirpc.x86_64 0:0.2.4-0.10.el7    
 libverto-libevent.x86_64 0:0.2.5-4.el7  mailx.x86_64 0:12.5-16.el7            nfs-utils.x86_64 1:1.3.0-0.48.el7      psmisc.x86_64 0:22.20-15.el7        
 quota.x86_64 1:4.01-14.el7              quota-nls.noarch 1:4.01-14.el7        rpcbind.x86_64 0:0.2.0-42.el7          smartmontools.x86_64 1:6.2-8.el7    
 tcp_wrappers.x86_64 0:7.6-77.el7        unzip.x86_64 0:6.0-16.el7              xorg-x11-utils.x86_640:7.5-22.el7      xorg-x11-xauth.x86_641:1.0.9-1.el7 

Complete!

安装 19c 数据库软件

然后直接使用 yum 命令安装 19c 数据库软件

第二步:database 软件安装

代码语言:javascript
复制
[root@localhost soft]# yum installoracle-database-ee-19c-1.0-1.x86_64.rpm
Loaded plugins: product-id, search-disabled-repos,subscription-manager
This system is not registered with anentitlement server. You can use subscription-manager to register.
Examiningoracle-database-ee-19c-1.0-1.x86_64.rpm: oracle-database-ee-19c-1.0-1.x86_64
Marking oracle-database-ee-19c-1.0-1.x86_64.rpmto be installed
Resolving Dependencies
--> Running transaction check
---> Packageoracle-database-ee-19c.x86_64 0:1.0-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==================================================================================================================================================================
 Package                                    Arch                       Version                     Repository                                                Size
==================================================================================================================================================================
Installing:
 oracle-database-ee-19c                     x86_64                     1.0-1                      /oracle-database-ee-19c-1.0-1.x86_64                    6.9 G

Transaction Summary
==================================================================================================================================================================
Install 1 Package

Totalsize: 6.9 G
Installedsize: 6.9 G
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
 Installing : oracle-database-ee-19c-1.0-1.x86_64                                                                                                           1/1
[INFO] Executing post installationscripts...
[INFO] Oracle home installed successfully andready to be configured.
To configure a sample Oracle Database youcan execute the following service configuration script as root:/etc/init.d/oracledb_ORCLCDB-19c configure
 Verifying  :oracle-database-ee-19c-1.0-1.x86_64                                                                                                           1/1

Installed:
 oracle-database-ee-19c.x86_64 0:1.0-1                                                                                                                           

Complete!

[INFO] Executing post installation scripts... [INFO] Oracle home installed successfully and ready to be configured. To configure a sample Oracle Database you can execute the following service configuration script as root: /etc/init.d/oracledb_ORCLCDB-19c configure

如上信息,执行完脚本 Oracle home 配置安装完成,发现 oracle 用户也创建成功了, 然后便使用 /etc/init.d/oracledb_ORCLCDB-19c 文件可以配置一个模板数据库。那么我们看一下这个文件内容都有啥?

首先看到提示 RedHat or SuSE 需要配置 /etc/sysconfig/oracledb_ORCLCDB-19c,继续看一下这个文件内容呢?

代码语言:javascript
复制
[root@localhost opt]# more/etc/sysconfig/oracledb_ORCLCDB-19c.conf
#This is a configuration file to setup theOracle Database.
#It is used when running'/etc/init.d/oracledb_ORCLCDB configure'.
#Please use this file to modify the defaultlistener port and the
#Oracle data location.

# LISTENER_PORT: Database listener
LISTENER_PORT=1521

# ORACLE_DATA_LOCATION: Database oradatalocation
ORACLE_DATA_LOCATION=/opt/oracle/oradata

# EM_EXPRESS_PORT: Oracle EM Expresslistener
EM_EXPRESS_PORT=5500

可以看到这个文件就是配置监听端口、EM 端口号以及数据文件位置,默认为 /opt/oracle/oradata可按照自己机器实际情况修改,我这里将其修改为 /u01/app/oracle/oradata,然后建立目录赋权,如果上图中的实例名、数据库名均不需要改动的话,直接按照提示使用root 运行以下命令

/etc/init.d/oracledb_ORCLCDB-19c configure

配置实例即可,约 10 分钟左右即可完成。

代码语言:javascript
复制
[root@localhost soft]# mkdir -p /u01/app/oracle/oradata
[root@localhost soft]# chown -Roracle:oinstall /u01/app/oracle/oradata
[root@localhost soft]# chmod -R 775 /u01/app/oracle/oradata

我这里在折腾一下修改数据库名和实例名试试,简单的将其 CDB 名修改为 JiekeCDB, PDB 名字修改为 JiekePDB,其他不做改变,如下所示:

代码语言:javascript
复制
[root@localhost soft]# cp /etc/init.d/oracledb_ORCLCDB-19cdb_ORCLCDB-19c_bak
[root@localhost init.d]# ll oracle*
-rwx------ 1 root root  1281 Mar 12 02:22oracle-database-preinstall-19c-firstboot
-rwxr-xr-x 1 root root 10017 Apr 18  2019 oracledb_ORCLCDB-19c
-rwxr-xr-x 1 root root 10017 Jun 18 00:43oracledb_ORCLCDB-19c_bak
[root@localhostinit.d]# mv /etc/init.d/oracledb_ORCLCDB-19c /etc/init.d/oracledb_JiekeCDB-19c
[root@localhostinit.d]# vi /etc/init.d/oracledb_JiekeCDB-19c

配置数据库

注意:这里修改了 SID 导致找不到 /etc/sysconfig/下的配置文件,那么需要修改或配置对应的文件名 oracledb_JiekeCDB-19c.conf。然后配置数据库,查看这个脚本文件 oracledb_JiekeCDB-19c 中间部分,其实就是静默创建实例,需要耐心等待10 分钟左右。

代码语言:javascript
复制
[root@localhost init.d]#/etc/init.d/oracledb_JiekeCDB-19c configure
The Oracle Database is not configured.Unable to read the configuration file'/etc/sysconfig/oracledb_JiekeCDB-19c.conf'
[root@localhost init.d]#
[root@localhost init.d]# cp /etc/sysconfig/oracledb_ORCLCDB-19c.conf /etc/sysconfig/oracledb_JiekeCDB-19c.conf
 
[root@localhost init.d]#/etc/init.d/oracledb_JiekeCDB-19c configure
Configuring Oracle Database JiekeCDB.
Prepare for db operation
8% complete
Copying database files
31% complete
Creating and starting Oracle instance
32% complete
36% complete
40% complete
43% complete
46% complete
Completing Database Creation
51% complete
54% complete
Creating Pluggable Databases
58% complete
77% complete
Executing Post Configuration Actions
100% complete
Database creation complete. For detailscheck the logfiles at:
 /opt/oracle/cfgtoollogs/dbca/JiekeCDB.
Database Information:
Global Database Name:JiekeCDB
System Identifier(SID):JiekeCDB
Look at the log file"/opt/oracle/cfgtoollogs/dbca/JiekeCDB/JiekeCDB.log" for furtherdetails.
 
Database configuration completedsuccessfully. The passwords were auto generated, you must change them byconnecting to the database using 'sqlplus / as sysdba' as the oracle user.

使用 oracle 用户登陆数据库,需要简单配置环境变量!

代码语言:javascript
复制
export ORACLE_BASE=/u01/app/oracle/oradata
exportORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_SID=JiekeCDB
exportPATH=$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin

连接和简单应用

代码语言:javascript
复制
[oracle@localhost ~]$ source .bashrc
[oracle@localhost ~]$ echo $ORACLE_SID
JiekeCDB
[oracle@localhost ~]$ echo $ORACLE_HOME
/opt/oracle/product/19c/dbhome_1
[oracle@localhost ~]$ echo $ORACLE_BASE
/u01/app/oracle/oradata
[oracle@localhost ~]$ sqlplus / as sysdba
 
SQL*Plus: Release 19.0.0.0.0 - Productionon Thu Jun 18 14:58:53 2020
Version 19.3.0.0.0
 
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
 
 
Connected to:
Oracle Database 19c Enterprise EditionRelease 19.0.0.0.0 - Production
Version 19.3.0.0.0
 
SQL>
SQL> select inst_id,INSTANCE_NAME,statusfrom gv$instance;
 
  INST_ID INSTANCE_NAME    STATUS
---------- ---------------- ------------
        1 JiekeCDB         OPEN
SQL> show pdbs
 
   CON_ID CON_NAME                      OPEN MODE  RESTRICTED
---------- ---------------------------------------- ----------
        2 PDB$SEED                      READ ONLY  NO
        3 JIEKEPDB                      READ WRITE NO
SQL> show con_id
 
CON_ID
------------------------------
1
SQL>
SQL> alter session setcontainer=JIEKEPDB;   --切换到PDB
 
Session altered.
 
SQL> show pdbs
 
   CON_ID CON_NAME                      OPEN MODE  RESTRICTED
---------- ---------------------------------------- ----------
        3 JIEKEPDB                      READ WRITE NO
SQL> sho con_id
 
CON_ID
------------------------------
3

配置 glogin 文件以及 TNS 修改 sys/system密码直接连接到 PDB。

代码语言:javascript
复制
SYS@JiekeCDB>
SYS@JiekeCDB> alter user sys identifiedby oracle;
 
User altered.
 
SYS@JiekeCDB> alter user systemidentified by oracle;
 
User altered.
 
SYS@JiekeCDB> quit
[oracle@localhost JIEKECDB]$ sqlplussys/oracle@JIEKEPDB as sysdba
 
SQL*Plus: Release 19.0.0.0.0 - Productionon Thu Jun 18 21:25:49 2020
Version 19.3.0.0.0
 
Copyright (c) 1982, 2019, Oracle.  All rights reserved.
 
Connected to:
Oracle Database 19c Enterprise EditionRelease 19.0.0.0.0 - Production
Version 19.3.0.0.0
SYS@JIEKEPDB> show pdbs
 
   CON_ID CON_NAME                      OPEN MODE  RESTRICTED
---------- ---------------------------------------- ----------
        3 JIEKEPDB                      READ WRITE NO
SYS@JIEKEPDB> select name from v$datafile;
 
NAME
------------------------------------------------------------------------------------------------------------------------
/u01/app/oracle/oradata/JIEKECDB/JiekePDB/system01.dbf
/u01/app/oracle/oradata/JIEKECDB/JiekePDB/sysaux01.dbf
/u01/app/oracle/oradata/JIEKECDB/JiekePDB/undotbs01.dbf
/u01/app/oracle/oradata/JIEKECDB/JiekePDB/users01.dbf
 
SYS@JIEKEPDB>

其他应用及配置可参考以前一篇 12c 相关的文章[Oracle 12CR2 安装配置与基础学习],这里就不多说了,怎么样?RPM 包安装还是很方便吧,不用图形化、配置监听等,简单多了,和19c 倡导自治数据库不谋而和,基本上实现了一键安装.

参考链接

https://www.eygle.com/archives/2018/10/oracle_18c_orclcdb_install.html

https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/operating-system-checklist-for-oracle-database-installation-on-linux.html#GUID-E5C0A90E-7750-45D9-A8BC-C7319ED934F0

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 JiekeXu之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装检查过程
  • 软件下载
  • 检查基础环境配置
  • 安装 19c 数据库软件
  • 配置数据库
  • 连接和简单应用
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档