You got the below error when starting up the Oracle database.
SQL> STARTUP
ORA-27125: unable to create shared memory segment
Linux-x86_64 Error: 28: No space left on device
Additional information: 3760
Additional information: 4278190080
This occurs when the Kernel parameter kernel.shmall is too small.
Follow the steps below to fix the problem.
1. Determine the page size.
> getconf PAGE_SIZE
4096
2. Determine the Total System Global Area (SGA).
SQL> SHOW SGA
Total System Global Area 6442450944 bytes
Fixed Size 2938792 bytes
Variable Size 3892316248 bytes
Database Buffers 2533359616 bytes
Redo Buffers 13836288 bytes
3. Calculate the recommended value for shmall.
shmall = SGA / PAGE_SIZE
With SGA = 6 GB and PAGE_SIZE = 4096, the shmall is
shmall = 6 * 1024 * 1024 * 1024 / 4096 = 1572864
4. Update the kernel.shmall parameter.
Login the Linux machine as root.
> vi /etc/sysctl.conf
Scroll down to find kernel.shmall and change it's value to 1572864.
* If you could not find the SGA at step 2, you may try to double the current value of shmall.
5. Apply the change.
> sysctl -p
6. Verify the value.
> cat /proc/sys/kernel/shmall
1572864
7. Login to the Oracle database as sysdba and start the database.
SQL> STARTUP
ORACLE instance started.
No comments:
Post a Comment