sqlplus / as sysdba 執行 startup 報錯startup 失敗,提示權限不足或認證失敗。
# $ORACLE_HOME/network/admin/sqlnet.ora SQLNET.AUTHENTICATION_SERVICES = (ALL) # 確保設為 ALL 或 NTS
export ORACLE_SID=your_sid export ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1 export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
id oracle # 確認屬於 dba, oinstall 等必要群組
orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=your_password entries=5 force=y
ORA-00845: MEMORY_TARGET not supported on this system
Oracle 11g 啟用 AMM (Automatic Memory Management) 時,MEMORY_TARGET 需要 /dev/shm (共享記憶體檔案系統) 空間足夠。預設 /dev/shm = 實體記憶體 50%,若 MEMORY_TARGET 設定值超過此限制即報錯。
# 1. 查看當前大小 df -h /dev/shm # 2. 臨時調整 (重開機失效),需 root 權限 mount -o remount,size=8G,nr_inodes=1000000,noatime,nodiratime /dev/shm # 3. 永久生效:修改 /etc/fstab tmpfs /dev/shm tmpfs defaults,size=8G 0 0 # 4. 驗證 df -h /dev/shm # Filesystem Size Used Avail Use% Mounted on # tmpfs 8.0G 995M 7.1G 13% /dev/shm
export ORACLE_SID=test0924 sqlplus / as sysdba startup # 成功輸出: ORACLE instance started. Total System Global Area 3340451840 bytes ... Database opened.
SQL> show parameter mem NAME TYPE VALUE ------------------------------------ ----------- ----------------- memory_max_target big integer 3200M memory_target big integer 3200M # 應與 max 一致或更小 ...
sqlplus -prelim、oradebug、alert.log 分析kernel.shmmax、kernel.shmall