LoginSignup
6
3

More than 3 years have passed since last update.

OCI: DBシステムの中を見てみた

Last updated at Posted at 2019-05-22

先回、Oracle Cloud (OCI)で仮想マシンのDBシステムを作成してみました。今回はDBシステムの中身をざっくり見ていきたいと思います。

ユーザー

デフォルトでopc, oracle, gridの3ユーザーが用意されています。
DBシステムにログインする場合はopcユーザーでアクセスし、他のユーザに切り替えます。OCIではrootになることも可能です。

ユーザー 内容
opc SSH接続時のユーザー。sudo特権を持ち、sudo -sでrootユーザーになれる
oracle Oracle Databaseのインストールユーザー
grid Oracle Grid Infrastructureのインストールユーザー

環境変数

oracleユーザーがOracleデータベースを使用するための環境変数がDBシステム作成時に自動でセットされます(ORACLE_SID, ORACLE_HOME, ORACLE_UNQNAME, PATHなど)。そのため、すぐにSQL*Plusを使ってOracleにアクセスしたり、lsnrctlでリスナーの状態を確認といったことができます。

[opc@oradb01 ~]$ sudo su - oracle
[oracle@oradb01 ~]$ echo $ORACLE_HOME
/u01/app/oracle/product/18.0.0.0/dbhome_1
[oracle@oradb01 ~]$ echo $ORACLE_SID
orcl

gridユーザーの環境変数も自動でセットされます。

[opc@oradb01 ~]$ sudo su - grid
[grid@oradb01 ~]$ echo $ORACLE_HOME
/u01/app/18.0.0.0/grid
[grid@oradb01 ~]$ echo $ORACLE_SID
+ASM1

インストールされている Oracleソフトウェアバージョン

DBシステム管理のコマンドラインツール(dbcli)が提供されているので、それを使って確認してみます。dbcliのコマンドリファレンスはこちら
dbcliはrootユーザで実行します。

[opc@oradb01 ~]$ sudo -s
[root@oradb01 opc]# su -
[root@oradb01 ~]# dbcli describe-component
System Version
---------------
18.3.4.0.0

Component                                Installed Version    Available Version 
---------------------------------------- -------------------- --------------------
GI                                        18.6.0.0.190416       up-to-date      
DB                                        18.6.0.0.190416       up-to-date      

Oracle Grid Infrastructure(GI)とOracle Database(DB)がインストールされていることがわかります。それぞれの現在インストールされているパッチ・バージョンと使用可能なパッチ・バージョンが確認できます。

ファイル・レイアウト

次に、データベース関連のファイル配置を見てみます。まず、ディレクトリの配置から。

[oracle@oradb01 opc]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroupSys-LogVolRoot
                       35G   23G   11G  68% /
tmpfs                 7.3G  1.1G  6.2G  15% /dev/shm
/dev/sda2             1.4G   46M  1.3G   4% /boot
/dev/sda1             486M  276K  485M   1% /boot/efi
/dev/sdd              197G   23G  164G  13% /u01  <------ Oracle ソフトウェア
/dev/asm/commonstore-153
                      5.0G  369M  4.7G   8% /opt/oracle/dcs/commonstore

環境変数 ORACLE_HOMEの値が示すように、/u01配下にOracleソフトウェアバイナリが配置されています。tnsnames.oraやalert.logのような、運用上よく使用するファイルもここにあります。
ではデータファイルや Redoログファイルは?というと、ASM(Oracle Automatic Storage Management)にあります。

SQL> select tablespace_name, file_name from dba_data_files;

TABLESPACE FILE_NAME
---------- --------------------------------------------------------------------------------
UNDOTBS1   +DATA/<DBユニーク名>/DATAFILE/undotbs1.263.1005904755
SYSTEM     +DATA/<DBユニーク名>/DATAFILE/system.261.1005904697
SYSAUX     +DATA/<DBユニーク名>/DATAFILE/sysaux.262.1005904735
USERS      +DATA/<DBユニーク名>/DATAFILE/users.274.1005905603


SQL> select group#, member from v$logfile order by group#;

    GROUP# MEMBER
---------- --------------------------------------------------------------------------------
         1 +RECO/<DBユニーク名>/ONLINELOG/group_1.257.1005904813
         2 +RECO/<DBユニーク名>/ONLINELOG/group_2.258.1005904813
         3 +RECO/<DBユニーク名>/ONLINELOG/group_3.259.1005904813
         4 +RECO/<DBユニーク名>/ONLINELOG/group_4.271.1008735725
         5 +RECO/<DBユニーク名>/ONLINELOG/group_5.270.1008735735
         6 +RECO/<DBユニーク名>/ONLINELOG/group_6.262.1008735743
         7 +RECO/<DBユニーク名>/ONLINELOG/group_7.269.1008735753

7 rows selected.
(※ DBユニーク名は書き直しています)

OCI Databaseサービスではストレージ管理にASMを使用しています。RAC構成に限らず、シングルインスタンスでもASMを使用します。ASM上にデータファイルやRedoログファイルなどが配置されています。

ASMの構成

では、ASMの構成を見てみます。

SQL> select name from v$asm_diskgroup;

NAME
------------------------------
DATA
RECO

ASMのdiskgroupはDATAとRECOに分けられています。DATAにデータファイル等が入り、RECOにリカバリに関係するファイルが格納されます。
これらのdiskgroupのサイズは、DBシステムを作成するときに指定したストレージの値から決められます。指定した値がDATAのサイズになります。RECOのサイズはDATAのサイズから自動計算された値が使用されるようです。
ちなみに、仮想マシンのDBシステムではストレージのオンラインスケールアップが可能です。256GBから最大40TBまで拡張できます。

(追記)
2019年10月より、1ノードのDBシステムを使用する場合、ストレージ管理ソフトウェアに論理ボリュームマネージャ(LVM)を選択してDBシステムを作成できるようになりました。詳細はこちら

参考

マニュアル
Virtual Machine DBシステム
Oracle Automatic Storage Management 管理者ガイド

6
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3