您的位置:首页 > 其它

空间的作用和用法

2007-05-17 16:59 225 查看
对于一个用户系统默认的会建立。TEMP UNDOTABS USER SYSTEM这几个表空间。那请问这几个表空间各有什么

作用呢?

当学了ORACLE的人都会说。TEMP表空间是放处理的临时数据的,比如排序操作。UNDOTABS表空间是数据恢复时用到。

USER表空间是存班实数据的。

但是大家有谁能真正说明清楚各个表空间,在使用那些SQL语句是,会对那一个表空间消耗磁盘空间呢?

比如我现在知道的只是,当SQL语句中有SORT之来排序的语句时,会对TEMP表空间时的磁盘产生消耗。

USER表空间是存班实数据的,多以,对数据的DML操作会影响此空间。
UNDOTABS表空间是为了保持读一致性的,所以一般在对数据的DML操作会在此空间保存旧的数据。

update table_test set description='explain for tablespace' where name='yjip';
当你发出这条语句给oracle后, oracle会用到这些tablespace:
1. where条件如果引用了index or other条件导致产生排序操作, 这时会用到TEMP tablespace;
2. oracle收到这条语句后,会申请一块undo块来存放原先的数据,以便rollback时用,用的是undo tablespace;
3. oracle收到这条语句后,会申请一块redo块来存放所需更新的数据,以便redo时用,用的是redo tablespace;
4. SYSTEM tablespace是系统保留用的,最好不要用它.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: