隨筆-13  評論-28  文章-63  trackbacks-0
          本文所涉及到的Oracle_Database_10g運行在操作系統Red Flag Linux DC 4.1下。
          ??? 8月1日至8月19日,CALIS第三期系統管理員培訓班在上海交通大學閔行校區圖書館成功舉行。作為這期培訓班的管理人員之一,筆者旁聽了紅旗Linux 和Oracle Database 10g的全部講課。10g的培訓內容基本涉及到了該數據庫的各個方面,但是在實際部署CALIS產品的時候,除了要了解Red Flag Linux DC 4.1下有方便10g安裝的Oracle Install Navigator(系統命令oranavi),以下三個問題值得注意。一、RESOURCE角色的UNLIMITED TABLESPACE權限問題
          ??? 在10g中,RESOURCE角色包含了CREATE TRIGGER、CREATE INDEXTYPE和CREATE PROCEDURE等常用的系統權限,因此在10g中創建新用戶的時候除了默認的CONNECT角色,一般還要賦予RESOURCE角色。
          ??? 現在,使用Enterprise Manager(EM)或者下面的SQL語句創建一個新用戶:
          ??? CREATE USER "TEST" PROFILE "DEFAULT" IDENTIFIED BY "TESTPASS" DEFAULT TABLESPACE "USERS" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK;
          ??? GRANT "CONNECT" TO "TEST";
          ??? GRANT "RESOURCE" TO "TEST";
          ??? 下邊,在SQL*PLUS中以該用戶身份登錄:
          ??? [liuxg@localhost liuxg]$ su - oracle
          ??? [oracle@localhost oracle]$ sqlplus /nolog
          ??? SQL> connect test/testpass
          ??? 查詢該用戶所擁有的全部權限:
          ??? SQL> select * from session_privs;
          ??? PRIVILEGE
          ??? --------------------------------------------------------------------------------
          ??? CREATE SESSION
          ??? ALTER SESSION
          ??? UNLIMITED TABLESPACE
          ??? CREATE TABLE
          ??? CREATE CLUSTER
          ??? CREATE SYNONYM
          ??? CREATE VIEW
          ??? CREATE SEQUENCE
          ??? CREATE DATABASE LINK
          ??? CREATE PROCEDURE
          ??? CREATE TRIGGER
          ??? PRIVILEGE
          ??? --------------------------------------------------------------------------------
          ??? CREATE TYPE
          ??? CREATE OPERATOR
          ??? CREATE INDEXTYPE
          ??? 14 rows selected.
          ??? 從結果中可以看到,該用戶擁有UNLIMITED TABLESPACE系統權限。但是如果使用select privilege from role_sys_privs where role='CONNECT'以及select privilege from role_sys_privs where role='RESOURCE'查詢CONNECT和RESOURCE角色卻找不到UNLIMITED TABLESPACE這個系統權限。
          ??? 從Oracle MetaLink得知,UNLIMITED TABLESPACE是為了使10g保持向后兼容性而隱含在RESOURCE角色中的一個系統權限。從安全性的角度來考慮,在創建用戶并且授予RESOURCE角色之后應該回收UNLIMITED TABLESPACE這個系統權限。這里推薦創建一個新角色,比如CALIS_RESOURCE,該角色擁有select privilege from role_sys_privs where role='RESOURCE'查詢語句所列出的全部系統權限,而在創建新用戶的時候則將賦予這個新角色。二、8080端口和2100端口被占用問題
          ??? 很多用戶發現,在10g運行的時候,如果啟動默認端口為8080的Tomcat,不能訪問Tomcat所提供的Web應用程序,通過命令lsof -i:8080會發現該端口已經被10g占用;同樣,如果啟動默認端口為2100的CALIS Z-Server,該服務也不能夠被訪問,再通過lsof -i:2100會發現該端口也是被10g占用。
          ??? 當然可以通過改變Tomcat和CALIS Z-Server默認端口的方式來避免端口沖突。通過調查發現10g中是XML DB在使用8080和2100,而XML DB目前在CALIS各項產品中還未使用到,因此,建議通過關閉XML DB來解決問題。具體可參考如下幾步操作:
          ??? [liuxg@localhost liuxg]$ su - oracle
          ??? [oracle@localhost oracle]$ sqlplus /nolog
          ??? SQL> connect / as sysdba
          ??? SQL> alter system set dispatchers='' scope=both;
          ??? SQL> shutdown immediate
          ??? SQL> startup 三、 Enterprise Manager(EM)的使用問題
          ??? 10g提供了使用瀏覽器以Web方式訪問數據庫的工具Enterprise Manager,EM極大的方便了數據庫管理員對數據庫的管理。與此同時,EM默認使用的協議是HTTP,數據庫用戶密碼以及對數據庫進行的各項操作都是在網絡上明文傳輸,這無疑是極大的安全隱患。針對這個問題,建議使用安全性較高的HTTPS協議使用EM。具體可參考如下幾步操作:
          ??? [liuxg@localhost liuxg]$ su - oracle
          ??? [oracle@localhost oracle]$ emctl stop dbconsole
          ??? [oracle@localhost oracle]$ secure dbconsole
          ??? [oracle@localhost oracle]$ emctl start dbconsole
          ??? 其中為10g中sysman用戶的密碼。需要說明的是,在這之后,用Microsoft Internet Explorer和Red Flag Linux DC 4.1自帶的Mozilla可以正常通過HTTPS協議訪問EM,但是使用Firefox則會出現invalid certificate的提示,無法正常訪問,需要進一步試驗來解決。
          ??? 對于EM的中文界面出現亂碼的情況,解決方法請參考這個網址:
          ??? http://www.dbanotes.net/Oracle/Oracle-10g-font.properties.htm。由于EM的中文界面有很多翻譯不夠準確的地方,因此最好是設置瀏覽器的默認語言為英文,使用英文操作界面。
          ??? 另外,如果使用DBCA新建立了一個庫并配置了EM,那么訪問該庫的EM的時候端口不再是5500,而是5501。如果再新建立另外的多個庫,則端口號依次增加1,iSQL*PLUS等具有相同的規律
          posted on 2006-09-01 15:34 七匹狼 閱讀(329) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 雷山县| 安丘市| 修水县| 阜南县| 海淀区| 清原| 永登县| 桦川县| 张北县| 大荔县| 吕梁市| 昌邑市| 忻城县| 贡嘎县| 当雄县| 凤翔县| 伽师县| 桃园市| 时尚| 奉化市| 云霄县| 大同市| 叶城县| 祁东县| 石楼县| 察哈| 宝兴县| 瑞金市| 都兰县| 清新县| 曲沃县| 道孚县| 隆化县| 宁阳县| 阿图什市| 腾冲县| 汶上县| 琼海市| 古蔺县| 顺义区| 鹿泉市|