摘要:解决方法重新给文件夹赋权清内存正常启动数据库之后再查看调整的参数值,已经到了,这次再执行扩容表空间操作,就没问题了,呵呵。
这个Case当时发生的时候,我人在外地,项目经理操作解决的,整理一下分享给大家。
问题现象
我们需要给一个Oracle DB下的一个表空间进行扩容,但是执行扩容命令的时候,Oracle报出了如下错误:
ORA-00059 : maximum number of DB_FILES exceeded
报错解释:
DB_FILES 定义了oracle数据中数据文件的个数,当数据文件个数超过这个参数设定的值就会报ORA-00059这个错误。
问题处理
既然知道了报错的原因,那就开始从这里入手,先查一下现有的DB_FILES是多大:
用sys用户登陆到数据库服务器,执行show parameter db_files;
结果为300,跟实际的一对比,文件正好到300个,没法再往上扩了。
继续执行alter system set db_files=1000 scope=spfile;
此处修改参数为1000.
说明:这个参数设置的值的大小不会影响效率,只是单纯的控制数据文件的个数
新问题产生
$ sqlplus / as sysdba SQL> shutdown immediate; ORA-24324: service handle not initialized ORA-24323: value not allowed ORA-01089: immediate shutdown in progress - no operations are permitted SQL> shutdown abort; ORA-01031: insufficient privileges SQL> startup; ORA-10997: another startup/shutdown operation of this instance inprogress ORA-09968: unable to lock file HPUX-ia64 Error: 13: Permission denied Additional information: 23564
我们在重启库这步操作的时候,发现停不掉了,从报错上来看,貌似权限还被咱们给弄没了。
解决方法
1、重新给文件夹赋权
rx8640a#[/]chown -R oracle:oinstall /u01/app/oracle
2、清内存
$ ipcs -pmb
T ID KEY MODE OWNER GROUP SEGSZ CPID LPID Shared Memory: m 0 0x411c09d7 --rw-rw-rw- root root 348 943 943 m 1 0x4e240002 --rw-rw-rw- root root 61760 943 8401 m 2 0x412080da --rw-rw-rw- root root 8192 943 945 m 3 0x00a5c581 --rw------- sfmdb users 10469376 2407 2410 m 4 0x411c05e8 --rw------- root root 4096 2680 3291 m 5 0x06347849 --rw-rw-rw- root root 65544 2856 2883 m 21790726 0x00000000 --rw-r----- oracle oinstall 5926617088 10146 263 m 7 0x0c6629c9 --rw-r----- root root 17880696 2894 11235 m 32776 0x01200452 --rw-rw-r-- root root 4192 3238 3238 m 9 0x01200454 --rw-rw-r-- root root 4192 2924 2924 m 10 0x01200450 --rw-rw-r-- root root 4192 2938 2938 m 11 0x4918031b --rw-r--r-- root root 22912 2976 2972 m 12 0x01200448 --rw-rw-r-- root root 4192 2993 2993 m 13 0xa9240162 ----------- root root 1 3230 3232 m 98318 0x00000000 D-rw-r----- oracle oinstall 5939134464 10146 263 m 98319 0x00000000 D-rw-r----- oracle oinstall 8726282240 10146 263 m 98320 0x00000000 D-rw-r----- oracle oinstall 45056 10146 263
$ ipcrm -m 98318
$ ipcrm -m 98319
$ ipcrm -m 98320
3.正常启动数据库:
SQL> startup;
ORACLE instance started. Total System Global Area 2.0552E+10 bytes Fixed Size 2128632 bytes Variable Size 9439184136 bytes Database Buffers 1.1107E+10 bytes Redo Buffers 4259840 bytes Database mounted. Database opened.
之后再查看调整的参数值,已经到了1000,这次再执行扩容表空间操作,就没问题了,呵呵。
这里放一篇文章:http://www.linuxidc.com/Linux...
这个Case的关键环节就在于,执行ipcs查看当前系统资源占用的情况,上文中有3个oracle的进程,所以需要在系统层面清除掉才能正常启动数据库。
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/10217.html
摘要:解决方法重新给文件夹赋权清内存正常启动数据库之后再查看调整的参数值,已经到了,这次再执行扩容表空间操作,就没问题了,呵呵。 这个Case当时发生的时候,我人在外地,项目经理操作解决的,整理一下分享给大家。 问题现象我们需要给一个Oracle DB下的一个表空间进行扩容,但是执行扩容命令的时候,Oracle报出了如下错误:ORA-00059 : maximum number of DB...
摘要:问题九库控制文件扩展报错库的扩展报错,用的是裸设备,和还是原来大小,主库的没有报错,并且大小没有变,求解释。专家解答从报错可以看出,控制文件从个块扩展到个块时报错,而裸设备最大只支持个块,无法扩展,可以尝试将参数改小,避免控制文件报错。 链接描述引言 近期我们在DBASK小程序新关联了运维之美、高端存储知识、一森咖记、运维咖啡吧等数据领域的公众号,欢迎大家阅读分享。 问答集萃 接下来,...
摘要:建立一张表,名叫,表里有一个列,往里面一条中文数据。正确的验证结果是,我们通过服务端和客户端去查询这张表,这条中文数据都能够正常显示,这就证明我们的数据库安装成功了。 近期有一个新项目,需要在Linux下部署Oracle数据库,目前公司内很多数据库都已经成型了,新同事们可能涉及不到重新安装数据库的部分,想想还是有必要整理一下全过程,供大家参考学习。 一、环境准备:操作系统:RedHat...
摘要:建立一张表,名叫,表里有一个列,往里面一条中文数据。正确的验证结果是,我们通过服务端和客户端去查询这张表,这条中文数据都能够正常显示,这就证明我们的数据库安装成功了。 近期有一个新项目,需要在Linux下部署Oracle数据库,目前公司内很多数据库都已经成型了,新同事们可能涉及不到重新安装数据库的部分,想想还是有必要整理一下全过程,供大家参考学习。 一、环境准备:操作系统:RedHat...
摘要:文章首发于公众号一件风衣在编程中,我们常使用一组有顺序的数据来表示某个有意义的数据,这种一组元素的序列的抽象,就是线性表,简称表,是很多复杂数据结构的实现基础,在中,和就可以看作是线性表的实现。 文章首发于公众号一件风衣(ID:yijianfengyi) 在编程中,我们常使用一组有顺序的数据来表示某个有意义的数据,这种一组元素的序列的抽象,就是线性表,简称表,是很多复杂数据结构的实现基...
阅读 743·2023-04-26 01:47
阅读 2103·2021-11-23 09:51
阅读 1416·2021-11-18 13:19
阅读 528·2021-09-29 09:34
阅读 1858·2019-08-30 15:44
阅读 484·2019-08-30 15:44
阅读 2152·2019-08-30 15:44
阅读 1094·2019-08-30 14:06