Ubuntu環境下Oracle數據庫更新與升級步驟
若僅需更新已安裝的Oracle軟件包(如補丁、小版本更新),可通過以下步驟完成:
sudo apt update,同步系統軟件包索引。sudo apt upgrade,升級所有可用的Oracle軟件包(如oracle-instantclient、oracle-database-common等)至最新版本。dpkg -l | grep oracle查看已安裝的Oracle軟件包版本,確認更新成功。數據庫版本升級需更嚴謹的流程,以下是詳細步驟:
-- RMAN全備份
rman target /
RUN {
ALLOCATE CHANNEL d1 DEVICE TYPE DISK;
BACKUP DATABASE FORMAT '/soft/rmanbak/%U';
BACKUP CURRENT CONTROLFILE FORMAT '/soft/rmanbak/controlfile.bak';
}
fs.file-max、kernel.sem)以適配Oracle需求。/etc/security/limits.conf,增加Oracle用戶(如oracle)的資源限制,例如:oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 2048
oracle hard nproc 16384
sudo apt install alien libaio1 unixodbc安裝Oracle所需的依賴庫。.rpm或.deb格式)。alien工具轉換為DEB格式:sudo alien -dv oracle-database-19c-ee-19.0.0.0.0.x86_64.rpm
dpkg安裝轉換后的DEB包:sudo dpkg --install oracle-database-19c-ee_19.0.0.0.0-1_amd64.deb
~/.bash_profile,添加Oracle環境變量:export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export TNS_ADMIN=$ORACLE_HOME/network/admin
export NLS_LANG='AMERICAN_AMERICA.UTF8'
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
export PATH=$ORACLE_HOME/bin:$PATH
執行source ~/.bash_profile使變量生效。dbua命令啟動Database Upgrade Assistant,按照向導步驟選擇數據庫實例、升級路徑,DBUA會自動處理預升級檢查和配置調整。sqlplus / as sysdba
SHUTDOWN IMMEDIATE;
STARTUP UPGRADE;
@?/rdbms/admin/catalog.sql; -- 升級數據字典
@?/rdbms/admin/catproc.sql; -- 升級PL/SQL組件
@?/rdbms/admin/utlrp.sql; -- 編譯無效對象
SHUTDOWN IMMEDIATE;
STARTUP; -- 正常啟動數據庫
v$version視圖,確認數據庫版本已更新:sqlplus / as sysdba
SELECT * FROM v$version;
SELECT SYSDATE FROM dual;),檢查數據庫功能是否正常。SELECT COUNT(*) FROM dba_objects WHERE status = 'INVALID';,若有無效對象,需重新編譯(@?/rdbms/admin/utlrp.sql)。