S-JIS[2003-06-18/2008-01-14] 変更履歴

RedHat7.1にOracle9iをインストール

スペックの足りないマシン(泣)にRedHat7.1とOracle9iをインストールした時のメモ。


RedHat7.1のインストール

  1. Oracleのインストールには、ディレクトリにどれくらいの容量が必要か決まっているので、最低限それに合わせる必要がある。
    容量の例 場所 備考
    516MB / /tmpはここに存在するので、512MB以上
    50MB /boot  
    7000MB /home インストールする場所。
    1919MB /usr  
    512MB swap swapは512MB以上
    250MB /var  

    X-Window,GNome使DB()
     

    hosts

    xinetdtelnet,ftp

    shmmax=2147483648

    DB使SnnSendmail

    Oracle使  
      グループ名の例 ユーザー名の例 ユーザー作成時のオプション
    インストール用 oinstall oracle -g oinstall -G dba
    DB管理者 dba dba -g dba
    DBユーザー oper   -g oper
  2. Java(JDK1.3.1以上)をインストールする。
  3. 環境変数を設定する。
    環境変数名 内容の例 備考
    ORACLE_BASE /home/oracle インストール用ユーザーのディレクトリ
    ORACLE_HOME /home/oracle/OraHome1 インストール先のディレクトリ
    ORACLE_OWNER oracle インストール用ユーザー
    TEMP、TMPDIR   インストール時の作業ディレクトリを指定。400MB以上必要
  4. 再起動する。
  5. rootユーザーからセマフォの設定を行う。
    $ cat /proc/sys/kernel/sem
    250 100 100 128
    $ echo 250 32000 100 128 > /proc/sys/kernel/sem

    232000   
     


    Oracle9i



    (一)

    (二)CDrunInstallerGNomeCDWindows
    $ mount /mnt/cdrom  ←GNomeの場合は不要。CDを入れるだけでマウントされるから
    $ /mnt/cdrom/runInstaller
     

    (三)roottermroot

    (四)CDGNomeCD-ROM

    (五)ins_plsql.mkinstall
    $ su -
    $ cd $ORACLE_HOME/bin
    $ vi genclntsh
            LD_SELF_CONTAINED="-z defs"""
    $ ./genclntsh
     

    $ORACLE_HOME/lib/libclntst9.aOK
     

      lsnrctl  start LISTENER  lsnrctl  ORACLE_HOME

    (一)

    (二)netcaNet  Configuration Assist
    123

    (三)dbcaDatabase  Configuration Assist
     8/8
     admin/$ORACLE_SID/script/init.ora
     
     


    syssystem


    動作 コマンド 説明
    DB起動 dbstart /etc/oratabで「SID:ディレクトリ:Y」になっているものが対象
    sqlplus /nolog
    SQL> connect / as sysdba
    SQL> startup
    SQL> exit
    dbstartが効かない場合の方法
    リスナー起動 lsnrctl start LISTENER リスナーとは、DBクライアントの要求をOracleDBに伝えるものらしい
    リスナー終了 lsnrctl stop LISTENER
    DB終了 dbshut 対象はdbstartと同じ
    sqlplus /nolog
    SQL> connect / as sysdba
    SQL> shutdown immediate
    (又はshutdown abort)
    SQL> exit
    dbshutが効かない場合の方法

    JDBC
    Java.sql.SQLException The Network Adapter could not establish the connection



    OracleDBDB
    1. OracleDBにシステム管理者としてログインする。
      sys 管理者用ユーザー
      manager sysのパスワード
      SID 接続対象のSID
      $ sqlplus "sys/manager@SID as sysdba"
    2. 表領域を作成する。↓この例の数値はテキトーです。
      CREATE TABLESPACE 表領域名A
      DATAFILE 'ディレクトリ/ァイル.dbf' SIZE 50M	←表領域のファイル名 及び ファイルサイズ
      DEFAULT STORAGE (INITIAL 3M
                       NEXT    3M
                       MINEXTENTS 1
                       MAXEXTENTS 121      ←あるいは、「MAXEXTENTS unlimited」で無制限
                       PCTINCREASE 50)
      ONLINE;	←表領域の指定
      CREATE TABLESPACE 表領域名B
      DATAFILE 'ディレクトリ/ァイル.dbf' SIZE 50M	←一時表領域のファイル名 及び ファイルサイズ
      DEFAULT STORAGE (INITIAL 3M
                       NEXT    3M
                       MINEXTENTS 1
                       MAXEXTENTS 121
                       PCTINCREASE 50)
      TEMPORARY; ←一時表領域の指定

       Oracle9.0Oracle9.2ORA-12913:   DB

      Oracle9.2SQL[2004-11-12]
       
      CREATE TEMPORARY TABLESPACE 表領域名B
      TEMPFILE 'ディレクトリ/ァイル.dbf' SIZE 50M←一時表領域のファイル名 及び ファイルサイズ
      AUTOEXTEND OFF;


      CREATE USER ユーザー名 ←ハイフン「-」等を含む時には、ユーザー名ダブルクォーテーションで囲む
      IDENTIFIED BY パスワード
      DEFAULT TABLESPACE 表領域名A ←表領域の指定
      TEMPORARY TABLESPACE 表領域名B ←一時表領域の指定。普通は一時表領域「TEMP」を使うのかな?
      QUOTA unlimited ON 表領域名A; ←「DEFAULT TABLESPACE」で指定した表領域
       

      CREATEALTER使
       
       

      GRANT connect TO ユーザー名;  ←connect:ログインする(SESSIONを繋ぐ)ことが出来るような権限を含んだロール
      GRANT resource TO ユーザー名;  ←resource:テーブル作成権限等がある、開発者用に用意されているロール
       






      SQL[2004-05-28]
       
      DROP TABLESPACE 表領域名 INCLUDING CONTENTS;

      INCLUDING CONTENTS
       

      dbfUNIX


      create tablespacecreate user

      SQL[2004-06-12]
      SELECT TABLESPACE_NAME, CONTENTS FROM DBA_TABLESPACES;


      SQL[2008-01-14]
      ALTER DATABASE DATAFILE 'ファイル名' RESIZE 〜;

      SQL / Oracle /  /