RPM包方式安装Oracle21c的方法详解


Posted in Oracle onAugust 23, 2021

前言

  • 北京时间2021.8.14 Oracle发布了最新的数据库版本Oracle21c, Oracle规划不再发布Oracle20c和Oracle22c, 直接进发布Oracle21c和oracle23c, 其中Oracle21c 没有扩展支持, 支持时间应该不会到2024年,预计使用的客户不会很多.
  • 但是oracle21c的改进事项还是很多的包括了native的block chain 以及 json和javascript的支持.
  • 这里面参考一下云和恩墨的路线图来进行说明, 感谢云和恩墨老师的知识资料
  • 注意oracle将非长期支持的版本命名为创新版本

RPM包方式安装Oracle21c的方法详解

1. 环境准备

本次安装遇到了一个深坑,CentOS8.0安装时很多不兼容性,强行安装也失败了,提示缺少部分java方式,所以没办法,换用的Oracle Enterprise Linux 8.4 安装很顺畅,一个半小时就完成相应的工作了.

Oracle官网下载OEL最新版本.
建议可以讲环境安装的全面一点可以节约很多时间,剩下获取新的包了.
安装好操作系统备用.

Oracle官网下载rpm包, 注意需要选择下载el8的不能选择el7的.

https://download.oracle.com/otn/linux/oracle21c/oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm?AuthParam=1629176797_ffffc61959e496fcaf6ca82b0509e16e
https://yum.oracle.com/repo/OracleLinux/OL8/appstream/x86_64/getPackage/oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

注意一个是 oracle本体包,一个是Oracle的preinstall的包,安装的话非常简单.

2. rpm安装.

首先安装preinstall

yun localinstall oracle-database-preinstall-21c-1.0-1.el8.x86_64.rpm

再进行安装ee数据库的安装

yum localinstall oracle-database-ee-21c-1.0-1.ol8.x86_64.rpm

注意事项:

机器需要能够上网,需要能够下载依赖的包
存储空间要足够,避免文件加载失败.

3. 数据库初始化

Oracle的21c与之前的版本完全一致,没有特别的修改,需要设置基本上相同的配置文件即可

3.1 修改初始化脚本, 注意需要修改为自己定义的服务名以及字符集等.
vim /etc/init.d/oracledb_ORCLCDB-21c 
将内容修改为如下:
export ORACLE_HOME=/opt/oracle/product/21c/dbhome_1
export ORACLE_SID=ORA21C
export TEMPLATE_NAME=General_Purpose.dbc
export CHARSET=ZHS16GBK
export PDB_NAME=ORA21CPDB
export LISTENER_NAME=LISTENER
export NUMBER_OF_PDBS=1
export CREATE_AS_CDB=true
3.2 因为修改了自定义的服务名,所以需要复制一个配置文件.
scp /etc/sysconfig/oracledb_ORCLCDB-21c.conf /etc/sysconfig/oracledb_ORA21C-21c.conf 
3.3 执行数据库初始化的脚本
/etc/init.d/oracledb_ORCLCDB-21c configure
# 注意这一步可能耗时比较久一些,需要等待执行成功
# CentOS8 就是这个地方报错,造成后续失败了. 
3.4 修改环境变量,使之能够登录数据库,以及设置NLS_LANG,打开sqlplus可以正常显示中文信息.
vim /etc/profile.d/oracle21c.sh
export  ORACLE_HOME=/opt/oracle/product/21c/dbhome_1
export  PATH=$PATH:/opt/oracle/product/21c/dbhome_1/bin
export  ORACLE_SID=ORA21C
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'
保存并且切换用户就会生效.
3.5 登录数据库并且修改oracle系统管理员密码
passwd oracle
su - oracle
sqlplus / as sysdba
alter user system identified by yournewpassword ;
3.6 注意需要添加一个存储过程,能够在开机时自动将pdb打开
CREATE TRIGGER open_all_pdbs
   AFTER STARTUP ON DATABASE
BEGIN
   EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

4. 设置开机自动启动设置开机自动启动能够节约很多时间.

4.1 修改配置文件
vim /etc/oratab
# 注意将N 修改为 Y
ORA21C:/opt/oracle/product/21c/dbhome_1:Y
4.2 设置启动脚本
vim /usr/bin/oracle.sh
#添加内容如下
#! /bin/bash
#  script  For oracle19c.service
/opt/oracle/product/21c/dbhome_1/bin/lsnrctl start
/opt/oracle/product/21c/dbhome_1/bin/dbstart /opt/oracle/product/19c/dbhome_1
4.3 设置可执行权限
chmod 777 /usr/bin/oracle.sh
4.4 设置一个服务,并且设置为开机自动启动
vim /etc/systemd/system/oracle21c.service
# 添加如下内容

[Unit]
Description=Oracle21c
After=syslog.target network.target

[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=oneshot
RemainAfterExit=yes
User=oracle
Environment="ORACLE_HOME=/opt/oracle/product/21c/dbhome_1"
ExecStart=/usr/bin/oracle.sh

[Install]
WantedBy=multi-user.target

# 设置开机启动
systemctl enable oracle21c
4.5 重启机器进行验证.服务可以使用.

5. 修改sqlplus 避免退格键不好用.这一步比较简单了.

下载个 rlwrap的包我这边下载的是
rlwrap-0.43-5.el8.x86_64.rpm
放置到机器上面执行
yum localinstall rlwrap-0.43-5.el8.x86_64.rpm

修改 之前的环境变量,添加一个别名
alias sqlplus='rlwrap sqlplus'
# 注意等号前后不能有空格.

6. 验证一下版本结果界面如下

RPM包方式安装Oracle21c的方法详解 

到此这篇关于RPM包方式安装Oracle21c的方法的文章就介绍到这了,更多相关RPM包安装Oracle21c内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Oracle 相关文章推荐
zabbix agent2 监控oracle数据库的方法
May 13 Oracle
oracle覆盖导入dmp文件的2种方法
May 21 Oracle
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
Jun 04 Oracle
ORACLE查看当前账号的相关信息
Jun 18 Oracle
使用Oracle跟踪文件的问题详解
Jun 28 Oracle
Oracle表空间与权限的深入讲解
Nov 17 Oracle
详细聊聊Oracle表碎片对性能有多大的影响
Mar 19 Oracle
Oracle使用别名的好处
Apr 19 Oracle
instantclient客户端 连接oracle数据库
Apr 26 Oracle
Oracle数据库事务的开启与结束详解
Jun 25 Oracle
oracle delete误删除表数据后如何恢复
Jun 28 Oracle
Oracle查看表空间使用率以及爆满解决方案详解
Jul 23 Oracle
oracle连接ODBC sqlserver数据源的详细步骤
Oracle以逗号分隔的字符串拆分为多行数据实例详解
快速学习Oracle触发器和游标
使用Oracle跟踪文件的问题详解
SQL模糊查询报:ORA-00909:参数个数无效问题的解决
ORACLE查看当前账号的相关信息
DBCA命令行搭建Oracle ADG的流程
You might like
PL-880隐藏功能
2021/03/01 无线电
php判断两个日期之间相差多少个月份的方法
2015/06/18 PHP
Yii2中SqlDataProvider用法示例
2016/09/22 PHP
php实现微信支付之退款功能
2018/05/30 PHP
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
基于jQuery的可以控制左右滚动及自动滚动效果的代码
2010/07/25 Javascript
QUnit jQuery的TDD框架
2010/11/04 Javascript
JavaScript NaN和Infinity特殊值 [译]
2012/09/20 Javascript
Js 导出table内容到Excel的简单实例
2013/11/19 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
Angular 通过注入 $location 获取与修改当前页面URL的实例
2017/05/31 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
解决vue安装less报错Failed to compile with 1 errors的问题
2020/10/22 Javascript
Vue获取微博授权URL代码实例
2020/11/04 Javascript
[01:34]2014DOTA2 TI预选赛预选赛 选手比赛房大揭秘!
2014/05/20 DOTA
[49:11]完美世界DOTA2联赛PWL S3 INK ICE vs DLG 第二场 12.20
2020/12/23 DOTA
总结Python中逻辑运算符的使用
2015/05/13 Python
Python进阶之递归函数的用法及其示例
2018/01/31 Python
详解tensorflow训练自己的数据集实现CNN图像分类
2018/02/07 Python
Python实现的朴素贝叶斯算法经典示例【测试可用】
2018/06/13 Python
Python绘制并保存指定大小图像的方法
2019/01/10 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
Python for i in range ()用法详解
2020/09/18 Python
浅析Python 责任链设计模式
2020/09/11 Python
HTML5实现页面切换激活的PageVisibility API使用初探
2016/05/13 HTML / CSS
高品质和独特的产品世界:Creations and Collections
2018/01/07 全球购物
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
New Balance俄罗斯官方网上商店:购买运动鞋
2020/03/02 全球购物
英国著名药妆店:Superdrug
2021/02/13 全球购物
室内设计专业个人的自我评价
2013/12/18 职场文书
高等教育专业自荐信范文
2014/03/26 职场文书
农村文化建设标语
2014/10/07 职场文书
党员干部三严三实心得体会
2014/10/13 职场文书
亮剑观后感
2015/06/05 职场文书
2019年大学生职业生涯规划书
2019/03/25 职场文书