<?xml version="1.0" encoding="gb2312"?>
<?xml-stylesheet href="http://blog.itpub.net//styles/rss.css" type="text/css"?>

<rdf:RDF 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
  xmlns="http://my.netscape.com/rdf/simple/0.9/"
>
    
     <channel>
  <title>一步一脚印</title>
  <link>http://space6212.itpub.net</link>
  <description></description>
 </channel>
    <item>
<title>如何找出引起ORA-1652的SQL？</title>
<description>在alert文件中，我们可能会看到这样的报错信息： Wed Aug 20 17:16:37 2008 ORA-1652: unable to extend temp segment by 128 in tablespace DBA_TEMP 要解决这个问题，我们首先要导致这个问题的SQL，可能方法有几种： 1、设置events alter system set events '1652 trace name errorstack level 1'; 这种方法有一定局限： 1)它不能获取已发生的1652的错误信息，只能对以后出现1652错误时生成一个trace文件； 2)用events，不清楚会对数据库有什么不好的影响。 2、查询V$SQL视图： 如select * from v$sql order by direct_writes/execution...</description>
<link>http://space6212.itpub.net/post/12157/469168</link>
<pubDate>Thu,21 08 2008 18:07:06</pubDate>
</item>
<item>
<title>MTS的dispatcher进程异常中断引起ORA-07445</title>
<description>ORA-07445: exception encountered: core dump [_int_malloc()+374] [SIGSEGV] [Address not mapped to object] [0x68C3D0] [] [] 解决方法：因为这个错误表示已经有DISPATCHER异常中断了，所以需要重置MTS_DISPACHER，使得数量与参数预设值一样：alter system set dispatchers='(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(LISTENER=listener_01))(SDU=2048))(DISPATCHERS=15)' scope=memory;</description>
<link>http://space6212.itpub.net/post/12157/468787</link>
<pubDate>Thu,14 08 2008 18:37:56</pubDate>
</item>
<item>
<title>创建完全刷新的物化视图时遭遇ORA-12014</title>
<description>创建完全刷新的物化视图时遭遇ORA-12014suk@D10R2N1&gt; create materialized view mv_test1 refresh complete as select * from test2;create materialized view mv_test1 refresh complete as select * from test2 *ERROR at line 1:ORA-12014: table 'TEST2' does not contain a primary key constraint创建完全刷新的物化视图时与主键没有关系，经查metalink，发现这是一个BUG：https://metalink.oracle.com/metalink/plsql/f?p=130:14:2745731371560361694::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame...</description>
<link>http://space6212.itpub.net/post/12157/468784</link>
<pubDate>Thu,14 08 2008 17:46:38</pubDate>
</item>
<item>
<title>减少日志产生量小结</title>
<description>如果force_logging=no 则 对于普通表: noarchive: append archvie: nologging + append 临时表： noarchive: append archvie: append如果force_logging=yes 对于普通表: noarchive: 无法减少日志量 archvie: 无法减少日志量 临时表： noarchive: append archvie: append由于临时表只保存临时数据，就算恢复不了也没问题，所以尽量不让它产生日志。</description>
<link>http://space6212.itpub.net/post/12157/467309</link>
<pubDate>Thu,24 07 2008 17:09:12</pubDate>
</item>
<item>
<title>用oradebug挂起进程</title>
<description>oradebug可以帮助我们做很多事情，如dump内存信息、设置事件、挂起进程等。本文主要介绍如何使用oradebug挂起进程。为什么要挂起进程呢？比如因为开发人员对数据库执行一个很大的操作，严重影响了数据库的正常运行，此时你有两个选择：1、删掉进程2、暂停进程实际上，我们往往不能十分确定把进程直接kill掉会造成什么后果，所以暂停进程的执行就是一个比较折中的选择。要暂停进程步骤很简单：首先找到进程，然后暂停就可以了。使用oradebug暂停进程时，可以使用pid，也可以使用spid。要找出这些信息有很多方式了，比如可以在操作系统中 ps...</description>
<link>http://space6212.itpub.net/post/12157/465222</link>
<pubDate>Sun,29 06 2008 23:45:56</pubDate>
</item>
<item>
<title>Hugepage、VLM、SGA和Share memory</title>
<description>本文主要讨论Hugepage、VLM、SGA和Share memory的关系和设置。一、相关概念Hugepage/Big page: 系统进程是通过虚拟地址访问内存，但是CPU必须把它转换程物理内存地址才能真正访问内存。为了提高这个转换效率，CPU会缓存最近的虚拟内存地址和物理内存地址的映射关系，并保存在一个由CPU维护的映射表中。为了尽量提高内存的访问速度，需要在映射表中保存尽量多的映射关系。而在Redhat Linux中，内存都是以页的形式划分的，默认情况下每页是4K，这就意味着如果物理内存很大，则映射表的条目将会非常多，会影响CPU的检索效率。因为内存大小是固...</description>
<link>http://space6212.itpub.net/post/12157/465221</link>
<pubDate>Sun,29 06 2008 23:44:43</pubDate>
</item>
<item>
<title>RAC环境下创建物理DATAGUARD(2)</title>
<description>为一个RAC搭建standby和单节点搭建方法基本一致，我们可以把RAC看成是一个单节点的数据库，只需要保证所有节点的日志能传送到备库即可。五、备库环境准备1、在备库添加指向主库的tnsnames 在备库的tnsnames.ora添加如下内容：primary = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 200.200.200.11)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = 200.200.200.22)(PORT = 1521)) (LOAD_BALANCE = yes) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = primary) (FAILOVER_MODE = (TYPE = SELECT) (METHOD = BASIC) (RE...</description>
<link>http://space6212.itpub.net/post/12157/461032</link>
<pubDate>Sat,03 05 2008 23:44:33</pubDate>
</item>
<item>
<title>RAC环境下创建物理DATAGUARD(1)</title>
<description>为一个RAC搭建standby和单节点搭建方法基本一致，我们可以把RAC看成是一个单节点的数据库，只需要保证所有节点的日志能传送到备库即可。一、在备库服务器安装ORACLE软件 只安装软件，不要创建数据库。ORACLE软件版本和主库保持一致。二、修改主库参数节点1执行：SQL&gt; show parameter spfileNAME TYPE VALUE------------------------------------ ----------- ------------------------------spfile string /dev/raw/raw14节点2执行：SQL&gt; show parameter spfileNAME TYPE VALUE------------------------------------ ----------- --------...</description>
<link>http://space6212.itpub.net/post/12157/461030</link>
<pubDate>Sat,03 05 2008 23:40:18</pubDate>
</item>
<item>
<title>一次简单的分页优化</title>
<description>今天对一个排序分页查询进行了一次优化，优化后性能得到明显改观。下面用例子说明优化步骤。1、首先创建测试数据SQL&gt; create table t as select * from dba_objects;Table createdSQL&gt; insert into t select * from t;12704 rows insertedSQL&gt; commit;Commit completeSQL&gt; insert into t select * from t;25408 rows insertedSQL&gt; insert into t select * from t;50816 rows insertedSQL&gt; commit;SQL&gt; create index idx_t_object_name on t(object_name);Index createdSQL&gt; ANALYZE TABLE T COMPUTE STATISTICS;Table analyzed2、取第一页...</description>
<link>http://space6212.itpub.net/post/12157/460148</link>
<pubDate>Fri,18 04 2008 17:45:17</pubDate>
</item>
<item>
<title>SESSION处于KILLED状态下如何找出对应的进程</title>
<description>今天在处理一个会话满了的数据库，需要释放部分无用的session。根据V$SESSION的program可以简单确定PL/SQLDEV连过去的会话基本是无效会话，需要把这些会话都kill掉：SQL&gt; select 'alter system kill session '''||sid||','||SERIAL#||''';' from v$session where program like 'PlSqlDev.exe%';'ALTERSYSTEMKILLSESSION'''||SID||','||SERIAL#||''';'--------------------------------------------------------------------------------------------------------------alter system kill session '12,14459';alter system kill session '1...</description>
<link>http://space6212.itpub.net/post/12157/460147</link>
<pubDate>Fri,18 04 2008 17:42:31</pubDate>
</item>
 </rdf:RDF>


