Oracle数据库 SYSTEM.DEF$_AQCALL表空间不足
ORA-00604: error occurred at recursive SQL level 1
ORA-01653: unable to extend table SYSTEM.DEF$_AQCALL by 1024 in tablespace SYSTEM
今天Sofia在wcms后台修改某ua记录时发生了上述异常,第一句ORA-00604是概括性的说明,第二句才是重点:
在表空间SYSTEM中,表SYSTEM.DEF$_AQCALL大小无法扩展。
解决过程:
1. 确定原因,查询知道SYSTEM.DEF$_AQCALL是Oracle中用来记录复制队列的系统表,只要发生操作,即会往该表中写入数据,因此随着时间的推移,其中数据体积会不断变大,AnyMusic在移动的服务器上的WCMS系统在运行了几年之后,2G的表空间即被占满,可见在电信级的数据量得需要多大的服务器体积。
而在默认的Oracle配置中,SYSTEM.DEF$_AQCALL是存在于系统表空间SYSTEM中的。因此SYSTEM会随着时间的推移而越来越庞大。
2. 寻找解决方案,最后通过扩大SYSTEM表空间的大小解决(扩大了2G)。但这显然不是最佳解决方案,最好还是能在Oracle安装之初就为SYSTEM.DEF$_AQCALL分配单独的表空间进行存储。
最后给出扩展表空间的语句:
alter tablespace SYSTEM add datafile 'd:/www/data/oradata/system02.dbf' size 2g;
相关文档:
如何远程判断Oracle数据库的安装平台
select * from v$version;
查看表空间的使用情况
select sum(bytes)/(1024*1024) as free_space,tablespace_name
from dba_free_space
group by tablespace_name;
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES ......
数据库名(DB_NAME)、实例名(Instance_name)、以及操作系统环境变量(ORACLE_SID)
在ORACLE7、8数据库中只有数据库名(db_name)和数据库实例名(instance_name)。在ORACLE8i、9i中出现了新的参数,即数据库域名(db_domain)、服务名(service_name)、以及操作系统环境变量(ORACLE_SID)。这些都存在于同一个数据库中的标识,用于� ......
下载方法:在下面的连接上点击右键,选择使用迅雷下载。使用别的下载工具无法下载。
oracle 10.2.0.4 补丁下载(适用于所有操作系统):
ftp://updates.oracle.com/6810189/p6810189_10204_AIX5L.zip
ftp://updates.oracle.com/6810189/p6810189_10204_HPUX-IA64.zip
ftp://updates.oracle.com/6810189/p6810189_10204 ......
1.LOWER(str) 强制小写
2.UPPER(str) 强制大写
3.INITCAP(str) 每个单词首字母大写
示例:
SQL> select initcap('my_boy') from dual; --返回"My_Boy"
注意:单词之间用下划线("_")分割
4.CONCAT(str1,str2)连接函数,连接str1和str2字符串
5.SUBSTR(string,a[,b])返回string的一部分,a和b以字符为单位。从� ......