LISTAGG 函数是在 Oracle 11gR2 中引入的,以使字符串聚合更简单。在 Oracle 12cR2 中,它被扩展为包括溢出错误处理。...Oracle 19c 更新了 LISTAGG 功能,通过 DISTINCT 关键字从结果中删除重复项。...SQL> 让我们将一些名为 “MILLER” 的额外人员添加到第 10 部门,以便在汇总列表中为我们提供重复项: INSERT INTO emp VALUES (9998,'MILLER','ANALYST...SQL> 如果这就是我们所期待的,那就太好了。如果我们想删除重复项,我们该怎么做? 解决方案:19c之前 19C 之前,我们可以通过多种方式解决这个问题。...SQL> 解决方案:19c 以后 Oracle 19c 引入了一个更简单的解决方案。
之前的几篇内容: 【DB宝24】在Oracle 19c中创建容器数据库(1)--DBCA静默创建CDB 【DB宝25】在Oracle 19c中创建容器数据库(2)--DBCA图形化创建CDB 【DB...宝26】在Oracle 19c中创建容器数据库(3)--手动创建CDB 【DB宝27】在Oracle 19c中创建容器数据库(4)--Duplicating a CDB(从18c开始) 这是Oracle...从Oracle 19c开始,可以直接基于dbca来静默克隆一个CDB,先给出相关的命令: --从单实例到单实例 dbca -silent -createDuplicateDB -gdbName CDB2...出来,其实比dbca静默直接创建数据库要快很多。...sid和db_name -initParams db_unique_name=CDB4:目标库的唯一名 -datafileDestination:目标库的数据文件路径 执行日志: [oracle@ocp19c
其中参考随笔是汇总我自己总结的原创作品,参考文章是汇总其他作者的相关优秀作品。...11g静默安装软件+手工创建数据库 Oracle 11g静默安装简明版 单机静默安装GI软件并创建ASM实例和ASM磁盘组 参考文章: RHEL4.8安装Oracle9.2.0.8单实例 1.2 Oracle...19c RAC安装Part1:准备工作 Linux平台 Oracle 19c RAC安装Part2:GI配置 Linux平台 Oracle 19c RAC安装Part3:DB配置 参考文章: Step...三、Oracle应用补丁 3.1 单机环境 参考随笔: 完整记录一则Oracle 11.2.0.4单实例打PSU补丁的过程 Oracle 11.2.0.4单实例打PSU,OJVM PSU补丁快速参考 3.2...Oracle RAC环境 参考随笔: Oracle 11.2.0.4 RAC安装最新PSU补丁 Oracle 11g RAC 应用补丁简明版 Oracle 11g RAC 自动应用PSU补丁简明版 3.3
Oracle数据库之所以强大,和其30年来不断迭代以及更新是绝对分不开的。 而在这个迭代过程中,各种版本和补丁的概念也变得非常复杂,本文将帮助你理清Oracle版本相关知识以及补丁相关的概念。...数据库的版本 当你使用SQL*Plus等工具成功连接数据库库后,SQL命令提示符前通常会显示出下面的提示信息: --11g输出例 $ sqlplus / as sysdba SQL*Plus: Release...包括数据库软件发布流程以及Oracle 版本编号,以12.2版本为界限,Oracle进行了一次重要的调整。...如10g,11g,12c等。 第2位:数据库维护版本发行号(Database Maintenance Release) 是对主要发行版本的更新。...12.2之后的版本编号 从2018年开始,为了更加适应云时代的需要,Oracle数据库产品的新版本发布时间变更成了每年一次, 数据库软件版本编号也采用新的形式。
针对失败的自动索引测试的SQL语句被列入黑名单,因此将来不会考虑将它们用于自动索引。第一次对数据库运行SQL时,优化程序不会考虑自动索引。 删除未使用的索引。...默认情况下,自动索引是在默认的永久表空间中创建的。...如果 ALLOW参数设置为true,则指定的模式(schema)将添加到包含列表中。注意:它构建了一个包含模式的谓词。...如果您感觉特别勇敢,DROP_SECONDARY_INDEXES过程将删除除用于约束的索引之外的所有索引。这可以在表、模式(Schema)、数据库级别完成。...从SQL中使用这些函数的一些示例如下所示。注意引用LEVEL参数。在SQL调用中使用它时,这是必要的,因此这不是对LEVEL伪列的引用。
还会创建种子可插拔数据库,及该数据库自己的数据文件(用于SYSAUX和SYSTEM表空间)。...您可以使用新子句SEED FILE_NAME_CONVERT重命名种子可插拔数据库的数据文件,同时从根容器执行复制操作。该子句会创建种子可插拔数据库及该数据库自己的数据文件。...在本例中,/oracle/dbs和/oracle/seed目录必须存在。...在语句中定义的字符集依然是CDB的唯一字符集,如果不指定字符集,那么默认的字符集为US7ASCII: create database LHRCDB3 extent management local CHARACTER...手工建库只是在特殊场景中才会用到。 本文结束。
1 Oracle数据库版本背景 首先来说下Oracle的版本背景。 根据Oracle的产品线规划,18c开始的新版本将是年度版,版本将是发布年度的最后两位数字。...原本计划作为12.2.0.2的版本就是现在发布中的18c,12.2.0.3将以19c的版本形式发布。预期Oracle数据库19将是12.2的最后一个版本(“长期支持”版本)。...2 Oracle数据库版本规划 我们能够看到有很多的版本,如果要选择升级数据库,到底是选择12c还是18c,还是19c呢,我们来看一个版本路线图,可以参考在MOS 官方文章:Release Schedule...对于数据库版本来说,10g是个坎,升级到11g是个坎,升级到12c的选择空间从上图来看就比较有限了,目前可选的就是12.2.0.1,18c和19c了。我们来看下这3个版本,我来划一下重点。...4 Oracle数据库版本升级矩阵 对于11g的数据库来说,如果是11g的最新版本,则可以直接升级到19c,这是一个极大的利好消息,避免了过渡升级带来的潜在隐患和服务不可用过长。
区块链表在21c中被引入,并被反向移植到19c中,所以可以认为它是19c和21c的新特性。 在学习不可变表时,注意不要设置太长的保留期,否则将不得不等待很长时间来删除您的测试表。...创建一个不可变的表 除了在 CREATE TABLE 命令中添加 IMMUTABLE 关键字外,还有两个不可变子句。 NO DROP 子句确定保护表不被删除的时间。如果表没有行,它仍然可以被删除。...在下面的示例中,我们尝试将其更改为100天,这将给出一个错误。这个命令在语法上是正确的,所以我假设这是这个版本更新中的一个 bug。...我假设这是当前版本更新中的一个bug。...有一些特性没有按照文档所描述的那样工作,导致错误消息不准确,或者不能正确捕获。 不可变表可以按照正常的方式进行索引和分区。 如果您的应用程序需要一个只允许插入的防篡改表,那么这可能是一个解决方案。
前言 使用脚本安装 Oracle 数据库是一件省时又省事的事情,接下来我演示一下整个过程,11GR2/12C/18C/19C/21C 通用。...安装前准备 本脚本最初仅用于安装 Oracle 数据库,不支持操作系统的安装,请提前安装好 Linux 操作系统。...主机版本 主机内存 磁盘空间 主机IP rhel8.6 8G 50G 10.211.55.100 接下来我演示下如何使用脚本一键安装 19c 单机数据库,步骤所有版本通用。...挂载 ISO 镜像 由于安装 Oracle 数据库需要安装一些 rpm 的依赖包,需要使用 yum 命令来安装,这就需要我们挂载 ISO 镜像来配置本地 YUM 源: mount -o loop /soft...整个安装过程大概需要 20 分钟左右,全程自动安装,不需要人工干预,下面我们直接看视频演示: Oracle 11G/12C/18C/19C/21C 单机数据库一键安装
测试环境: 客户端:Oracle 11.2.0.1 服务端:Oracle 19.16 测试过程: 1.低版本客户端连接高版本数据库报错ORA-28040 2.低版本客户端连接高版本数据库报错ORA-01017...3.总结经验 1.低版本客户端连接高版本数据库报错ORA-28040 使用oracle 11.2.0.1 的客户端,对19c的服务端进行连接时,报错:ORA-28040: No matching authentication...这里还观察到一个细节: 修改密码前,查询SYS和SYSTEM用户在user$中的password和spare4字段: select name, password, spare4 from user$ where...user$中也是没有变化,但是SYSTEM用户就比较正常了,而且会发现,SYSTEM用户在PASSWORD字段也有对应值了,这是因为PASSWORD_VERSIONS=10G版本时,是存在这个字段的。...有低版本; 3.不同PASSWORD_VERSIONS,在基表user$中存储密码的列也不一样; 4.测试做实验强烈建议不要使用SYS这种特殊用户,因为现象很可能不一致;建议使用SYSTEM或者最好自己新建测试用户为佳
创建CDB数据库的几种方式 在Oracle 19c中,若要创建CDB容器数据库环境,可以使用如下几种办法: 1、DBCA静默创建CDB 2、DBCA图形化界面创建CDB 3、手动创建CDB,即使用create...database来创建CDB 4、duplicate a CDB 5、Using DBCA to Duplicate a CDB 在OCP的课件中,Oracle给我们提供了如下图的几种方式: ?...:【DB笔试面试852】在Oracle中,什么是静默建库?...DBCA静默建库如何创建归档模式的数据库 DBCA静默建库默认创建的是一个非归档的数据库,这是由配置文件$ORACLE_HOME/assistants/dbca/templates/General_Purpose.dbc...11g开始:$ORACLE_BASE/cfgtoollogs/dbca 10g:$ORACLE_HOME/cfgtoollogs/dbca 从该日志中可以找到DBCA静默建库的详细过程,值得我们深入分析
镜像地址 为了测试需要,麦老师制作了各个版本的Oracle数据库环境,下载地址如下: # oracle nohup docker pull registry.cn-hangzhou.aliyuncs.com...的ASM+DB环境 【DB宝3】在Docker中使用rpm包的方式安装Oracle 19c 【DB宝4】只需2步即可拥有Oracle19c的ASM+DB环境 18c: https://www.xmmup.com.../dbbao10zaidockerzhongzhixu2bujikeyongyouoracle-18chuanjing.html 【DB宝10】在Docker中只需2步即可拥有Oracle18c环境 11g...中只需2步即可拥有Oracle 11g企业版环境(11.2.0.3) 【DB宝14】在Docker中只需2步即可拥有Oracle 11g企业版环境(11.2.0.4) 12.2.0.1: https:/...-12cr112-1-0-2qiyebanhuanjing.html 【DB宝13】在Docker中只需2步即可拥有Oracle 12cR1(12.1.0.2)企业版环境
应该是使用了 11g 的客户端访问 19c 的数据库造成的不兼容性,但我已经在 sqlnet.ora 文件中配置好了如下内容,按理说不会报错了。...:控制19c数据库可以连到哪些版本的数据库(oracle 19c db —>其它版本的oracle db),例如:控制通过DB LINK可连接到哪些版本的oracle库。...该参数用来限制可以连接到数据库服务器上的最小客户端版本,比如设置值为10,即10g,11g等以上客户端版本可以连接到数据库服务器上,在不是指的时候是用默认值的,导致低版本连接不上高版本的数据库。...和 SQLNET.ALLOWED_LOGON_VERSION_CLIENT 你有可能看到过这样的解决方案:在Oracle 12c中d的sqlnet.ora文件添加:SQLNET.ALLOWED_LOGON_VERSION...11g 客户端,配置好环境变量,用 PL/SQL Developer 登录数据库提示出来的,解决方案就是在 Oracle 19c 服务器端 oracle 用户目录下(非 Grid 用户): cd $ORACLE_HOME
本节给大家讲解如何使用dbca图形化界面来创建数据库,这个其实就是界面下一步下一步就可以安装完成。...接下来,在linux环境中,设置DISPLAY变量,后边的192.168.1.40是我的Windows的IP地址,0.0保持不变: ? 最后输入dbca即可把图形调到本地: ? ? ? ?...可以看到,也是简单的几步就可以创建一个CDB数据库了。 本文结束。
首先确认数据库已开启enable_ddl_logging, 然后从alert中查找没有记录; 之前11g版本都是记录到alert日志中,客户使用的19c数据库,怀疑19c有些变化,于是通过查询MOS...How to Enable and Monitor DDL Logging in 11g and 12c (Doc ID 2254010.1) 可以看到相关说明: ENABLE_DDL_LOGGING...is licensed under Oracle Change Management Pack and it is not offered as a standalone option....You can create an enhancement request, but it is already mentioned that it is part of Oracle Change Management...果然12c以后就改变了ddl的记录位置到ADR HOME/log/ddl_.log,顺利找到后即可协助业务排查。
Oracle 11gR2 中引入了 LISTAGG 函数,以简化字符串聚合。在Oracle 12cR2中,它已扩展为包括溢出错误处理。...Oracle 19c 中通过包含 DISTINCT 关键字,可以从 LISTAGG 结果中删除重复项。...SQL> 让我们在部门10中添加一些额外的,名称为“ MILLER”的人,在汇总列表中提供重复项。...在以下示例中,我们使用 ROW_NUMBER 分析函数删除所有重复项,然后使用常规的 LISTAGG 函数聚合数据。...SQL> 4、从19c开始的解决方案 Oracle 19c 引入了一个更简单的解决方案。现在,我们可以直接在 LISTAGG 函数调用中包含 DISTINCT 关键字。
OGG 21c 新特性 OGG 21c 中的主要新功能 多个数据库版本的简化安装 单个独立部署,捆绑数据库客户端并支持从 11.2 到 21c 的所有数据库版本。...dblogin 无法登录到 OGG,ORA-12154 TNS 错误 不管我在11g 中,还是在新的 19c 中都会出现这个问题,最初是在八月初的时候打算使用 ogg 21c 来捕获11g 的数据,但安装完后就报了登录错误的问题...在早期版本(19c 及更低版本)中,每个数据库版本都有一个特定的 GoldenGate 构建。此外,如果您在中间层(HUB 模型)中运行 GoldenGate,则不必安装 数据库客户端软件。...$ opatch lsinventory 以下步骤将修改后的 SQL 文件加载到数据库中。对于 RAC 环境,只在一个节点上执行这些步骤。...$ opatch rollback -id 17030189 2.确保您验证了 Inventory,并将输出与补丁安装之前运行的输出进行比较,并重新应用作为该补丁应用的一部分而回滚的任何补丁。
针对失败的自动索引测试的SQL语句被列入黑名单,因此将来不会考虑将它们用于自动索引。第一次对数据库运行SQL时,优化程序不会考虑自动索引。 删除未使用的索引。...先决条件 Oracle 19c,此功能仅限于企业版。通过设置初始化参数“_exadata_feature_on=true”进行测试。...默认情况下,自动索引是在默认的永久表空间中创建的。...如果 ALLOW 参数设置为true,则指定的模式(schema)将添加到包含列表中。注意:它构建了一个包含模式的谓词。...如果您感觉特别勇敢,DROP_SECONDARY_INDEXES 过程将删除除用于约束的索引之外的所有索引。这可以在表、模式(Schema)、数据库级别完成。
对于Oracle的SQL脚本而言,脚本DB_Oracle_HC_lhr_v7.0.0_10g.sql适用于Oracle 10g数据库,脚本DB_Oracle_HC_lhr_v7.0.0_11g.sql适用于...Oracle 11g的数据库,脚本DB_Oracle_HC_lhr_v7.0.0_12c.sql适用于Oracle 12c及其以上版本,这3个脚本都是*只读*版本,这3个脚本只会对数据库做查询操作,不会做...脚本DB_OS_HC_lhr_v7.0.0.pl是perl脚本,执行后会对OS的信息进行收集,并且输出到html中。...,因此可供学习数据库使用 5、兼容Oracle 10g、11g、12c、18c、19c、20c、21c等高版本Oracle数据库 6、对Oracle 10g、11g、12c、18c、19c、20c、21c...15、对OS的信息提供了收集(单独脚本) 3、达梦数据库运行方式 在Windows下运行: disql -S SYSDBA/SYSDBA@192.168.1.35 `d:\DB_DM_HC_lhr_v7.0.0
CDB(containerdatabase)容器数据库在图形化创建实例时若勾选了“创建为容器数据库(C)”则会出现容器数据库称之为CDB,否则称之为 Non-CDB,如之前的 11g 数据库就称之为非容器数据库...19c 开始,Oracle 的许可也发生了改变,用户可以创建 3 个 PDB 而不需要购物多租户的许可,3 个以上才需要购买多租户的许可,所以鼓励大家升级到 19c ,免费而且长期支持这里就不在多说了...系统容器包含 CDB 根目录和CDB中的所有 PDB,而应用程序容器只包含插入到应用程序根目录中的PDB。application root 属于 CDB 根,不属于其他容器。...不能在 PDB$SEED 中添加或修改对象,PDB$SEED 默认情况下是只读模式的 PDB。 下面我们类比 11g 经典的体系结构图看一下多租户容器数据库体系结构: ? ?...DB 共享后台进程,内存,以及重做日志文件,控制文件以及位于根容器的元数据,undo 表空间在 12.2 以后的版本中实现本地管理,位于各自的 PDB 中。
领取专属 10元无门槛券
手把手带您无忧上云