ORA-01219: database or pluggable database not open: queries allowed on fixedtables or views only

对于oracle的ORA-01219错误,通常的原因是尝试从一个尚未打开的容器数据库(CDB)或可插拔数据库(PDB)中查询数据。解决这个问题的方法有几个,下面是几个建议:

打开CDB和PDB

  1. 首先,确保您已经连接到CDB(容器数据库):

    sqlplus sys/[Your_Password]@//localhost:1521/CDB_NAME as sysdba

  2. 确认CDB已经打开:

    SELECT NAME, OPEN_MODE FROM V$DATABASE;

    如果显示OPEN_MODE不是READ WRITE,则需要打开数据库:

    ALTER DATABASE OPEN;

  3. 接下来,打开所有PDB或特定的PDB:

    打开所有PDB:

    ALTER PLUGGABLE DATABASE ALL OPEN;

    或者只打开特定的PDB:

    ALTER PLUGGABLE DATABASE [PDB_NAME] OPEN;

再次运行查询

在完成上述步骤后,再次尝试运行您的查询:

SELECT PDB_NAME, STATUS FROM DBA_PDBS;

这次应该能正常返回结果。

其他注意事项

  • 确保您具有适当的权限和角色,以执行这些操作。通常,需要具有SYSDBA角色。
  • 如果您在一个RAC(Real Application Clusters)环境中,可能还需要额外的步骤来确保所有节点上的数据库都已打开。

以上就是如何解决ORA-01219错误并成功查询PDB信息的方法。了解和解决这种类型的错误对于数据库管理和维护是非常重要的。希望这篇文章能帮助您解决遇到的问题。如果有进一步的疑问或需要更多的解释,请留言。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

运维开发王义杰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值