TeamcenterKnowledge

System Administration > System maintenance > Maintaining the database server > Maintaining the Oracle database > Oracle semaphores (Linux systems)

Oracle use of Linux semaphores

Oracle uses semaphores to control concurrency between all the background processes (pmon, smon, dbw0, lgwr, reco, ckpt, and oracle shadows) and to control communication between the user process and shadow process. Typing ipcs -sb in a shell displays a list of semaphores allocated to the system at the moment. This list includes all the semaphore sets allocated, their identifying number, the owner, and the number of semaphores in each set. Occasionally, unexpected termination of Oracle processes leaves semaphore resources locked. If the database is not running, but ipcs -sb lists semaphore sets owned by oracle, these must be reallocated. If this is not done, semaphore resources may not be sufficient to allow restarting the database. Freeing semaphore sets is done by either using the ipcrm command or by restarting the system. Normally, system administrators do not want to restart the system only to free semaphore resources. Semaphore sets can be freed one at a time by performing the following procedure: Warning Do not attempt to reallocate semaphore resources from Oracle if the Oracle server process (orasrv) is running. Corrupted data may result. Log on as root. Type the following command to display a list of semaphores owned by oracle: Copy ipcs -sb |grep ora Free each semaphore set by typing: Copy ipcrm -s ID Replace ID with the set identifying number from semaphores listed in step 2. Repeat step 3 until all semaphores owned by Oracle are reallocated.

Source: https://docs.sw.siemens.com/documentation/external/PL20251212545240207/en-US/tc_help/AWAdmin/fhs4814155880506/kkz1737238614272/opl1737238615588/yqk1737238615674/wjh1737238619767/oraclesemuse.html · retrieved Fri Jul 31 2026 00:00:00 GMT+0000 (Coordinated Universal Time)