首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Solaris 8 上配置多個 Oracle 8i (8.1.7) 資料庫實例完整步驟

     編輯:Oracle 資料庫基礎

為何需要多實例

  • 伺服器資源有限,需整合多個應用資料庫。
  • 開發/測試/教學環境隔離,不影響生產實例。

環境基準

  • 硬體:Sun E250,1 GB RAM。
  • OS:Solaris 8 簡體中文版。
  • Oracle:8.1.7 Enterprise Edition。
  • 既有實例:pbcti (SID=pbcti)。
  • 新建實例:test (SID=test)。

逐步建立新實例

  1. 設定環境變數:
    ORACLE_SID=test; export ORACLE_SID
  2. 建立密碼檔:
    orapwd file=$ORACLE_HOME/dbs/orapwtest password=test entries=5
  3. 準備參數檔:複製 $ORACLE_HOME/dbs/init.ora 為 $HOME/test/pfile/inittest.ora 並修改關鍵參數 (見下)。
  4. 建立目錄結構:
    mkdir -p $HOME/test/{pfile,bdump,cdump,udump}
  5. 啟動 NOMOUNT:
    sqlplus internal/test
    STARTUP NOMOUNT PFILE=/home1/oracle/test/pfile/inittest.ora
  6. CREATE DATABASE:
    CREATE DATABASE test
    LOGFILE GROUP 1 '/home1/oracle/test/test1a.log' SIZE 5M,
    GROUP 2 '/home1/oracle/test/test2a.log' SIZE 5M
    DATAFILE '/home1/oracle/test/sys1test.dbf' SIZE 100M
    CHARACTER SET WE8ISO8859P1;
  7. 建立資料字典視圖:
    @$ORACLE_HOME/rdbms/admin/catalog.sql
  8. 安裝 PL/SQL 套件:
    @$ORACLE_HOME/rdbms/admin/catproc.sql
  9. 安裝 PRODUCT_USER_PROFILE (PUPBLD):
    @$ORACLE_HOME/sqlplus/admin/pupbld.sql
    完成後 SHUTDOWN IMMEDIATE; STARTUP PFILE=... 重啟。
  10. 建立應用表空間:
    CREATE TABLESPACE users DATAFILE '/home1/oracle/test/users1.dbf' SIZE 20M ...;
    CREATE TABLESPACE rbk DATAFILE '/home1/oracle/test/rbk.dbf' SIZE 20M;
    CREATE TEMPORARY TABLESPACE temp TEMPFILE '/home1/oracle/test/temp.dbf' SIZE 10M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 128K;
    CREATE PUBLIC ROLLBACK SEGMENT rb1 TABLESPACE rbk STORAGE (INITIAL 100K NEXT 100K MINEXTENTS 20 MAXEXTENTS 100 OPTIMAL 3M);
  11. 建立測試用戶與授權:
    CREATE USER test IDENTIFIED BY test DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp QUOTA 5M ON users;
    GRANT CREATE SESSION, CREATE TABLE TO test;
  12. 驗證連線:
    ORACLE_SID=test; export ORACLE_SID; sqlplus test/test → Connected.
  13. 客戶端 Net8 配置:在 tnsnames.ora 新增 test 服務名,測試遠端連線。

關鍵參數檔範例 (inittest.ora)

db_name = "test"
instance_name = test
service_names = test
control_files = ("/home1/oracle/test/test01.ctl","/home1/oracle/test/test02.ctl")
db_block_buffers = 19200
shared_pool_size = 52428800
large_pool_size = 614400
java_pool_size = 20971520
processes = 150
db_block_size = 4096
remote_login_passwordfile = exclusive
compatible = "8.1.0"
# ... 其他參數略

管理多實例提醒

  • 每個實例擁有獨立 SID、參數檔、控制檔、資料檔、Listener 服務名。
  • 記憶體總和 (SGA+PGA) 不可超過實體 RAM 70-80%。
  • 使用 oratab + dbstart/dbshut 統一啟停。
  • Listener 單一進程可服務多 SID,於 listener.ora SID_LIST 註冊。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved