2014年9月1日月曜日

Oracle で NFS+ASM にデータベースファイルを格納する。

あまり話題になることはないかもしれませんが、
Oracle Database で NFS 領域にデータファイルを配置する場合も
ASM が使えたりします。
Oracle Grid Infrastructureインストレーション・ガイド
11gリリース2 (11.2) for Linux
3.3.1.2
Oracle ASMで使用するためのNASデバイスでのファイルの作成
http://docs.oracle.com/cd/E16338_01/install.112/b56271/storage.htm#CFACJAGB
NFS 領域に直接データベースのファイルを配置する場合と、
NFS かつ ASM にデータベースのファイルを配置する場合を比較すると
下記のような感じになります。
※とりあえず、データファイルだけ書きました。



NFS に直接データファイルを配置する場合、
たとえば下記のように見えます。
※例では、NFS を /u02 配下にマウントしています。
[grid@dbsv01 ~]$ df -h /u02
Filesystem                Size  Used Avail Use% Mounted on
192.168.60.59:/nfs/dbf01   20G  7.5G   12G  41% /u02



NFS で ASM を使用する場合、
dd コマンドで「ゼロ埋込みファイル」を作成して
それを ASM ディスクとして使用します。

余分なレイヤが追加されるようにも見えますが、
NFS で表領域にファイルをオンライン追加できたり
NFS サーバを複数並べてストレージ筐体レベルで冗長化できたり
するので、メリットがゼロというわけではないとは思います。



おそらく本番環境でやることはないと思いますが、
1つのデータベースで、
NFS 上の OS ファイルと ASM ファイル両方を利用することもできます。
SQL> col TABLESPACE_NAME for a15
SQL> col FILE_NAME for a32
SQL> select TABLESPACE_NAME,FILE_NAME from dba_data_files;

TABLESPACE_NAME FILE_NAME
--------------- --------------------------------
USERS           +DG_NADB/nadb/users01.dbf
UNDOTBS1        +DG_NADB/nadb/undotbs01.dbf
SYSAUX          +DG_NADB/nadb/sysaux01.dbf
SYSTEM          +DG_NADB/nadb/system01.dbf
EXAMPLE         +DG_NADB/nadb/example01.dbf
UNDOTBS2        +DG_NADB/nadb/undotbs02.dbf
TS_TEST         /u02/oradata/nadb/ts_test01.dbf


7行が選択されました。

こんなイメージです。



ちなみに当然ながら、1台のサーバ(OS)に
ASM を利用している DB と
ASM 利用していない DB を同居させることもできます。

以上、Oracle の NFS+ASM の話でした。

0 件のコメント:

コメントを投稿