表分区可以这样用吗?!(在线)

[复制链接]
查看11 | 回复9 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
SQL> create tablespace WHOTS1
2datafile 'h:\oracle\oradata\orcl\whots1.dbf' size 5m;
表空间已创建。
SQL> create tablespace WHOTS2
2datafile 'h:\oracle\oradata\orcl\whots2.dbf' size 50m;
表空间已创建。
SQL> create tablespace WHOTS3
2datafile 'h:\oracle\oradata\orcl\whots3.dbf' size 50m;
表空间已创建。
SQL> create tablespace WHOTS4
2datafile 'h:\oracle\oradata\orcl\whots4.dbf' size 50m;
表空间已创建。
CREATE TABLE whots(
UserName VARCHAR2(20),
Age NUMBER,
Sex VARCHAR2(4)
)
Partition by hash(Username)
Partitions 4 store in (whots1,whots2,whots3);
create or replace procedure whotest
is
j int;
begin
j:=1;
while(j exec whotest
BEGIN whotest; END;
*
ERROR 位于第 1 行:
ORA-01688: 表TEST.WHOTS分区SYS_P8无法通过140(在表空间WHOTS1中)扩展
ORA-06512: 在"TEST.WHOTEST", line 7
ORA-06512: 在line 1
是总体空间不够的问题?还是由于第一个表空间的数据文件不能和其他的数据文件不一样大小?希望高手帮忙!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
有没有 在tablespace上赋quota给user?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
Hash 类型的分区表通过Hash算法在每一个分区内放入均匀的数据,
你的第一个分区太小了,所以会出问题,如果使用Hash分区,几个分区最好要一样大.否则不是浪费空间就是容易溢出
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
我也觉得不能用那么小的,只是老板要这样做。看来是不行了!谢谢大家!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
应当是你的表空间太小了,每个表空间都不够大,只是刚刚网第一个表空间中放数据时就已经出了问题
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
是不是可以不一样大小的表空间?如果是这样的话,我可以把第一个加大啊!我怕问题不在这里不就没戏了吗?!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
你的分区不是放到表空间里的吗
我说的分区大小不一致其实也就是你的表空间的大小不一致的问题,可能没太说清楚
Hash partitioning maps data to partitions based on a hashing
algorithm that Oracle applies to a partitioning key that you identify. The hashing
algorithm evenly distributes rows among partitions, giving partitions
approximately the same size. Hash partitioning is the ideal method for distributing
data evenly across devices. Hash partitioning is a good and easy-to-use alternative
to range partitioning when data is not historical and there is no obvious column or
column list where logical range partition pruning can be advantageous.
把这段话给你的老板看!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
谢谢!!!
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
从理论上来说,假如你的tablespace是可以自动扩展的,那么即使一开始只有5M空间也不是问题。最终基本上各个partition是比较均匀的。
你发生的错误,应该是不能扩展的缘故。
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
不是表空间不够就是扩展参数不合适.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行