ORA-01658: 无法为表空间 USERS 中的段创建 INITIAL 区
IMP-00017: 由于 ORACLE 错误 20000, 以下语句失败:
查看表空间
select b.file_name 物理文件名, b.tablespace_name 表空间, b.bytes / 1024 / 1024 大小M, (b.bytes - sum(nvl(a.bytes, 0))) / 1024 / 1024 已使用M, substr((b.bytes - sum(nvl(a.bytes, 0))) / (b.bytes) * 100, 1, 5) 利用 from dba_free_space a, dba_data_files b where a.file_id = b.file_id group by b.tablespace_name, b.file_name, b.bytes order by b.tablespace_name;
更改表空间大小SQL:
alter tablespace space add datafile 'd:\GFCDA\USERS.dbf' size 200m;
我们知道ORACLE的最小的物理单位是BLOCK,数据文件的组成的最终形式也是block,那么数据文件的大小限制就应该是block数量的限制,那么究竟block的数量有何限制,这里就要提到一个ORACLE内部术语DBA(此dba非数据库管理员,而是data block address)
Extent 0 : L1 dba: 0x01800009 Data dba: 0x0180000d
Extent 1 : L1 dba: 0x01800089 Data dba: 0x0180008b
Extent 2 : L1 dba: 0x01800109 Data dba: 0x0180010b
Extent 3 : L1 dba: 0x01800189 Data dba: 0x0180018b
Extent 4 : L1 dba: 0x01800209 Data dba: 0x0180020b
Extent 5 : L1 dba: 0x01800289 Data dba: 0x0180028b
dba是以16进制表示的(因为有0X),注意看一共用了8为的16进制,换算成二进制就是32bit,而其中DBA又用10位来记录file_id,22bit来记录block_id,那么在一个数据文件中最多能够记录2^22个block,如果一个block_size=8k,那么这个数据文件的最大值就是8K*2^22,也就是32G,所以数据文件的最大值应该取决于块大小,而oracle块最大值是32K,也就是32G*4=128G。
SQL> select power(2,22)*8/1024/1024 from dual;
POWER(2,22)*8/1024/1024
-----------------------
32
SQL Server的数据存储的最小单位是页(Page),每个页有8KB的空间,8个页组成扩展(Extents),数据库进行空间管理的最小单位为区(extents)。 SQL Server 2000数据库文件大小(数据、日志)最大可以支持 32 TB 的文件
相关推荐
- 为每个回滚表空间创建多个回滚段。 - 示例命令如下: - `CREATE ROLLBACK SEGMENT rb1 STORAGE(INITIAL 50K NEXT 250K) tablespace rbs;` - `CREATE ROLLBACK SEGMENT rb2 STORAGE(INITIAL 50K NEXT 250K) ...
这段代码创建了一个名为`EMR5`的表空间,并指定了数据文件的位置为`E:\app\oradata\orcl\EMR5.dbf`,初始大小为100MB,并且设置了自动扩展的功能,每次扩展50MB,最大可无限扩展。 - **创建带有默认存储参数的永久...
2. **创建数据库启动参数文件**: 手工创建文件`D:\Oracle\Ora81\DATABASE\inittest.ora`,其内容为`IFILE='D:\Oracle\admin\test\pfile\inittest.ora'`。这个文件将被用来指定数据库的启动参数文件的位置。 #### ...
首先,使用 `SELECT file_id, block_id, blocks, bytes FROM sys.dba_free_space WHERE tablespace_name='<users>'` 查询可用空间,然后检查表空间参数,例如 `SELECT INITIAL_EXTENT, NEXT_EXTENT, MIN_EXTENTS, ...
3. **USERS表空间**:创建一个用于普通用户的表空间。 ``` CREATE TABLESPACE USERS DATAFILE 'D:\Oracle\oradata\test\users01.dbf' SIZE 128M REUSE AUTOEXTEND ON NEXT 1280K MINIMUM EXTENT 128K DEFAULT ...
每个数据文件与一个特定的表空间相关联,并且可以包含多个数据段(segments)。扩展名为 `.dbf` 的文件是Oracle的数据文件。 - **重做日志文件(Redo log files)**: 记录对数据库所做的所有更改,用于在系统崩溃时...
这个错误意味着回滚段(Rollback Segment)在指定的表空间(Tablespace)中已满,无法再扩展。回滚段是Oracle用来存储事务回滚信息的结构,当执行大事务或并发操作时,如果现有回滚段不足以容纳新的信息,就会触发此...
组成:表空间、段、区、块的组成层次 六、 oracle安装、卸载和启动 硬件要求 物理内存:1GB 可用物理内存:50M 交换空间大小:3.25GB 硬盘空间:10GB 安装 1. 安装程序成功下载,将会得到如下2个文件: ...
例:将test表中的Count列宽度加长为10个字符 sql>alter atble test modify (County char(10)); b、将一张表删除语句的格式如下: DORP TABLE 表名; 例:表删除将同时删除表的数据和表的定义 sql>drop table ...
10. **存储参数计算**:如果db_block_size是8KB,且存储参数设置为(initial 8k next 8k pctincrease 50 minextents 3),第三个区的大小是16KB。因为每个区的初始大小是8KB,pctincrease 50意味着每次增长50%,所以第...
10. **存储参数计算**:在指定`db_block_size=8KB`,`initial 8k`, `next 8k`, `pctincrease 50`, `minextents 3`的情况下,第三个区的大小是16KB,因为每次增长是初始大小的百分比增加。 11. **查看归档模式**:`V...
CREATE STREAM stream_queue (sequence_id NUMBER) TABLESPACE users STORAGE (INITIAL 1M NEXT 1M); ``` ###### 3.7.2 创建Backup流队列 在从数据库上创建相应的流队列。 ##### 3.8 创建捕获进程 捕获进程负责...