ORACLE MANIAC

ORACLE技を研究中...

Ads by Google

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

  1. --/--/--(--) --:--:--|
  2. スポンサー広告

DBMS_STATS デフォルトの値 ORACLE GET_PARAM SET_PARAM

ORACLEDBMS_STATSのデフォルトの値(現在の値)を確認するには

GET_PARAMファンクションで取得できます。

SELECT DBMS_STATS.GET_PARAM('DEGREE') FROM DUAL;

など。

設定する場合はSET_PARAMプロシージャを使いましょう。

EXEC DBMS_STATS.SET_PARAM('DEGREE',4)
EXEC DBMS_STATS.SET_PARAM('METHOD_OPT','FOR ALL COLUMNS SIZE AUTO')
EXEC DBMS_STATS.SET_PARAM('CASCADE',TRUE)

などですね。

※「TRUE」はBOOL型なのでクォーテーションで囲む必要はありません。



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

  1. 2009/05/10(日) 10:27:56|
  2. ORACLE

PL/SQL内でtruncateを実行 ORACLE

PL/SQLの中でTRUNCATEを実行したい場合は、

EXECUTE IMMEDIATE 'TRUNCATE TABLE 〜';

としなければならない。

TRUNCATEDDLなもんで。

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

  1. 2009/03/22(日) 15:44:21|
  2. ORACLE

hashパーティションのパーティション名を指定する

hashパーティションのパーティション名を指定できないと思っている人は多くないだろうか?

CREATE TABLE AAA
(COL1 NUMBER
・・・
)
PARTITION BY HASH(COL1)
(PARTITION P1,
PARTITION P2);

とすれば、パーティション名のP1,P2を指定できる。

パーティション名を変更するには

ALTER TABLE AAA RENAME PARTITION P1 TO P3;

で可能。



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

  1. 2009/03/14(土) 18:04:30|
  2. ORACLE

remote_login_passwordfile GRANT SYSDBA ORACLE

通常のユーザにSYSDBAを与えたいときってないですか?

remote_login_passwordfile = SHARED

だとできないようです。

remote_login_passwordfile = EXCLUSIVE

にしてあげましょう。

勿論、OS認証を使用している場合は不可ですが。


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

  1. 2009/02/28(土) 11:12:28|
  2. ORACLE

AWRはパッケージ化されている ORACLE

ORACLEのパフォーマンスツールであるAWRはパッケージ化されているので、修正することができない。
いや、正確に言うとキックするときはawrrpt.sqlを実行するだけだが、中身はパッケージを起動しているのだ。

以前のSTATSPACKはただのスクリプトだったのでいくらでも直せたが、不便になった。

ちなみにパッケージ名はDBMS_WORKLOAD_REPOSITORYだ。



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

  1. 2009/02/21(土) 16:45:49|
  2. ORACLE

AUTOTRACEの設定 ORACLE

ORACLEAUTOTRACEを設定するにはいくつか手順が必要だ。

1.SYSで
$ORACLE_HOME/sqlplus/admin/plustrace.sql

2.GRANT plustrace to <スキーマ名>;

3.$ORACLE_HOME/rdbms/utlxplan.sql

このあと、grantしたスキーマに接続し直して

set autotrace on

を実行すればよい。

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

  1. 2009/02/08(日) 09:47:56|
  2. ORACLE

OEM(ORACLE Enterprise Manager)のport変更 ORACLE

OEM(ORACLE Enterprise Manager)のポート番号は自動的に決まってしまうが、変更したい場合は

$ORACLE_HOME/<hostname_sid>/sysman/config/emoms.properties



$ORACLE_HOME/<hostname_sid>/sysman/emd/target.xml

の2つに書かれているportの記述を変更すればよい。

そして再起動。

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

  1. 2009/01/24(土) 16:36:51|
  2. ORACLE

windows タスクスケジューラのログ

Windowsのタスクスケジューラのログは

「コントロールパネル」-「パフォーマンスとメンテナンス」-「タスク」-「詳細設定」-「ログの表示」

で見ることができる。

場所は通常、

C:\WINDOWS\SchedLgU.TXT

にある。(上記でない場合は、%SystemRoot%\SchedLgU.TXT)

Windows Server 2003 の場合は

C:\WINDOWS\tasks\SchedLgU.TXT

のようだ。

テーマ:Windows 全般 - ジャンル:コンピュータ

  1. 2009/01/12(月) 09:32:52|
  2. windows

FULL SCANのPARALLEL ORACLE

FULL SCANになってしまうテーブルを速くする場合はPARALLELヒント句をつけるとよいだろう。
※複数CPUであることが条件

SELECT /*+ PARALLEL(テーブル名,並列度) */ FROM テーブル名;

ただ、元々INDEX SCANになっている場合はFULL SCANしてくれないので

SELECT /*+ FULL(テーブル名) PARALLEL(テーブル名,並列度) */ FROM テーブル名;

とする必要がある。

INDEX SCANになってるのに、なぜFULL SCANにするのかって?

この方が速いときもあるのです。。

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

  1. 2008/12/27(土) 08:41:18|
  2. ORACLE

indexヒント句 ORACLE

indexヒント句の基本的な使い方を説明しておく。

selectの直後に

/*+ INDEX(TABLE名 INDEX名) */

を入れるだけだ。

例)
select /*+ INDEX(emp ind1) */ from emp;

ちなみにテーブル名とインデックス名の間はスペースを入れるのが基本だが、カンマでも大丈夫だった。
/*+ INDEX(TABLE名,INDEX名) */

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

  1. 2008/12/23(火) 08:19:51|
  2. ORACLE
次のページ

FC2Ad

FC2ブログ 一戸建て