仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 876|回复: 7
打印 上一主题 下一主题

[学习教程] MSSQL网站制作之关于dirty buffer

[复制链接]
莫相离 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:32:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
这章描述如何检查和处理在MySQL数据库中的数据损坏。如果你的表损坏很多,你应该尝试找出其原因!见G.1调试一个MySQL服务器。
实在人人对v$bh这个视图大概一向器重不敷.

我们来看一下这个视图次要字段申明:


STATUS

VARCHAR2(1)

Statusofthebuffer:
FREE-notcurrentlyinuseXCUR-exclusiveSCUR-sharedcurrentCR-consistentreadREAD-beingreadfromdiskMREC-inmediarecoverymodeIREC-ininstancerecoverymode?


DIRTY

VARCHAR2(1)

Y-blockmodified

TEMP

VARCHAR2(1)

Y-temporaryblock

PING

VARCHAR2(1)

Y-blockpinged

STALE

VARCHAR2(1)

Y-blockisstale

DIRECT

VARCHAR2(1)

Y-directblock


?

我们注重到v$dirty代表的就是blockmodified

?

假如我们进一步向下追溯:

SQL>selectVIEW_DEFINITIONfromv$fixed_view_definitionwhereVIEW_NAME=GV$BH;

VIEW_DEFINITION
--------------------------------------------------------------------------------
selectbh.inst_id,file#,dbablk,class,decode(state,0,free,1,xcur,2,scur
,3,cr,4,read,5,mrec,6,irec,7,write,8,pi),x_to_null,forced_reads,
forced_writes,bh.le_addr,name,le_class,decode(bitand(flag,1),0,N,Y),d
ecode(bitand(flag,16),0,N,Y),decode(bitand(flag,1536),0,N,Y),dec
ode(bitand(flag,16384),0,N,Y),decode(bitand(flag,65536),0,N,Y),
N,obj,ts#fromx$bhbh,x$lelewherebh.le_addr=le.le_addr(+)


我们能够看到v$bh的底层暗示x$bh

个中v$bh中的dirty/temp/ping/stale/direct五个字段来历于x$bh中的flag字段

格局化一下输入:

SELECTbh.inst_id,file#,dbablk,CLASS,
??????DECODE(state,
??????????????0,free,
??????????????1,xcur,
??????????????2,scur,
??????????????3,cr,
??????????????4,read,
??????????????5,mrec,
??????????????6,irec,
??????????????7,write,
??????????????8,pi
?????????????),
??????x_to_null,forced_reads,forced_writes,bh.le_addr,NAME,le_class,
??????DECODE(BITAND(flag,1),0,N,Y),
??????DECODE(BITAND(flag,16),0,N,Y),
??????DECODE(BITAND(flag,1536),0,N,Y),
??????DECODE(BITAND(flag,16384),0,N,Y),
??????DECODE(BITAND(flag,65536),0,N,Y),N,obj,ts#
?FROMx$bhbh,x$lele
?WHEREbh.le_addr=le.le_addr(+)


由此我们得以窥视x$bh.flag的深层寄义.
支持AIX、FreeBSD、HP-UX、Linux、MacOS、NovellNetware、OpenBSD、OS/2Wrap、Solaris、Windows等多种操作系统
柔情似水 该用户已被删除
沙发
发表于 2015-1-27 14:59:10 | 只看该作者
只能告诉你,学好数据库语言和原理,多见识几种数据库软件,比一棵树上吊死要好。
小妖女 该用户已被删除
板凳
发表于 2015-2-5 09:40:32 | 只看该作者
XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)
变相怪杰 该用户已被删除
地板
发表于 2015-2-11 08:37:59 | 只看该作者
其实可以做一下类比,Oracle等数据库产品老早就支持了java编程,而且提供了java池参数作为用户配置接口。但是现在有哪些系统大批使用了java存储过程?!连Oracle自己的应用都不用为什么?!
活着的死人 该用户已被删除
5#
发表于 2015-3-2 03:49:51 | 只看该作者
但是随着数据量的增大,这种成本差距会逐渐减小,趋于相等。(500万数量级只相差10%左右)
老尸 该用户已被删除
6#
发表于 2015-3-11 02:13:47 | 只看该作者
财务软件要用SQL也只是后台的数据库而已,软件都是成品的,当然多学东西肯定是有好处的..
若天明 该用户已被删除
7#
发表于 2015-3-17 19:08:27 | 只看该作者
多走走一此相关论坛,多看一些实例开发,多交流0经验,没什么的,我也是刚学没多久!加油
山那边是海 该用户已被删除
8#
发表于 2015-3-24 20:58:49 | 只看该作者
我是一个ERP初学者,对于前台运用基本熟悉,但对于后台SQLServer的运用一点也不懂,特想学习下相关资料。至少懂得一些基本的运用。希望各位能给于建议,小弟再谢过!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-3 14:09

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表