首先要知道本地管理表空间和字典管理表空间的区别。
字典管理表空间每当表或其他对象需要扩大的时候都检查其数据字典以确保有可用的空间分配给对象,然后给对象分配一个新区段并更新其可用空间信息。
本地管理表空间保存数据文件本身的空间管理信息,而且表空间自动跟踪每个数据文件块的可用或已用状态。
在事务比较多的数据库中显然字典管理每次插入数据时都会检查数据字典,这就使得数据库性能有所损耗。
转换:
第一种方法---命令方式转移。
首先你要新建一个oracle表空间,在oracle 10g以后默认都是采用本地管理表空间的。
对于表空间的转移使用命令
ALTER TABLE temp MOVE TABLESPACE new_temp;
对于索引你需要重建
ALTER TABLE index REBUILD TABLESPACE new_index;
或许你可以采用oracle提供的PL/SQL数据包中的DBMS_SPACE_ADMIN。
显然上面的方法并不适用于对system表进行转换,因为你不能建立2个同名的system表。
在转换system表前,你必须把所有的其他表空间转换为本地管理。
EXECUTE dbms_space_admin.tablespace_migrate_to_local("tablespace"); ---转行表空间
然后同样的方法将system表空间也进行转换.
EXECUTE dbms_space_admin.tablespace_migrate_to_local("system");
使用这种方法很好,但是它建立的表空间没有automatic segment space managerment选项,所有字典管理表空间都是用默认手动段空间管理,而且在转换为本地管理的表空间是不能进行修改.
还有一个缺点,就是表空间如果存在空间碎片的话,此方法也不能解决碎片问题.
所以oracle建议你,采用第一种方法.
分享到:
相关推荐
其三、职业方向多:Oracle数据库管理方向、Oracle开发及系统架构方向、Oracle数据建模数据仓库等方向。 四、 如何学习 认真听课、多思考问题、多动手操作、有问题一定要问、多参与讨论、多帮组同学 五、 体系结构 ...
表空间合并(Coalescing)是指在表空间中将多个小的区合并为一个大的区的过程,以减少碎片化,优化磁盘空间使用效率和查询性能。 #### 19. 临时表空间与永久表空间区别 临时表空间专门用于存储临时数据,如排序...
11. 表空间(A)是Oracle数据库的逻辑存储单元,包含数据文件和操作系统资源。 12. 表(D)包含Oracle数据库中的所有数据,是基本的数据库对象。 13. 索引(B)是加速特定表数据访问的数据结构。 14. 触发器(D)...
在`SELECT`子句中使用`*`会使得Oracle在解析过程中将`*`转换成所有的列名,这个过程是通过查询数据字典完成的,会消耗额外的时间。为了避免这种情况,应当明确指定所需的列名。 #### 四、减少访问数据库的次数 ...
在`SELECT`子句中使用通配符*会使Oracle在解析过程中将*转换成所有列名,这一过程需查询数据字典完成,耗时较多。因此,明确指定所需的列可以显著提升查询效率。 #### 4. 减少访问数据库的次数 Oracle在执行SQL...
- **问题分析**:Oracle在解析过程中会将`*`转换为表中的所有列名,这需要通过查询数据字典来完成,增加了查询时间。 - **解决方案**:明确指定所需的列名,减少不必要的列加载。 #### 二、高级优化策略 4. **...
本篇文章主要探讨了如何将varchar类型的数据转换为int类型,以便在排序时避免因字符顺序引起的错误结果。 首先,当数据库中的ID字段被设置为varchar类型时,如果不进行类型转换,直接使用`ORDER BY`进行排序,可能...
在Export过程中,数据库对象和数据被转换为二进制格式并写入dump文件。在Import过程中,这些信息会被解析并重新插入到目标数据库中。Import工具在处理dump文件时,会执行必要的DDL语句来创建对象,然后插入数据。 ...
ORACLE SQL*加载程序(SQL*Loader)是Oracle提供的用于将外部数据文件加载到数据库表中的工具。它是一种数据转换工具,支持数据的导入、迁移和整合,特别适用于数据量大和复杂数据结构的情况。SQL*Loader能够有效地...
在SELECT子句中使用'*'会降低效率,因为Oracle在解析时会将'*'替换为所有列名,这个过程需要查询数据字典,从而增加了额外的处理时间。 3. 优化GROUP BY子句 应该在GROUP BY子句之前过滤掉不需要的记录。这样做可以...
19. 数据类型转换是在简单变换中将一种类型数据转换为另一种类型的过程。 20. 数据转换的一般方法包括程序编码。 21. 数据转换需求固定且频繁时,常用程序编码作为数据转换方法。 22. 发掘型分析实现的是思考模型,...
在`SELECT`子句中使用通配符`*`代替具体列名会导致Oracle在解析过程中将`*`转换为表的所有列名,这一过程需查询数据字典,消耗额外时间。为提高查询效率,应明确指定所需的列名,避免不必要的列加载,从而减少查询...
- 示例:从“employees”表中将John Doe的年龄改为35岁。 ```sql UPDATE employees SET age = 35 WHERE name = 'John Doe'; ``` - **DELETE语句**:删除现有数据。 - 示例:从“employees”表中删除年龄小于25...
- **表的自我联合**:展示了如何在查询中将同一个表当作两个不同的表来使用。 #### 第七天:子查询 - **建立一个子查询**:介绍了子查询的基本概念和使用方法。 - **在子查询中使用汇总函数**:说明了如何在子查询...
DG 主备库切换是指在 Oracle 数据库中将主库切换到备库的过程,以确保数据库的高可用性。这种切换可以是用户主动切换,也可以是主库出现故障,强行切换。 切换过程中,主库的 Switchover_Status 值会发生变化,表示...