打开PDB报错ORA-30013

打开,pdb,报错,ora · 浏览次数 : 84

小编点评

**问题:** RAC节点2打开所有PDB时,报错ORA-30013。 **错误描述:** ```sql !oerr ora 3001330013, 00000, \"undo tablespace '%s' is currently in use\"// *Cause: the specified undo tablespace is currently used by another// instance.// *Action: Wait for the undo tablespace to become available or// change to another name and reissue the statement. ``` **解决方法:** 根据错误描述,可以推断到: * RAC节点2打开的PDB是临时的,尚未关闭。 * 该PDB上存在一个名为`undotbs2`的undo tablespace。 **解决步骤:** 1. **检查节点1的undo状态:** ```sql alter session set container=pdb1; Session altered. ``` 2. **更改节点2的undo命名:** ```sql alter system set undo_tablespace='UNDOTBS1' sid='jydb1'; ``` 3. **重新启动节点2:** ```sql alter node node2 restart; ``` **总结:** 该问题是多租户架构下,操作PDB时存在一些问题的原因之一,即节点间存在共享的undo tablespace导致的冲突。通过更改命名和重启节点,可以解决此问题。

正文

多租户架构,之前还在做运维的时期接触也不多。遇到多租户问题,第一反应是有些发虚的。
但实际很多问题很简单,也容易解决。本文就是一个例子。

问题:RAC节点2打开所有PDB时,报错ORA-30013。

SQL> alter pluggable database all open;
alter pluggable database all open
*
ERROR at line 1:
ORA-30013: undo tablespace 'UNDOTBS2' is currently in use

查看oerr对错误的描述:

SQL> !oerr ora 30013
30013, 00000, "undo tablespace '%s' is currently in use"
// *Cause:   the specified undo tablespace is currently used by another
//           instance.
// *Action:  Wait for the undo tablespace to become available or
//           change to another name and reissue the statement.

去RAC节点1查询,居然节点1的undo是undotbs2,修正为undotbs1即可。

SQL> alter session set container=pdb1;

Session altered.

SQL> show parameter undo

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
temp_undo_enabled		     boolean	 FALSE
undo_management 		     string	 AUTO
undo_retention			     integer	 900
undo_tablespace 		     string	 UNDOTBS2

SQL> alter system set undo_tablespace='UNDOTBS1' sid='jydb1';

System altered.

SQL> show parameter undo

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
temp_undo_enabled		     boolean	 FALSE
undo_management 		     string	 AUTO
undo_retention			     integer	 900
undo_tablespace 		     string	 UNDOTBS1

再去RAC节点2打开PDB成功。
应该是之前修改undo时,由于马虎没指定sid。是一个低级错误,也属于非常容易解决的简单问题。

多租户架构下,除加了一些特定的命令,尤其是进入到某个PDB中,其实操作跟以前还是没啥区别的,很多经验也完全可复用。

与打开PDB报错ORA-30013相似的内容:

打开PDB报错ORA-30013

多租户架构,之前还在做运维的时期接触也不多。遇到多租户问题,第一反应是有些发虚的。 但实际很多问题很简单,也容易解决。本文就是一个例子。 问题:RAC节点2打开所有PDB时,报错ORA-30013。 SQL> alter pluggable database all open; alter plug

python自产调试工具pdb的使用

python自产调试工具pdb的使用 介绍 调试打印在写代码的时候不可避免 项目越大,调试可能花的时间会越多 print调试可能是最早用的,一段时间内你都会习惯这种方式 一旦成了老鸟,你应该会去用IDE的debugger,功能非常强大,效率就比print上了一个台阶 当然python像其他语言一样,

[BJDCTF2020]Cookie is so stable

打开题目是三个页面 Hint中有提示 flag页面有个输入框抓包观察cookie发现多了一user就是回显内容 然后猜测有模板注入漏洞就开始尝试 '时代少年团队长乌萨奇的颜值一直被质疑'的文章内容 如何判断对方的模板? 常见模板有Smarty、Mako、Twig、Jinja2、Eval、Flask、

[BUUCTF][Web][极客大挑战 2019]EasySQL 1

打开靶机对应的url 界面显示需要输入账号和密码 分别在两个输入框尝试加单引号尝试是否有sql注入的可能,比如 123' 发现两个框可以注入,因为报了个错误信息 You have an error in your SQL syntax; check the manual that correspon

[BUUCTF][Web][极客大挑战 2019]Havefun 1

打开靶机的URL,看到一个页面 右键查看源代码,看到有用信息 ...

[BUUCTF][Web][ACTF2020 新生赛]Include 1

打开靶机对应的url 显示一个tips 超链接 点击访问超链接,对应Url为 http://469398f2-5677-4270-a4a4-55c5e4a7504a.node4.buuoj.cn:81/?file=flag.php 显示信息Can you find out the flag, 右键查

[BUUCTF][Web][ACTF2020 新生赛]Exec 1

打开靶机对应url 显示可以输出ip 来进行ping操作 尝试试一下是否有命令注入的可能 127.0.0.1|ls 果然可以,输出结果 index.php PING 127.0.0.1 (127.0.0.1): 56 data bytes 按照套路估计是在根目录,试一下 127.0.0.1|ls /

[BUUCTF][Web][GXYCTF2019]Ping Ping Ping 1

打开靶机对应URL 提示有ip参数 尝试构造url http://714ad4a2-64e2-452b-8ab9-a38df80dc584.node4.buuoj.cn:81/?ip=127.0.0.1 显示 /?ip= PING 127.0.0.1 (127.0.0.1): 56 data byt

[BUUCTF][Web][极客大挑战 2019]Secret File 1

打开靶机对应的url 右键查看网页源代码,查看到一个访问路径 /Archive_room.php 构造url访问一下 http://3bfaebad-fdfa-4226-ae0a-551f0228becb.node4.buuoj.cn:81/Archive_room.php 右键再次查看源代码,有一

[BUUCTF][Web][极客大挑战 2019]LoveSQL 1

打开靶机url,页面显示有两个输入框,框中输入123',发现两个框都有sql注入问题 爆出一下错误 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server versi