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.
-----------------------------------------------------------------------------------------------------------------
If you have ever asked yourself these questions, this is the book for you. What is the meaning of life? Why do people suffer? What is in control of my life? Why is life the way it is? How can I stop suffering and be happy? How can I have a successful life? How can I have a life I like to have? How can I be the person I like to be? How can I be wiser and smarter? How can I have good and harmonious relations with others? Why do people meditate to achieve enlightenment? What is the true meaning of spiritual practice? Why all beings are one? Read the book for free here.