我的数据库里面有200多个表,我已经使用下面方法:
SPOOL ALTER.SQL
SELECT 'ALTER TABLE '||TABLE_NAME ||' MOVE TABLESPACE TBS_NAME ;' FROM USER_TABLES ;
SPOOL OFF
@ALTER.SQL
但是有一个Long Raw字段的表没有改过来,请问如何修改这个表的表空间?
索引重新建立后其他的表可以正常使用(索引)
我也使用过下面方法来更改表空间但是导入后还是原来的表空间:
========================================================================
回收用户unlimited tablespace权限
这样就可以导入到用户缺省表空间
SQL> create user bjbbs identified by passwd
2 default tablespace bjbbs
3 temporary tablespace temp
4 /
User created.SQL> grant connect,resource to bjbbs;
Grant succeeded.
SQL> grant dba to bjbbs;
Grant succeeded.
SQL> revoke unlimited tablespace from bjbbs;
SQL> alter user bjbbs quota 0 on users;
SQL> alter user bjbbs quota unlimited on bjbbs;重新导入数据
$ imp bjbbs/passwd file=bj_bbs.dmp fromuser=jive touser=bjbbs grants=n
SQL> select table_name,tablespace_name from user_tables;
45 rows selected.
========================================================================
上面的办法失败,随便问一下我这种更改大量表的表空间的问题(有大字段)有没有好的办法解决!
SPOOL ALTER.SQL
SELECT 'ALTER TABLE '||TABLE_NAME ||' MOVE TABLESPACE TBS_NAME ;' FROM USER_TABLES ;
SPOOL OFF
@ALTER.SQL
但是有一个Long Raw字段的表没有改过来,请问如何修改这个表的表空间?
索引重新建立后其他的表可以正常使用(索引)
我也使用过下面方法来更改表空间但是导入后还是原来的表空间:
========================================================================
回收用户unlimited tablespace权限
这样就可以导入到用户缺省表空间
SQL> create user bjbbs identified by passwd
2 default tablespace bjbbs
3 temporary tablespace temp
4 /
User created.SQL> grant connect,resource to bjbbs;
Grant succeeded.
SQL> grant dba to bjbbs;
Grant succeeded.
SQL> revoke unlimited tablespace from bjbbs;
SQL> alter user bjbbs quota 0 on users;
SQL> alter user bjbbs quota unlimited on bjbbs;重新导入数据
$ imp bjbbs/passwd file=bj_bbs.dmp fromuser=jive touser=bjbbs grants=n
SQL> select table_name,tablespace_name from user_tables;
45 rows selected.
========================================================================
上面的办法失败,随便问一下我这种更改大量表的表空间的问题(有大字段)有没有好的办法解决!
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货