[20180328]不要在sys建立使用者物件.txt
[20180328]不要在sys建立使用者物件.txt
--//好幾年前遇到的問題,開發安裝UTL_DBWS在linux下遇到問題,最後選擇winows下安裝.
--//隨著業務增加,無法支撐,需要資料庫組遷移到linux下,也就是我當時的安裝筆記:
--//http://blog.itpub.net/267265/viewspace-2099501/
--//但是在遷移中遇到一件我苦笑不得的事情,開發把整個應用建立在sys使用者下,無語.好在應用不大,很容易移植.
--//實際上不要在sys下建立任何用物件.透過一個簡單的例子加強印象.
1.環境:
SYS@book> @ &r/ver1
PORT_STRING VERSION BANNER
------------------------------ -------------- --------------------------------------------------------------------------------
x86_64/Linux 2.4.xx 11.2.0.4.0 Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
SYS@book> select count(*) from dba_objects where status = 'INVALID';
COUNT(*)
----------
1
--//僅僅有1個無效物件.
SYS@book> create table SYS.SYSTEM (id number);
Table created.
SYS@book> select count(*) from dba_objects where status = 'INVALID';
COUNT(*)
----------
176
--//建立一個特殊的表system,就導致無效物件增加到176.
--//重新編譯看看:
SYS@book> @ /u01/app/oracle/product/11.2.0.4/dbhome_1/rdbms/admin/utlrp.sql
SYS@book> select count(*) from dba_objects where status = 'INVALID';
COUNT(*)
----------
39
--//依舊有39-1個.
SYS@book> drop table sys.system purge ;
Table dropped.
SYS@book> @ /u01/app/oracle/product/11.2.0.4/dbhome_1/rdbms/admin/utlrp.sql
...
SYS@book> select count(*) from dba_objects where status = 'INVALID';
COUNT(*)
----------
1
--//實際上建立在sys下還有許多問題,比如一些oracle特性無效,資料建立在system表空間等等.
--//總之下次拿這個例子來嚇唬一下開發...
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-2152280/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SYS使用者物件不支援延遲段物件
- expdp時不能匯出sys使用者下的物件!物件
- 建立scott使用者及物件物件
- SYS使用者的表無法建立物化檢視日誌
- SYS模式下物件的特性模式物件
- 關於SYS使用者無法使用延遲段建立的示例
- 在身份認證後建立使用者物件ICurrentUser物件
- 【BBED】 sys.bootstrap$ 物件的恢復boot物件
- Linux下建立GPIO(/sys/class/gpio)Linux
- Oracle10g Data guard會不會自動更新sys使用者密碼?Oracle密碼
- linux下sys log 不產生了Linux
- 修改sys ,system使用者密碼密碼
- Linux 建立使用者不建立家目錄,配置ssh金鑰的方式Linux
- sys使用者與system使用者的區別
- Windows Phone 7 不溫不火學習之《建立使用者控制元件》Windows控制元件
- 物件建立模式物件模式
- JS 建立物件JS物件
- JavaScript建立物件JavaScript物件
- js建立物件JS物件
- 修改ASM sys使用者密碼方法ASM密碼
- sys使用者不支援flashback table特性!
- [20160228]關於sys.bootstrap$.txtboot
- linux建立使用者不會生成.bash_profile問題Linux
- JavaScript物件與建立物件的方式JavaScript物件
- JS_建立物件+呼叫物件方法JS物件
- 如何用Map物件建立Set物件物件
- Java 中建立子類物件會建立父類物件麼?Java物件
- Java物件建立模式Java物件模式
- AJAX 建立 XMLHttpRequest物件XMLHTTP物件
- JS-建立物件JS物件
- ajax建立XMLHttpRequest物件XMLHTTP物件
- PHP 建立流式物件PHP物件
- 07物件的建立物件
- sys使用者無法連線到DB
- 透過sqlldr匯入到sys使用者SQL
- 通過sqlldr匯入到sys使用者SQL
- 【去重】當SYS和SYSTEM使用者出現重複資料庫物件時的應對措施資料庫物件
- JS物件導向設計-建立物件JS物件