1.1. ORA-01722 日期:2014-06-05 14:09 環(huán)境:測試環(huán)境 【情景描寫敘述】 在數(shù)據(jù)庫的升級過程中,運行SQL> @?/rdbms/admin/catupgrd.sql腳本的時候遇到報錯退出。 【報錯信息】 DOC>####################################################################### DOC> The following statement will cause an "ORA-01722: invalidnumber" DOC> error if the Oracle Database Vault option is TRUE. Upgrades cannot DOC> be run with the Oracle Database Vault option set to TRUE since DOC> AS SYSDBA connections are restricted. DOC> DOC> Perform "ALTER SYSTEM CHECKPOINT" prior to "SHUTDOWNABORT", relink DOC> the server without the Database Vault option, and restart the server DOC> using UPGRADE mode. DOC> DOC> DOC>####################################################################### DOC>####################################################################### DOC># SELECT TO_NUMBER('DATA_VAULT_OPTION_ON')FROM v$option * ERROR at line 1: ORA-01722: invalid number 【報錯原因】 該數(shù)據(jù)庫實例配置了Oracle Database Vault功能。 【解決方法】 關閉Oracle Database Vault功能后,又一次運行升級操作。 關閉Oracle Database Vault功能: # 查看是否開啟了OracleDatabase Vault功能: SQL> col parameter for a30 SQL> col value for a20 SQL> SELECT * FROM V$OPTION WHEREPARAMETER = 'Oracle Database Vault'; PARAMETER VALUE -------------------------------------------------- Oracle Database Vault TRUE # 關閉數(shù)據(jù)庫實例 SQL> shutdown immediate SQL> exit $ emctl stop dbconsole $ lsnrctl stop # 編譯ins_rdbms.mk [oracle@oracle ~]$ cd $ORACLE_HOME/rdbms/lib/ [oracle@oracle lib]$ make -f ins_rdbms.mkdv_off /usr/bin/ar d/U01/app/oracle/product/11.2.3/db_1/rdbms/lib/libknlopt.a kzvidv.o /usr/bin/ar cr/U01/app/oracle/product/11.2.3/db_1/rdbms/lib/libknlopt.a/U01/app/oracle/product/11.2.3/db_1/rdbms/lib/kzvndv.o [oracle@oracle lib]$ # 運行relink [oracle@oracle lib]$ cd $ORACLE_HOME/bin [oracle@oracle bin]$ relink all writing relink log to:/U01/app/oracle/product/11.2.3/db_1/install/relink.log [oracle@oracle bin]$ # 啟動數(shù)據(jù)庫實例 $ sqlplus / as sysdba SQL> startup # 檢查 Oracle DatabaseVault狀態(tài) SQL> SELECT * FROM V$OPTION WHERE PARAMETER= 'Oracle Database Vault'; PARAMETER VALUE ------------------------------ ---------- Oracle Database Vault FALSE SQL> 【參考資料】 關閉/開啟Oracle Database Vault: http://docs.oracle.com/cd/B28359_01/server.111/b31222/dvdisabl.htm#DVADM70984 安裝Oracle Database Vault: http://www./dept/itss/docs/oracle/10gR2/install.102/b32496/upgrd.htm 什么是Oralce Database Vault: OracleDatabase Vault 可幫助用戶解決現(xiàn)有的極為棘手的安全問題,即防止內部的威脅,滿足合規(guī)性要求以及實現(xiàn)職責劃分。 Oracle Database Vault 能防止 DBA 查看應用程序數(shù)據(jù),攻克了必須保護涉及合作伙伴、員工和顧客的敏感業(yè)務信息或隱私數(shù)據(jù)的客戶最為操心的問題。Oracle Database Vault 可防止高權限的應用程序 DBA 訪問其它的應用程序、運行其權限之外的任務。Oracle Database Vault 能夠輕松快捷地保護現(xiàn)有應用程序。且不影響應用程序的功能。 來源:http://www./content-2-145251.html |
|