转自:http://www.360doc.com/content/10/0712/09/1265417_38411103.shtml
很不幸,你遇到了一个很难碰到的问题。很不幸,你现在一定心急火燎。能遇到这种错误的人绝不是一般人。那么你一定不是一个凡人,you are special。
呵呵,不和你开玩笑了。现在就分析这个问题的原因。
oracle支持的文件大小和他的db_block_size和db_block的数量决定的。在oracle 9i以前,oracle 的db_block的数量最大只能为2的22次方个,而我们通过oracle默认的模板建的数据库实例的db_block_size是8K。所以oracle 9i以前支持的单个文件的默认大小是32GB。虽然在oracle 11g没有这个限制,但是它默认的能力也是这么多。所以我在前面讲如果你遇到这个问题,说明你不是一般人,你在创建一个单个文件超过32GB的表空间。
那么怎么解决这个问题呢,我这里提供三个参考方案,你使用选择其中对你合适的,呵呵:
一)不要创建单个文件超过32GB的表空间
如果你创建的表空间超过32GB,请把这个表空间存储为多个数据文件,每个文件不大于32GB。这样,就可以成功的创建表空间。
二)扩大db_block_size
根据oracle的算法,我们很容易想到这个解决方法。数目衡定,但是db_block_size可以更改(db_block_size的最大大小为32KB)。如果把db_block_size扩大到32KB(32位系统好像是16KB,我在Red Hat 企业版的操作系统创建32KB的block_size失败。),那么我们的系统就可以支持单个数据文件最大128GB。
这个方案听起来好像很迷人,但是实际上并不是那么回事。因为要修改db_block_size并不是很容易的事。因为这个db_block_size在创建实例的时候就要指定。而且不能通过简单修改参数来指定db_block_size。创建更大的db_block_size的数据库实例我会在以后讲。
三)创建bigfile表空间
在oracle11g中引进了bigfile表空间,他充分利用了64位CPU的寻址能力,使oracle可以管理的数据文件总量达到8EB。单个数据文件的大小达到128TB,即使默认8K的db_block_size也达到了32TB。
创建bigfile的表空间使用的sql语句也很简单。
create bigfile tablespace...
后面的语句和普通的语句完全一样。
需要注意的是使用bigfile表空间,他只能支持一个数据文件。也就是说这个文件的最大大小就是表空间最大大小,你不可能通过增加数据文件来扩大该表空间的大小。所以oracle说,如果你的这个文件没有剩余空间的话,你还是不要使用bigfile表空间了,这个表空间你没有扩展的余地了,呵呵。
oracle也同样告诉你了,建议你使用lvm或者别的软件管理磁盘,以使你的空间可以动态扩大。呵呵,先讲到这里,如果还有不明白的,请告诉我。
http://www.blogjava.net/decode360/archive/2009/08/27/292754.html
这里也有说明。
分享到:
相关推荐
表空间是Oracle数据库中用于存储数据文件的逻辑单位,当一个表空间的空间被占满,就无法执行任何需要额外空间的操作,例如插入新数据、创建新表或扩展已存在的表。 描述中提到的解决方案主要涉及两个方面:一是增加...
### Oracle 10g启动后报ORA-16038错误的解决方法 #### 错误概述 在启动Oracle 10g数据库时遇到ORA-16038错误,该错误通常与归档日志操作有关。具体错误信息为: ``` ORA-16038: log 1 sequence #230 cannot be ...
Oracle 数据库中,表空间不足是非常常见的问题,主要体现在两个方面:一是原表空间大小不够,二是表空间自动扩展功能未开启。今天我们就来详细讨论如何解决ORA-01654处理表空间不足问题。 查看表空间使用情况 当...
在Oracle数据库管理过程中,遇到ORA-12518错误是较为常见的问题之一。此错误通常发生在客户端试图连接到数据库服务器的过程中,当监听器无法将客户端连接顺利地移交给服务器进程或调度进程时触发。本文旨在详细介绍...
解决ORA-00700错误之内存管理和swap空间优化 在Oracle数据库中,ORA-00700错误是指内存不足或swap空间不足,导致数据库无法正常运行。解决此错误需要了解Linux系统的内存管理机制和swap空间的使用情况。 内存管理...
### Oracle 11g 错误码大全解析 #### ORA-00001: 违反唯一约束条件 **描述**: 当尝试插入或更新一个已经存在的唯一键值时触发此错误。确保数据符合唯一性约束。 **解决方法**: - 检查并修改数据,确保不会重复...
标题 "ORA-01688:unable to extend table name" 描述了一个常见的Oracle数据库错误,这通常发生在尝试扩展表空间但空间不足时。错误消息显示 "name partition NAME by NUM in tablespace NAME2010-11-10 16:04:25...
5.自动识别块大小,也可指定块大小,在表空间块大小不一致的情况下,可自动识别每个表空间的原始块大小。自动根据某些参数组合原始的数据实例及其数据文件。 6.本软件只组合 系统表空间以及用户表空间,不对 日志...
4. **Oracle 10g的自动内存管理**: 自从Oracle 10g引入自动内存管理后,SGA的动态组件如共享池可以自动扩展,减少出现ORA-04031的机会。当SGA_TARGET参数设置为非零值时,自动内存管理启用。通过`v$sga_dynamic_...
Oracle 11g中,ora-28056错误是由于写入审核记录到Windows事件日志失败所致。该错误通常会导致数据库不可用,无法连接到数据库。 解决方法: 1. 打开事件查看器(Event Viewer):在 Windows 中,点击“开始”菜单...
在这里,我们可以看到日志存放路径是 /backup/flash_recovery_area,空间大小是 160g。然后,我们需要登录到数据库服务器,查看文件路径 /backup/flash_recovery_area 删除该路径下的 archivelog 文件里的日志文件。...
ORA-00257错误通常发生在Oracle数据库中,它是一个与存储空间相关的错误,具体表现为“表空间或数据文件的物理结构不正确”。然而,根据文档中的描述,该错误在此场景下更多地关联到归档日志管理和Flash Recovery ...
### Oracle 9i 全备份导入到 11g 的处理方法 #### 一、问题背景 当将Oracle 9i的数据全备份导入到Oracle 11g版本时,经常会遇到由于`db_block_size`参数不一致导致的导入失败问题。这种情况下,如果直接进行导入...
- **解决方法**:调整undo表空间的大小或配置。 - **ORA-01722: invalid number** - **含义**:输入的数值格式不正确。 - **解决方法**:检查并修正输入的数值。 #### 六、文档使用须知 - **版权信息**:文档受...
- **Undo太小**:Undo表空间的大小不足是触发ORA-01555的一个常见原因。如果Undo表空间不足以存储所有需要回滚的信息,或者保留的时间不够长,就可能导致前镜像被过早地清除。解决方案包括增加Undo表空间的大小,并...
### Oracle 11g在Linux 64位系统上的安装指南 #### 一、Oracle 11g简介 Oracle Database 11g是甲骨文公司(Oracle Corporation)推出的一款功能强大且高度可靠的企业级数据库管理系统。Oracle 11g在前代版本的基础...
这包括确保系统满足Oracle11g的最低硬件需求,如足够的内存(swap空间至少1.8GB)和磁盘空间(至少5GB用于Oracle安装)。此外,我们还将讨论如何配置固定IP地址、主机名以及设置网络参数,以确保Oracle的稳定运行。 ...
在Oracle数据库管理过程中,遇到ORA-00257错误是比较常见的问题之一。该错误通常出现在执行数据库恢复操作时,提示“recovery area not configured”,即恢复区域未配置。这意味着Oracle数据库无法找到或访问指定的...
9. **性能优化**:根据业务需求,可能需要调整内存分配、表空间大小、索引策略等以优化数据库性能。 10. **备份与恢复**:设置定期数据库备份计划,并了解如何在出现问题时进行数据恢复,这是数据库管理的重要部分...
Oracle 11g 图形创建实例、表表空间、dmp 导入命令详解 Oracle 11g 是一种关系型数据库管理系统,它提供了图形界面来创建实例、表表空间和导入 dmp 文件。本文将详细讲解如何使用 Oracle 11g 图形界面创建实例、...