Oracle 10g bigfile表空间、smallfile 表空间
smallfile tablespace设置不同大小的db_block_size时数据文件允许的最大大小
db_block_size=2KB,2KB*4M=8192M 8G
db_block_size=4KB,4KB*4M=16384M 16G
db_block_size=8KB,8KB*4M=32768M 32G 8*1024*4M=8*4G=32G
db_block_size=16KB,16KB*4M=65536M 64G
db_block_size=32KB,32KB*4M=131072M 128G
bigfile tablespace设置不同大小的db_block_size时数据文件允许的最大大小
db_block_size=2KB,2KB*4G= 8T
db_block_size=4KB,4KB*4G= 16T
db_block_size=8KB,8KB*4G= 32T 8*1024*4G=8*4TB=32TB
db_block_size=16KB,16KB*4G= 64T
db_block_size=32KB,32KB*4G=128TB
____________________________________________________________________________________________________________
- Oracle 10g bigfile表空间简介
- 01. A Bigfile 表空间包含一个非常大的数据文件
- 02. SMALLFILE表空间和BIGFILE表空间可以在同一个数据库共存
- 1.创建一个bigfile表空间
- SQL> CREATE BIGFILE TABLESPACE big01
- datafile '/oracle/oradata/orcl/big01.dbf' size 50M;
- Tablespace created.
- 1.2 查看数据库所有表空间bigfile属性,BIG01为bigfile表空间
- SQL> select TABLESPACE_NAME, BIGFILE from DBA_TABLESPACES;
- TABLESPACE_NAME BIGFILE
- ------------------------------ --------
- SYSTEM NO
- UNDOTBS1 NO
- SYSAUX NO
- TEMP NO
- USERS NO
- TEST NO
- BIG01 YES
- 1.3 表空间TEST为SMALLFILE表空间,现在做一个测试resize TEST表空间
- SQL> alter tablespace test resize 20M;
- alter tablespace test resize 20M
- *
- ERROR at line 1:
- ORA-32773: operation not supported for smallfile tablespace TEST
- 由此可见small不支持表空间的resize,当然我们可以通过alter database reszie datafile 来实现smallfile表空间某个数据文件的resize
- 2.bigfile表空间文件
- bigfile表空间只能包含一个文件,它可以非常大,我们不能对bigfile表空间增加数据文件
- SQL> alter tablespace big01 add
- 2 datafile '/oracle/oradata/orcl/big02.dbf' size 10M;
- alter tablespace big01 add
- *
- ERROR at line 1:
- ORA-32771: cannot add file to bigfile tablespace
- 3.BIGFILE表空间的寻址
- bigfile表空间的数据文件大小远远大于smallfile的表空间,其优势得益于Oracle 10g新的寻址方案
- 一个rowid寻址存储在传统的SMALLFILE表空间中的对象使用其中的12个字节
- 例: rowid寻址
- . 相对File# 3个字节, Block#需要6个字节
- 相同的rowid寻址在bigfile表空间只需要9个字节,9个字节存储block#在唯一的文件中
- bigfile 表空间只有一个数据文件,因此不必需要另外3个字节的相关连file#
- 新寻址方案
- 允许在一个单独的数据文件里最多4G个的数据块,
- 数据文件大小blocksize 2K的数据文件最大支持8TB,blocksize 32K的数据文件最大支持到128TB
- 4.bigfile表空间的优势
- 只有一个数据文件的表空间更方便管理,因此唯一的表空间就变成了管理单元
- 修改表空间的扩展
- SQL> alter tablespace big01 autoextend on;
- Tablespace altered.
- SQL> alter tablespace big01 autoextend off;
- Tablespace altered.
- 在线修改bigfile表空间大小
- SQL> alter tablespace big01 resize 2M;
- Tablespace altered.
- smallfile表空间相对灵活性就不如bigfile表空间
- SQL> select TABLESPACE_NAME, BIGFILE from DBA_TABLESPACES where TABLESPACE_NAME='TEST';
- TABLESPACE_NAME BIG
- ------------------------------ ---
- TEST NO
- SQL> alter tablespace test resize 20M;
- alter tablespace test resize 20M
- *
- ERROR at line 1:
- ORA-32773: operation not supported for smallfile tablespace TEST
- 5.bigfile表空间支持以下存储管理方式
- --> ASM (Automatic Storage Management)
- --> a logical volume manager supporting striping/RAID
- --> dynamically extensible logical volumes
- --> Oracle Managed Files (OMF)
- 6. 修改数据库创建表空间的bigfile类型
- SQL> select * from database_properties
- where property_name='DEFAULT_TBS_TYPE';
- 当前数据库创建表空间的默认方式是SMALLFILE表空间
- PROPERTY_NAME PROPERTY_VALUE DESCRIPTION
- ------------------------------ ---------------------------------------- ------------------------------
- DEFAULT_TBS_TYPE SMALLFILE Default tablespace type
- 更改数据库创建表空间为BIGFILE表空间
- SQL> ALTER DATABASE SET DEFAULT bigfile TABLESPACE;
- Database altered.
- SQL> CREATE TABLESPACE big02
- datafile '/oracle/oradata/orcl/big02.dbf' size 10M;
- Tablespace created.
- SQL> select TABLESPACE_NAME, BIGFILE from DBA_TABLESPACES;
- TABLESPACE_NAME BIG
- ------------------------------ ---
- SYSTEM NO
- UNDOTBS1 NO
- SYSAUX NO
- TEMP NO
- USERS NO
- TEST NO
- BIG01 YES
- BIG02 YES
- 7. bigfile表空间比传统的smallfile表空间的启动,检查点和DBWR的操作更具有性能优势.
- 查看数据库文件的文件号和相对文件号
- SQL> select file_name, file_id, relative_fno from dba_data_files;
- FILE_NAME FILE_ID RELATIVE_FNO
- ------------------------------------------------------------ ---------- ------------
- /oracle/oradata/orcl/big01.dbf 8 1024
- /oracle/oradata/orcl/big02.dbf 9 1024
- /oracle/oradata/orcl/users01.dbf 4 4
- /oracle/oradata/orcl/sysaux01.dbf 3 3
- /oracle/oradata/orcl/undotbs01.dbf 2 2
- /oracle/oradata/orcl/system01.dbf 1 1
- /oracle/oradata/orcl/system02.dbf 6 6
- /oracle/oradata/orcl/test02.dbf 7 7
- /oracle/oradata/orcl/test.dbf 5 5
- 注:bigfile 表空间只有一个数据文件,相对文件号为1024
- 8.bigfile 表空间、smallfile表空间
- SQL> SELECT TABLESPACE_NAME,bigfile from dba_tablespaces where tablespace_name='TEST';
- TABLESPACE_NAME BIG
- ------------------------------ ---
- TEST NO
- 1- 在smallfile表空间里从表的rowid中获取相对文件号的信息
- SQL> create table st0 (c number) tablespace TEST;
- Table created.
- SQL> insert into st0 values (1);
- 1 row created.
- SQL> select dbms_rowid.rowid_relative_fno(rowid,'SMALLFILE') from st0;
- DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID,'SMALLFILE')
- ------------------------------------------------
- 5
- 2- 在smallfile表空间里从表的rowid中获取相对文件号的信息 :
- SQL> create table bt01 (c number) tablespace big01;
- Table created.
- SQL> insert into bt01 values (1);
- 1 row created.
- SQL> select dbms_rowid.rowid_relative_fno(rowid,'BIGFILE') from bt01;
- DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID,'BIGFILE')
- ----------------------------------------------
- 1024
- 9.bigfile表空间支持alter table move
- 支持smallfile 表空间总的对象move至bigfile 表空间
- SQL> select name, bigfile, table_name from dba_tables t, v$tablespace v
- where table_name='T11' and v.name=t.tablespace_name;
- NAME BIG TABLE_NAME
- ------------------------------ --- ------------------------------
- USERS NO T11
- SQL> ALTER TABLE scott.emp MOVE TABLESPACE BIG01;
- Table altered.
- SQL> Select name, bigfile, table_name from dba_tables t, v$tablespace v
- 2 where table_name='T11' and v.name=t.tablespace_name;
- NAME BIG TABLE_NAME
- ------------------------------ --- ------------------------------
- BIG01 YES T11
- 特性限制
- ------------
- 新特性仅支持
- --> locally managed tablespaces 本地管理表空间
- --> with ASSM (automatic segment space management) ASSM管理表空间
Oracle 10g bigfile表空间、smallfile 表空间的更多相关文章
- oracle 10g 用dbms_xmlgen将数据表转成xml格式
oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle 10g 用dbms_xmlgen将数据表转成xml格式 oracle用plsql将sql查询的所有数据导出为xml
- Oracle 10g创建表空间的完整步骤详解
本文我们主要介绍了Oracle 10g创建表空间的完整步骤,包括表空间的创建与删除.为应用创建用户以及权限的授予等操作,希望能够对您有所帮助. AD:WOT2014:用户标签系统与用户数据化运营培训专 ...
- Oracle 高水位说明和释放表空间,加快表的查询速度
高水位的介绍 数据库运行了一段时间,经过一些列的删除.插入.更改操作有些表的高水位线就有可能和实际的表存储数据的情况相差特别多,为了提高检索该表的效率,建议对这些表进行收缩: 查找高水位线的表 查找表 ...
- Oracle 执行报错表空间或临时表空间不足,降低水位线方法
Oracle 执行语句插入临时表报表空间不足,在增加表空间到最大后依然报错,经分析应该为创建的临时表水位线未清除导致,查询降低水位线方法如下: 原文地址:http://blog.itpub.net/2 ...
- Oracle 释放过度使用的Undo表空间
故障现象:UNDO表空间越来越大,长此下去最终数据因为磁盘空间不足而崩溃: 问题分析:产生问题的原因主要以下两点: 1. 有较大的事务量让Oracle Undo自动扩展,产生过度占用磁盘空间的情况: ...
- 【Oracle】删除(释放)数据文件/表空间流程
oracle删除(释放)数据文件/表空间流程 生产环境:数据库里空间不足,niptest 表空间251G,只使用了17G 再alter database datafile '...../niptest ...
- Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理
摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■ 详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...
- oracle 创建用户和imp指定表空间
创建用户: 1,sqlplus sys/pwd as sysdba; 2, create user username identified by password; 3, grant dba,conn ...
- Oracle创建表空间和表
创建表空间和表ORACLE物理上是由磁盘上的以下几种文件:数据文件和控制文件和LOGFILE构成的oracle中的表就是一张存储数据的表.表空间是逻辑上的划分.方便管理的.数据表空间 (Tablesp ...
随机推荐
- lightoj1038
//Accepted 2860 KB 16 ms //概率 //对于n,假设n变成1的期望步数为p(n) //则p(n)=1/t*sum((1+p(d))) d|n //解得:p(n)=1/(t-1) ...
- hdu 2036
Ps: - -感觉这道题完全就是数学题...就是求知道每个顶点的坐标,然后求这个多边形的面积... 代码:#include "stdio.h"#include "std ...
- 数据结构《9》----Threaded Binary Tree 线索二叉树
对于任意一棵节点数为 n 的二叉树,NULL 指针的数目为 n+1 , 线索树就是利用这些 "浪费" 了的指针的数据结构. Definition: "A binary ...
- 一个简单的解决方法:word文档打不开,错误提示mso.dll模块错误。
最近电脑Word无故出现故障,无法打开,提示错误信息如下: 问题事件名称: APPCRASH应用程序名: WINWORD.EXE应用程序版本: 11.0.8328.0应用程序时间戳: 4c717ed1 ...
- 在用的vim插件
The-NERD-tree https://github.com/vim-scripts/The-NERD-tree 在vim中也可以有目录树的,如果要打开当前文件夹下的其他文件的话也可以很方便的进 ...
- CSS 实现:文字水平垂直居中
☊ [实现要求]: <div class="demo1"> 标题1111 </div> √ [实现]: 方案一:普通布局 .demo1 { text-ali ...
- SpringCloud学习后获取的地址
关于SpringCloud + Docker 学习地址: (1) https://yq.aliyun.com/articles/57265 (2) https://yq.aliyun.com/team ...
- 【题解】【BT】【Leetcode】Binary Tree Preorder/Inorder/Postorder (Iterative Solution)
[Inorder Traversal] Given a binary tree, return the inorder traversal of its nodes' values. For exam ...
- 安装GD库解决ThinkPHP 验证码Call to undefined function Think\imagecreate()出错
在php中imagecreate函数是一个图形处理函数,主要用于新建一个基于调色板的图像了,然后在这个基础上我们可以创建一些图形数字字符之类的,但这个函数需要GD库支持,如果没有开启GD库使用时会提示 ...
- IIS 7.0 下 httpMoudle 失效的问题
在web.config里配置了: <system.web> <httpModules> <add type="DevExpress.Web.ASPxClass ...