Help -- the Oracle log shows this message:
Oracle instance running on a system with low open file descriptor limit. Tune your system to increase this limit to avoid severe performance degradation.
Environment: SunOS 5.8 Generic_108528-24 sun4u sparc SUNW,Ultra-Enterprise-10000 Oracle 9.20
You will get this message when one of two conditions is met, either your server is not configured properly for the large number of datafiles in your database, or you have defined MAXDATAFILES to be a number larger than your server is configured for. Too see how many files your server is configured for, issue the following:
oracle_ora9i% ulimit -a time(seconds) unlimited file(blocks) unlimited data(kbytes) unlimited stack(kbytes) 8192 coredump(blocks) unlimited nofiles(descriptors) 256 vmemory(kbytes) unlimited
Notice the "nofiles" line. This is the number of file descriptors your system is configured for. To see the MAXDATAFILES parameter, dump your control file to trace and look at the resulting trace file in USER_DUMP_DEST.
If you decide to decrease MAXDATAFILES, then you'll have to recreate your control file with a lower number. You'll want this number to be higher than your number of database datafiles though. Personally, I'd rather do the next option than recreate my control file.
If you decide to reconfigure your kernel, you will have to modify the values for rlim_fd_max (the hard limit) and/or rlim_fd_cur (the soft limit) in /etc/system and reboot your server. Make sure you work with your sys admin on this procedure.
Dig Deeper on Oracle database design and architecture
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.