spool空间

spool空间的最大值得依赖于表大小以及其使用频率。
Spool空间在创建用户的时候指定,其值可以依据需要变动。
没有计算spool的公式,
某个session使用的spool空间可以在DBC.DISKSPACE视图中查找。

[@more@]

下面是查看某用户spool空间的sql:

SELECT DATABASENAME (Title 'User')
,sum(MaxSpool) (format '---,---,---,---,--9')(char(19))(title 'max Spool ')
,sum(PeakSpool) (format '---,---,---,---,--9')(char(19))(title 'Peak Spool ')
,sum(Maxtemp) (format '---,---,---,---,--9')(char(19))(title 'max temp ')
,sum(PeakTemp) (format '---,---,---,---,--9')(char(19))(title 'Peak Temp ')
FROM DBC.DISKSPACE
WHERE DatabaseName = 'Joe_User'
ORDER BY 1
GROUP BY 1;


下面的sql可以提供分配给某用户的spool空间及临时空间信息:

SELECT A.DatabaseName (CHAR(20))
, A.OwnerName (CHAR(20))
, A.AccountName (CHAR(20))
, B.DefaultDatabase (CHAR(20))
, (A.SpoolSpace / 1000000000) (NAMED Spool_In_gig)
, (A.TempSpace / 1000000000) (NAMED Temp_In_gig)
FROM DBC.DATABASES A
, DBC.DBASE B
WHERE A.DatabaseName = B.DatabaseNamei
AND A.DatabaseName = 'Joe_User'
ORDER BY 1;

修改某用户spool,temp空间的方法很多,下面方法1:
create macro reset_pk_spool as (
UPDATE dbc.DataBaseSpace
SET PeakSpoolSpace = 0
where databaseid = '0000841D'XB /* Userid NBD7UZX */
and tableid = '000000000000'XB
;
);

用databaseid及tableid来操作的原因是UPI update效率较高,并且锁范围最小。
(Table DBC.DATABASESPACE is a non-hashed table. A non-hashed system table appears to behave the same as a hashed table, but the data is actually local to the AMP - no matter the definition of the primary index. This means that you can't use the PI to access a non-hashed table. Instead, a full-table (or all rows) scan must be performed.

可用如下sql来获取databaseid:

locking table dbc.DBase for access
select * from dbc.DBase
where DatabaseNameI = 'NBD7UZX';

The tableid of low values ('000000000000'XB) is for the userid.
用这个方法的时候千万小心,最好是在需要的时候创建此macro,操作完成后删掉,以免误操作引发灾难。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16723161/viewspace-1017712/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16723161/viewspace-1017712/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值