北アラバ公国

UNIX、ORACLE、NETWORK等、IT、情報通信に関する話題と技術メモ。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

Oracleの一次表領域を拡張する方法(2)

Oracle一次表領域拡張する方法には、

(1)一次表領域のデータファイルをリサイズalter database文)
(2)一次表領域にデータファイルを追加alter tablespace文)

の2つの方法があります。この記事では、

(2)一次表領域にデータファイルを追加alter tablespace文)

について記述します。まずは一次表領域の状態を確認します。
SQL> set linesize 120
SQL> set pagesize 50
SQL> column TABLESPACE_NAME format a20
SQL> column CONTENTS format a20
SQL> select TABLESPACE_NAME,CONTENTS from dba_tablespaces
2 where CONTENTS='TEMPORARY';

TABLESPACE_NAME CONTENTS
-------------------- --------------------
TEMP TEMPORARY

SQL> set linesize 120
SQL> set pagesize 50
SQL> column ファイル名 format a53
SQL> column 表領域名 format a8
SQL> column Size(MB) format 999,999
SQL> select FILE_NAME "ファイル名",TABLESPACE_NAME "表領域名",
2 BYTES/1024/1024 "Size(MB)" from dba_temp_files;

ファイル名 表領域名 Size(MB)
----------------------------------------------------- -------- --------
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF TEMP 25

SQL>
一応、ファイルシステム上のデータファイルのサイズも確認しておきます。
SQL> host dir C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP*.*
ドライブ C のボリューム ラベルは IDE-1-1 です
ボリューム シリアル番号は 6CC4-CA04 です

C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL のディレクトリ

2009/09/11 03:04 26,222,592 TEMP01.DBF
1 個のファイル 26,222,592 バイト
0 個のディレクトリ 718,585,856 バイトの空き領域

SQL>
上記の結果から、現在、一次表領域は表領域「TEMP」であり、一次表領域「TEMP」はデータファイル「C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF」によって構成され、そのサイズは「25MB」であることが分かります。では、「alter tablespace」文を使って一次表領域「TEMP」に「25MB」のデータファイル「C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF」を追加し、一次表領域「TEMP」を「50MB」に拡張してみます。
SQL> alter tablespace TEMP add tempfile
2 'C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF'
3 size 25M;

表領域が変更されました。

SQL>
これでデータファイルが追加され、一次表領域「TEMP」のサイズも拡張されているはずです。確認してみましょう。
SQL> set linesize 120
SQL> set pagesize 50
SQL> column ファイル名 format a53
SQL> column 表領域名 format a8
SQL> column Size(MB) format 999,999
SQL> select FILE_NAME "ファイル名",TABLESPACE_NAME "表領域名",
2 BYTES/1024/1024 "Size(MB)" from dba_temp_files;

ファイル名 表領域名 Size(MB)
----------------------------------------------------- -------- --------
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP01.DBF TEMP 25
C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF TEMP 25

SQL> set linesize 120
SQL> set pagesize 50
SQL> column 表領域名 format a10
SQL> column Size(MB) format 999,999
SQL> select TABLESPACE_NAME "表領域名",
2 sum(BYTES)/1024/1024 "Size(MB)"
3 from dba_temp_files
4 group by TABLESPACE_NAME;

表領域名 Size(MB)
---------- --------
TEMP 50

SQL>
一応、ファイルシステム上のデータファイルのサイズも確認しておきます。
SQL> host dir C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP*.*
ドライブ C のボリューム ラベルは IDE-1-1 です
ボリューム シリアル番号は ****-**** です

C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL のディレクトリ

2009/09/11 03:04 26,222,592 TEMP01.DBF
2009/09/11 03:16 26,222,592 TEMP02.DBF
2 個のファイル 52,445,184 バイト
0 個のディレクトリ 692,363,264 バイトの空き領域

SQL>
25MB」のデータファイル「C:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\TEMP02.DBF」が追加され、一次表領域「TEMP」のサイズが「50MB」に拡張されました。

テーマ:オラクルデータベース - ジャンル:コンピュータ

  1. 2009/09/11(金) 03:23:03|
  2. ORACLE
  3. | トラックバック:0
  4. | コメント:0
<<JAXA | ホーム | Oracleの一次表領域を拡張する方法(1)>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://northaraba.blog17.fc2.com/tb.php/542-8dbb1866
この記事にトラックバックする(FC2ブログユーザー)
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。