oracle中如何将表空间进行统一以及规划表空间的方法!
2006-04-24 11:43
501 查看
根据现我所从事的工作流项目中的应用采取如下方式:
方案一:
1.需要生成比较大的表空间(约1G的空间)。
2.使用命令将表空间进行统一。
revoke unlimited tablespace from workflow;--将workflow表空间无限制配额先废除.
alter user workflow quota 0 on users;--此语句是将用户workflow在users表空间下的配额设置为0.让其无法写入
alter user workflow quota unlimited on workflow;--此语句是将用户workflow在workflow表空间下的配额设置成无限制.
3:利用导入工具命令行来生成以及log日志文件即可.(首先得先将数据给导出---EXP)
IMP user/password@database file=D:/file_name.dmp log=D:/file_name_imp.log fromuser=exp_username touser=imp_username;
通过以上操作即可完成将表空间进行统一,
方案二:
另外如果你已经在没有运行以上命令时就已将数据给导入后还可通过alter方式来对表以及索引进行表空间规划.
1:先通过:SELECT 'ALTER INDEX '||INDEX_NAME||' REBUILD TABLESPACE tablespace_name;' FROM USER_INDEXES;语句来得到一个SQL脚本文件.
2:然后在pl/sql developer工具中执行操作即可.
3:当在执行过程中可能会遇到一些不能重新编译的情况,这时可以将这些暂不能编译的放在最后面执行即可.
更改表的所属表空间[b]:alter table a move tablespace tbsname;
补充:移动完毕后需重建索引.
alte index idx_name rebuild tablespace tablespace_name;[/b]
补:在实际应用中遇到了另一种情况就是当按上面第一种方案进行数据导入以后所有的信息全在一个表空间下,这样对于表空间规划不太合理,为了进一步对表空间的规划,又在第一种方案下采用方案二对表空间进行规划,当执行方案二中得到的SQL语句执行时会报出:ORA-01950 no privileges on tablespace 'workindex'这样错误提示,这只要是由于方案一中的alter命令所造成的,可能通过:alter user workflow quota unlimited on workinedx;语句来使workflow用户在workindex表空间上也具有无限制配额即可.然后再执行方案二中得到的alter的SQL脚本!
方案一:
1.需要生成比较大的表空间(约1G的空间)。
2.使用命令将表空间进行统一。
revoke unlimited tablespace from workflow;--将workflow表空间无限制配额先废除.
alter user workflow quota 0 on users;--此语句是将用户workflow在users表空间下的配额设置为0.让其无法写入
alter user workflow quota unlimited on workflow;--此语句是将用户workflow在workflow表空间下的配额设置成无限制.
3:利用导入工具命令行来生成以及log日志文件即可.(首先得先将数据给导出---EXP)
IMP user/password@database file=D:/file_name.dmp log=D:/file_name_imp.log fromuser=exp_username touser=imp_username;
通过以上操作即可完成将表空间进行统一,
方案二:
另外如果你已经在没有运行以上命令时就已将数据给导入后还可通过alter方式来对表以及索引进行表空间规划.
1:先通过:SELECT 'ALTER INDEX '||INDEX_NAME||' REBUILD TABLESPACE tablespace_name;' FROM USER_INDEXES;语句来得到一个SQL脚本文件.
2:然后在pl/sql developer工具中执行操作即可.
3:当在执行过程中可能会遇到一些不能重新编译的情况,这时可以将这些暂不能编译的放在最后面执行即可.
更改表的所属表空间[b]:alter table a move tablespace tbsname;
补充:移动完毕后需重建索引.
alte index idx_name rebuild tablespace tablespace_name;[/b]
补:在实际应用中遇到了另一种情况就是当按上面第一种方案进行数据导入以后所有的信息全在一个表空间下,这样对于表空间规划不太合理,为了进一步对表空间的规划,又在第一种方案下采用方案二对表空间进行规划,当执行方案二中得到的SQL语句执行时会报出:ORA-01950 no privileges on tablespace 'workindex'这样错误提示,这只要是由于方案一中的alter命令所造成的,可能通过:alter user workflow quota unlimited on workinedx;语句来使workflow用户在workindex表空间上也具有无限制配额即可.然后再执行方案二中得到的alter的SQL脚本!
相关文章推荐
- oracle中修改已有字段数据类型为clob的方法以及ssh框架中如何保存clob字段
- oracle中如何对字符串进行去除空格的方法
- Oracle11完全卸载方法 deinstall.bat如何用以及如何删除oracle注册表
- objective-c中对象所有权的内存管理(关于set,get方法),以及如何使用@property来进行简易操作(九)
- 如何将XML与O“.NET研究”BJECT进行相互转换(泛型以及通用方法)
- 直接使用SQL操作Oracle空间数据的原理以及配置方法
- objective-c中对象所有权的内存管理(关于set,get方法),以及如何使用@property来进行简易操作(九)
- oracle中如何对字符串进行去除空格的方法
- 如何将XML与OBJECT进行相互转换(泛型以及通用方法)
- 深入探讨:Oracle中如何查询正锁表的用户以及释放被锁的表的方法
- 为什么要重写hashCode()方法和equals()方法以及如何进行重写
- Oracle11完全卸载方法 deinstall.bat如何用以及如何删除oracle注册表
- 直接使用SQL操作Oracle空间数据的原理以及配置方法
- 为什么要重写hashCode()方法和equals()方法以及如何进行重写
- (转)oracle中如何对字符串进行去除空格的方法
- 如何进行ibatis动态多条件组合查询以及模糊查询(oracle,mysql)
- oracle如何查看表空间大小 以及表空间剩余大小 还有如何增大表空间
- (转)oracle中如何对字符串进行去除空格的方法
- 如何进行ibatis动态多条件组合查询以及模糊查询(oracle,mysql)
- objective-c中对象所有权的内存管理(关于set,get方法),以及如何使用@property来进行简易操作