<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>AnySQL.net &#187; Busy</title>
	<atom:link href="http://www.anysql.net/tag/busy/feed" rel="self" type="application/rss+xml" />
	<link>http://www.anysql.net</link>
	<description>SQLULDR2, DataCopy, DataSync, WebChart, OraMon, AUL/MyDUL, 性能优化及容量分析</description>
	<lastBuildDate>Wed, 14 Jul 2010 09:27:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>不能删除物化视图?</title>
		<link>http://www.anysql.net/oracle/drop_busy_materialized_view.html</link>
		<comments>http://www.anysql.net/oracle/drop_busy_materialized_view.html#comments</comments>
		<pubDate>Thu, 17 Jan 2008 19:44:52 +0000</pubDate>
		<dc:creator>anysql</dc:creator>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[Busy]]></category>
		<category><![CDATA[Drop]]></category>
		<category><![CDATA[MVIEW]]></category>

		<guid isPermaLink="false">http://www.anysql.net/wordpress/uncategorized/%e4%b8%8d%e8%83%bd%e5%88%a0%e9%99%a4%e7%89%a9%e5%8c%96%e8%a7%86%e5%9b%be.html</guid>
		<description><![CDATA[&#160; &#160; 几分钟前一网友问我如何删除一个实体化视图, 当然不是什么语法不会的问题了, 是发了Drop命令后一直挂着, 几个小时都没有结束, 你可以想想为什么? 先看一下创建的语法. create materialized view&#160;&#160;user_order_mavi &#160;&#160;&#160;&#160; build immediate&#160;&#160; &#160;&#160;&#160;&#160; refresh&#160;&#160; on commit&#160;&#160; &#160;&#160;&#160;&#160; enable query rewrite as select&#160;&#160;service_id,substr(user_isdn,1,7), &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; bill_type,follow_action,count(user_isdn)&#160;&#160; from user_order group by service_id,substr(user_isdn,1,7), &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;bill_type,follow_action &#160; &#160; 看到这个语句, 应当是刷新的类型那儿有问题, 在ON COMMIT刷新模式下, 如果基表的DML很频繁, 会造成刷新很频繁, 这可能是DROP语句一直挂起的原因. 建议先运行以下命令: ALTER MATERIALIZED VIEW user_order_mavi &#160;&#160; DISABLE QUERY REWRITE &#160;&#160; REFRESH ON DEMAND; &#160; [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp; &nbsp; 几分钟前一网友问我如何删除一个实体化视图, 当然不是什么语法不会的问题了, 是发了Drop命令后一直挂着, 几个小时都没有结束, 你可以想想为什么? 先看一下创建的语法. </p>
<blockquote class="prefont"><p>
create materialized view&nbsp;&nbsp;user_order_mavi <br />
&nbsp;&nbsp;&nbsp;&nbsp; build immediate&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp; refresh&nbsp;&nbsp; on commit&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp; enable query rewrite <br />
as <br />
select&nbsp;&nbsp;service_id,substr(user_isdn,1,7),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bill_type,follow_action,count(user_isdn)&nbsp;&nbsp;<br />
from user_order <br />
group by service_id,substr(user_isdn,1,7),<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bill_type,follow_action
</p></blockquote>
<p>&nbsp; &nbsp; 看到这个语句, 应当是刷新的类型那儿有问题, 在ON COMMIT刷新模式下, 如果基表的DML很频繁, 会造成刷新很频繁, 这可能是DROP语句一直挂起的原因. 建议先运行以下命令: </p>
<blockquote class="prefont"><p>
ALTER MATERIALIZED VIEW user_order_mavi<br />
&nbsp;&nbsp; DISABLE QUERY REWRITE <br />
&nbsp;&nbsp; REFRESH ON DEMAND;
</p></blockquote>
<p>&nbsp; &nbsp; 由于新很频繁, 上面的ALTER语句也等了有半分多钟, 但最后成功执行了. 接下来再进行删除就没有任何问题了, 也很快! </p>
<p>&nbsp; &nbsp; 如何用好物化视图, 也是一门不小的学问! </p>
<h3  class="related_post_title">Relative Posts:</h3><ul class="related_post"><li>2009/02/06 -- <a href="http://www.anysql.net/dba/keep_enough_archive_log.html" title="归档日志管理不容易">归档日志管理不容易</a> (1)</li><li>2008/07/06 -- <a href="http://www.anysql.net/aulmydul/tuning_update_sql_01.html" title="连错库误删100多张表">连错库误删100多张表</a> (9)</li><li>2007/12/18 -- <a href="http://www.anysql.net/oracle/mview_ora_04031.html" title="MVIEW引起ORA-04031">MVIEW引起ORA-04031</a> (0)</li><li>2007/12/12 -- <a href="http://www.anysql.net/dba/sql_dba_oracle_db.html" title="SQL DBA兼管Oracle库">SQL DBA兼管Oracle库</a> (4)</li><li>2007/12/11 -- <a href="http://www.anysql.net/dba/drop_4tb_table.html" title="删除4TB的表">删除4TB的表</a> (5)</li><li>2007/07/17 -- <a href="http://www.anysql.net/dba/capture_table_row_change.html" title="问题解答 &#8212; 如何得知一张表的纪录有变化?">问题解答 &#8212; 如何得知一张表的纪录有变化?</a> (2)</li><li>2007/06/02 -- <a href="http://www.anysql.net/research/use_mylog_for_recovery.html" title="MyLOG程序对于Drop类误操作恢复的作用">MyLOG程序对于Drop类误操作恢复的作用</a> (0)</li><li>2007/03/29 -- <a href="http://www.anysql.net/tools/refresh_mysql_delete_where.html" title="使refresh_mysql适用于数据归档的一点改进">使refresh_mysql适用于数据归档的一点改进</a> (0)</li><li>2007/03/29 -- <a href="http://www.anysql.net/dba/data_lost_by_mview_refresh.html" title="由物化视图Complete刷新引起的数据丢失">由物化视图Complete刷新引起的数据丢失</a> (11)</li><li>2007/03/14 -- <a href="http://www.anysql.net/tools/oracle_mysql_replication_demo.html" title="refresh_mysql.pl角本的一个配置例子">refresh_mysql.pl角本的一个配置例子</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.anysql.net/oracle/drop_busy_materialized_view.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>在AnySQL中如何找出锁的拥有者?</title>
		<link>http://www.anysql.net/anysql/anysql_lock_holder.html</link>
		<comments>http://www.anysql.net/anysql/anysql_lock_holder.html#comments</comments>
		<pubDate>Mon, 26 Feb 2007 22:38:59 +0000</pubDate>
		<dc:creator>anysql</dc:creator>
				<category><![CDATA[AnySQL]]></category>
		<category><![CDATA[Busy]]></category>

		<guid isPermaLink="false">http://www.anysql.net/wordpress/uncategorized/%e5%9c%a8anysql%e4%b8%ad%e5%a6%82%e4%bd%95%e6%89%be%e5%87%ba%e9%94%81%e7%9a%84%e6%8b%a5%e6%9c%89%e8%80%85.html</guid>
		<description><![CDATA[&#160; &#160; 在比较忙的系统中我常用一段处理Resource Busy的角本来对表作DDL操作, 但还是常遇到久久不成成功的情况, 这时就要去看是那个会话一直锁住了我要修改的表, 我常用AnySQL中的两个命令来完成这个功能. 如下所示: ASQL&#62; list object t_long TYPE&#160;&#160;&#160;&#160;&#160;&#160;ID OWNER&#160;&#160;OBJECT_NAME CREATED&#160;&#160;&#160;&#160;MODIFIED&#160;&#160; STATUS &#8212;&#8211; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;- &#8212;&#8212; TABLE 538638 ANYSQL T_LONG&#160;&#160;&#160;&#160;&#160;&#160;2006/08/02 2007/01/25 VALID 1 rows returned. ASQL&#62; ora hold 538638 SID SERIAL# SPID USERNAME MACHINE STATUS&#160;&#160; PROGRAM &#8212; &#8212;&#8212;- &#8212;- &#8212;&#8212;&#8211; &#8212;&#8212;- &#8212;&#8212;&#8211; &#8212;&#8212;&#8212;&#8212;&#8212;- 529&#160;&#160; 62199 44&#160;&#160; ANYSQL&#160;&#160; frisket [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp; &nbsp; 在比较忙的系统中我常用一段<a href="http://www.anysql.net/dba/handle_resource_busy.html">处理Resource Busy</a>的角本来对表作DDL操作, 但还是常遇到久久不成成功的情况, 这时就要去看是那个会话一直锁住了我要修改的表, 我常用AnySQL中的两个命令来完成这个功能. 如下所示: </p>
<blockquote class="prefont"><p>
ASQL&gt; list object t_long</p>
<p>TYPE&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ID OWNER&nbsp;&nbsp;OBJECT_NAME CREATED&nbsp;&nbsp;&nbsp;&nbsp;MODIFIED&nbsp;&nbsp; STATUS<br />
&#8212;&#8211; &#8212;&#8212; &#8212;&#8212; &#8212;&#8212;&#8212;&#8211; &#8212;&#8212;&#8212;- &#8212;&#8212;&#8212;- &#8212;&#8212;<br />
TABLE 538638 ANYSQL T_LONG&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2006/08/02 2007/01/25 VALID</p>
<p>1 rows returned.</p>
<p>ASQL&gt; ora hold 538638</p>
<p>SID SERIAL# SPID USERNAME MACHINE STATUS&nbsp;&nbsp; PROGRAM<br />
&#8212; &#8212;&#8212;- &#8212;- &#8212;&#8212;&#8211; &#8212;&#8212;- &#8212;&#8212;&#8211; &#8212;&#8212;&#8212;&#8212;&#8212;-<br />
529&nbsp;&nbsp; 62199 44&nbsp;&nbsp; ANYSQL&nbsp;&nbsp; frisket INACTIVE sqlplus@frisket </p>
<p>1 rows returned.
</p></blockquote>
<p>&nbsp; &nbsp; 在找出会话之后, 就可以进一步分析, 是否可以将这个会话杀掉. 事实上这一招我们是常用的. </p>
<h3  class="related_post_title">Relative Posts:</h3><ul class="related_post"><li>2009/02/26 -- <a href="http://www.anysql.net/anysql/anysql_db_query.html" title="AnySQL DB查询组件">AnySQL DB查询组件</a> (0)</li><li>2008/11/28 -- <a href="http://www.anysql.net/tools/ociuldr_data_form_display.html" title="ociuldr还有可改进之处!">ociuldr还有可改进之处!</a> (4)</li><li>2008/01/18 -- <a href="http://www.anysql.net/anysql/anysql_sql_server_features.html" title="能在SQL Server上做点事了">能在SQL Server上做点事了</a> (1)</li><li>2008/01/17 -- <a href="http://www.anysql.net/anysql/anysql_for_mssql_sybase.html" title="AnySQL的SQL Server / Sybase版">AnySQL的SQL Server / Sybase版</a> (10)</li><li>2008/01/17 -- <a href="http://www.anysql.net/oracle/drop_busy_materialized_view.html" title="不能删除物化视图?">不能删除物化视图?</a> (1)</li><li>2008/01/04 -- <a href="http://www.anysql.net/dba/oracle_dba_by_anysql.html" title="Oracle DBA By &#8230;&#8230;">Oracle DBA By &#8230;&#8230;</a> (7)</li><li>2007/09/03 -- <a href="http://www.anysql.net/life/anysql_and_stock.html" title="炒股后经营AnySQL.net, 技术赚钱难!">炒股后经营AnySQL.net, 技术赚钱难!</a> (7)</li><li>2007/07/26 -- <a href="http://www.anysql.net/anysql/anysql_form_display.html" title="向MySQL学习, AnySQL可以纵向显示结果记录">向MySQL学习, AnySQL可以纵向显示结果记录</a> (6)</li><li>2007/03/07 -- <a href="http://www.anysql.net/developer/good_bye_java.html" title="再见了, Java语言!">再见了, Java语言!</a> (7)</li><li>2007/02/07 -- <a href="http://www.anysql.net/dba/handle_resource_busy.html" title="处理Resource Busy情况的一段角本">处理Resource Busy情况的一段角本</a> (10)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.anysql.net/anysql/anysql_lock_holder.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>处理Resource Busy情况的一段角本</title>
		<link>http://www.anysql.net/dba/handle_resource_busy.html</link>
		<comments>http://www.anysql.net/dba/handle_resource_busy.html#comments</comments>
		<pubDate>Wed, 07 Feb 2007 23:26:27 +0000</pubDate>
		<dc:creator>anysql</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[Busy]]></category>
		<category><![CDATA[Index]]></category>
		<category><![CDATA[Oracle]]></category>

		<guid isPermaLink="false">http://www.anysql.net/wordpress/uncategorized/%e5%a4%84%e7%90%86resource-busy%e6%83%85%e5%86%b5%e7%9a%84%e4%b8%80%e6%ae%b5%e8%a7%92%e6%9c%ac.html</guid>
		<description><![CDATA[&#160; &#160; 对于一些建在更新比较频繁的列上的索引, 或者是有大量记录被删除表上的索引, 需要定期进行Rebuild, 对于比较大表上的索引一般会考虑用一定的并行度去建, 以让索引在更短的时间内建好. 但不要忘了将索引的并行度重新设置为1(禁用并行), 否则很容易让所有的SQL都用并行方式来执行, 从而引起主机崩溃. 在很忙的OLTP系统中, 可能常会遇到Resource Busy的错误, 如何确保修改能最后成功呢? 就需要一段角本来处理一下这个错误, 下面是我常用的一段角本: alter index &#8230;&#8230; rebuild &#8230; parallel &#8230; ONLINE; declare &#160;&#160;resource_busy exception; &#160;&#160;pragma exception_init (resource_busy,-54); begin loop &#160;&#160; begin &#160;&#160;&#160;&#160; execute immediate &#8216;alter index &#8230;&#8230; noparallel&#8217;; &#160;&#160;&#160;&#160; exit; &#160;&#160; exception &#160;&#160;&#160;&#160;when resource_busy then &#160;&#160;&#160;&#160; dbms_lock.sleep(1); &#160;&#160; end; end loop; end; [...]]]></description>
			<content:encoded><![CDATA[<p>&nbsp; &nbsp; 对于一些建在更新比较频繁的列上的索引, 或者是有大量记录被删除表上的索引, 需要定期进行Rebuild, 对于比较大表上的索引一般会考虑用一定的并行度去建, 以让索引在更短的时间内建好. 但不要忘了将索引的并行度重新设置为1(禁用并行), 否则很容易让所有的SQL都用并行方式来执行, 从而引起主机崩溃. 在很忙的OLTP系统中, 可能常会遇到Resource Busy的错误, 如何确保修改能最后成功呢? 就需要一段角本来处理一下这个错误, 下面是我常用的一段角本: </p>
<blockquote class="prefont"><p>
alter index &#8230;&#8230; rebuild &#8230; parallel &#8230; ONLINE;</p>
<p>declare<br />
&nbsp;&nbsp;resource_busy exception;<br />
&nbsp;&nbsp;pragma exception_init (resource_busy,-54);<br />
begin <br />
loop<br />
&nbsp;&nbsp; begin <br />
&nbsp;&nbsp;&nbsp;&nbsp; execute immediate &#8216;alter index &#8230;&#8230; noparallel&#8217;;<br />
&nbsp;&nbsp;&nbsp;&nbsp; exit;<br />
&nbsp;&nbsp; exception <br />
&nbsp;&nbsp;&nbsp;&nbsp;when resource_busy then<br />
&nbsp;&nbsp;&nbsp;&nbsp; dbms_lock.sleep(1);<br />
&nbsp;&nbsp; end;<br />
end loop;<br />
end;<br />
/
</p></blockquote>
<p>&nbsp; &nbsp; 这个角本也可以用在其他的地方, 或者改一下错误号(-54)来处理其他的错误, 怎么用就看你的了! </p>
<h3  class="related_post_title">Relative Posts:</h3><ul class="related_post"><li>2009/02/05 -- <a href="http://www.anysql.net/dba/change_export_tablespace.html" title="导出时如何统一表空间?">导出时如何统一表空间?</a> (2)</li><li>2008/06/23 -- <a href="http://www.anysql.net/dba/apache_tomcat.html" title="根据表名搜索SQL语句">根据表名搜索SQL语句</a> (0)</li><li>2008/05/11 -- <a href="http://www.anysql.net/oracle/my_network_channels.html" title="一周遇到两个Oracle Bug">一周遇到两个Oracle Bug</a> (5)</li><li>2008/03/20 -- <a href="http://www.anysql.net/aulmydul/aul_recover_source_code.html" title="AUL恢复Oracle索引结构?">AUL恢复Oracle索引结构?</a> (0)</li><li>2008/02/28 -- <a href="http://www.anysql.net/oracle/oracle_zero_cost_plan.html" title="Oracle CBO认为Cost为0">Oracle CBO认为Cost为0</a> (2)</li><li>2008/01/17 -- <a href="http://www.anysql.net/oracle/drop_busy_materialized_view.html" title="不能删除物化视图?">不能删除物化视图?</a> (1)</li><li>2007/12/04 -- <a href="http://www.anysql.net/oracle/index_on_timestamp.html" title="TIMESTAMP类型上的索引">TIMESTAMP类型上的索引</a> (0)</li><li>2007/09/06 -- <a href="http://www.anysql.net/oracle/context_index_stoplist.html" title="用Stop List来缩小Oracle全文索引的大小">用Stop List来缩小Oracle全文索引的大小</a> (4)</li><li>2007/08/21 -- <a href="http://www.anysql.net/oracle/indexed_fixed_column.html" title="如何获得X$表上的特殊索引信息?">如何获得X$表上的特殊索引信息?</a> (0)</li><li>2007/08/12 -- <a href="http://www.anysql.net/oracle/use_concat_not_working.html" title="USE_CONCAT对X$表有时并不工作">USE_CONCAT对X$表有时并不工作</a> (0)</li></ul>]]></content:encoded>
			<wfw:commentRss>http://www.anysql.net/dba/handle_resource_busy.html/feed</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
	</channel>
</rss>
