接到一个问题,客户的某个系统突然CPU冲高,一个小时内CPU从5%冲到60%以上,在数据库中发现大量的会话在等待CSS initialization。 该系统是非RAC非ASM的系统,一般来说,不会出现CSS(cluster synchronization service)的等待,只有在访问voti […]
安装cluster时报错 PRVF-5636
之前写过一篇为rac建dns server的文章,今天在安装11.2.0.3的grid的时候报错 PRVF-5636 : The DNS response time for an unreachable node exceeded “15000” ms on followin […]
12c的架构图
在微博上看到12c的架构图了,在这里也放一下。一是给自己做个笔记,另一方面也方便各位oracle爱好者。 顺便整理了一下,9i到12c的数据库架构图,都是pdf版本的: (1)Db9i_Server_Arch (2)Db10g_Server_Arch (3)Db11g_Server_Arch (4) […]
基于vbox的12c RAC的安装
总体上说,12c RAC的安装基本和11g的一致。 先整个简单版的12c RAC(不启用dns,不启用flex cluster,不启用admin policy),基于Oracle Linux Release 6 Update 4 for x86_64 (64 Bit),安装在virtualbox 4 […]
记一次cursor pin s wait on X的处理
今天遇到个问题,客户说某天的11:45开始,系统遇到了大量的cursor pin s wait on X,经历一个小时后自动消失,需要查找原因。 这报错一般是某个会话需要申请S模式的mutex,而mutex被其他会话以X模式占有了。查holder也很容易,11g版本前看p2raw的前8位,将16进制 […]
11g RAC的删除
记得原来在10g RAC的时候,清除RAC还要删除很多东西。有一次某客户的10RAC装不起来,OUI安装数据库时,一直卡在83%,后来查了才发现是没有清除/etc/oratab文件中的信息,导致一直在读取之前的几个实例的信息,由于其他相关的信息,如inventory中的信息已经删除,所以一直卡在83 […]
在异常捕获时显示全部的堆栈信息
今天收到一个请求,问如何才能看到异常时所有的信息,其实我们可以测试一把:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
CREATE OR REPLACE PROCEDURE proc1 IS BEGIN DBMS_OUTPUT.put_line ('running proc1'); RAISE NO_DATA_FOUND; END; / CREATE OR REPLACE PROCEDURE proc2 IS l_str VARCHAR2 (30) := 'calling proc1'; BEGIN DBMS_OUTPUT.put_line (l_str); proc1; END; / CREATE OR REPLACE PROCEDURE proc3_a IS BEGIN DBMS_OUTPUT.put_line ('calling proc2'); proc2; EXCEPTION WHEN OTHERS THEN DBMS_OUTPUT.put_line ('Error stack at top level:'); DBMS_OUTPUT.put_line (DBMS_UTILITY.format_error_backtrace); END; / |
通过DBMS_UTILITY.format_error_backtrace,我们可以看到出错的行号, [crayon-678259b418b3f87191807 […]
11.2.0.1的RAC的迁移和升级到11.2.0.3
某客户有套RAC系统,需要一个主机迁移到另一主机,并且要求升级到11.2.0.3。这项任务其实包含了2个工作,迁移和升级。如果单纯的迁移,直接rman过去就好了;如果单纯的升级,其实比较好做,GI可以滚动升级,DB升级需要downtime。但是配合着迁移来做,就要考虑下如何更好的减少downtime […]
12c开始的新一轮Lifetime Support
12c开始的新一轮Lifetime Support 注意,11gR2也有一段Waived Extended Support的时期,和9iR2和10gR2一样,在这一时期不加收10%费用。详情请咨询oracle销售。
12c的sqlplus提示符
12发布了。有别于11g和之前版本,如果我需要登录sqlplus之后,清楚的了解我所登录的数据库,我们可以加一个[数据库类型],如: 在11g中,还是用老的提示符,如以sys用户登录数据库,instance名叫ORA11G:
1 |
sys@ORA11G(192.168.190.1)> |
在12c […]
pdb之间的相互转换
本文讨论pdb之间的几种转换: (1)从see pdb中创建pdb1 (2)在cdb内(ora12c为cdb)将pdb1克隆至pdb2. (3)将non-cdb(名字叫noncdb),转换为pdb3,插入到cdb中。 (4) pdb改名 (1)从see pdb中创建pdb1 [crayon-6782 […]
浅谈PDB技术
PDB大致功能描述:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
创建: 用create pluggable database的命令, 用file_name_convert的方式拷贝seed pdb的文件到对应的新pdb的路径下。拷贝的是最基本system和sysaux表空间, 将新建的pdb从mount的状态打开到read write的状态。 建立pdb用户的默认表空间。 拔出: a)用dbca进行拔出有2种生成结果,一种是生成打包文件,一种是生成.xml文件和.DFB文件。 a .1)打包方式: 操作的时候,先close pdb,然后在$ORACLE_HOME\assistants\dbca\templates\<pdb_name>,生成一个xml文件描述pdb原来文件的路径和scn等信息; 将pdb的数据文件复制到$ORACLE_HOME\assistants\dbca\templates\<pdb_name>路径下; 生成一个pdb_info.txt描述本次pdb unplug的相关文件。 将上述3种类型的文件打包成一个gz包。 在cdb中,以drop pluggable database的方式,删除pdb的信息和在物理上删除pdb的数据文件。 a.2)生成.xml和.DFB文件的方式 也是类似,只是不打包成一个gz包,且pdb的多个数据文件也被整合在一个.DFB文件中。最后也删除cdb中关于此pdb的信息。 插入: 如果用dbca,原来打包成gz包的来做plug就非常方便,只要选中gz包,直接plug即可。如果原来是分开文件的方式,也只需根据xml文件和.DFB文件,先restore数据文件,再create pluggable database using xml文件。 克隆: 将pdb至于read only模式,然后利用create pluggable database xxx from xxx...命令进行可克隆。注该方法需要将原pdb至于read only模式。可以常用在测试环境用克隆另外一个类似的环境。 |
PDB手工操作: a)创建
1 2 3 4 5 6 7 8 9 10 11 |
SQL> CREATE PLUGGABLE DATABASE mypdb1 ADMIN USER pdbadmin IDENTIFIED BY Orac1e_1981 ROLES=(CONNECT) 2 file_name_convert=('E:\ORA12C\APP\ORACLEUSER\ORADATA\ORA12C\PDBSEED','E:\ORA12C\APP\ORACLEUSER\ORADATA\ORA12C\mypdb1'); Pluggable database created. SQL> SQL> alter pluggable database mypdb1 open; Pluggable database altered. SQL> |
b)拔出:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
SQL> ALTER PLUGGABLE DATABASE mypdb1 CLOSE; Pluggable database altered. SQL> SQL> alter pluggable database MYPDB1 unplug into 'E:\ora12c\app\oracleuser\product\12.1.0\dbhome_1\assistants\dbca\templates\ora12c_MYPDB1.xml'; Pluggable database altered. SQL> SQL> host cp -R E:\ora12c\app\oracleuser\oradata\ora12c\mypdb1 E:\ora12c\app\oracleuser\oradata\ora12c\mypdb1_bak SQL> DROP PLUGGABLE DATABASE mypdb1 including datafiles; Pluggable database dropped. SQL> |
c)插入: [crayon-678259 […]