豚吐露@wiki

Backupの方法

最終更新:

Bot(ページ名リンク)

- view
管理者のみ編集可

HotBackupの方法

Windows Server 2008R2 SP1
Oracle Database 11g 11.2.0.1.0-64bit

注意①
SQL*Plus実行した後のコマンドプロンプト使ってexpdp使うと延々と同じコマンドが実行される謎な状況になるみたい。(´・ω・`)
とりあえず、別のコマンドプロンプト立ち上げれば問題無いみたいだけど...これはSQL*Plusが悪いのか?expdpが悪いのか?

注意②
実行するdir pathに日本語が含まれないように注意!!


■ expdpを利用したschema単位のbackup方法

> :::cd C:\app\oracle\product\11.2.0\dbhome_1\BIN ::: ちゃんとinstallされてればpathが通ってるので不要なハズ。
> expdp 【UserID】/【Password】@【SID】 ^
    DUMPFILE=【DumpFileName】 ^
    SCHEMAS=【SchemasName】 ^
    LOGFILE=【LogFileName】

e.g.)
> expdp hoge/hogepass@HOGEDB ^
    DUMPFILE=hogedb_hoge.dmp ^
    SCHEMAS=hoge ^
    LOGFILE=hogedb_hoge_exp.log

久々に使うと使い方忘れてて軽くハマったので、対処法もメモ。


■ impdpを利用したschema単位のbackupを復元する方法

Oracle Database 11gR2をinstall

空のDBを作成。

必要な物を作成。
  • TABLESPACE

dump fileの配置。
C:\app\Oracle\admin\【SID】\dpdump

userはdumpに含まれてるだろうから、作らんでもok。

import。
> impdp 【UserID】/【Password】@【SID】 ^
    DUMPFILE=【DumpFileName】 ^
    SCHEMAS=【SchemasName】 ^
    LOGFILE=【LogFileName】

■ impdpを利用したtable単位のbackupを復元する方法

> impdp 【UserID】/【Password】@【SID】 ^
   TABLES=【TableName】 ^
   TABLE_EXISTS_ACTION=append ^
   DATA_OPTIONS=skip_constraint_errors ^
   CONTENT=data_only ^
   DUMPFILE=【DumpFileName】 ^
   LOGFILE=【ImportLogFileName】


エクスポート失敗例①:OUTPUT_FILENAMEにdir名が含まれてた場合
どうやらfile名のみ記載しないとダメ。出力されるdirは固定で『C:\app\ORACLE_BASEDIR\admin\DB_NAME\dpdump』になるみたい。
※パラメータに保持されてるから、パラメータの値を変えてやれば出力先の変更は可能。パラメータ名なんだったっけ...

> expdp hoge/pass@HOGEDB dumpfile=C:\wk\Oracle\oracle.dmp schemas=hoge
あと、日本語が含まれてても出力されるけど...化けます。(´・ω・`)

Export: Release 11.2.0.1.0 - Production on 月 9月 14 15:12:24 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

接続先: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real [[Application]] Testing options
ORA-39001: 引数値が無効です
ORA-39000: ダンプ・ファイル指定が無効です
ORA-39088: ファイル名にパス指定を含めることはできません


エクスポート失敗例②:サービス名書き忘れた場合
> expdp hoge/pass dumpfile=oracle.dmp schemas=hoge

Export: Release 11.2.0.1.0 - Production on 月 9月 14 15:12:16 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

UDE-01017: 操作でOracleエラー1017が発生しました
ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。

ユーザー名:
UDE-00005: 入力データの読取り中に予期しないファイルの終わりになりました


エクスポート失敗例③:スキーマ名間違えてた場合
> expdp hoge/pass@HOGEDB dumpfile=oracle.dmp schemas=HOGEDB
ふらっと間違えることありますよね...orz

Export: Release 11.2.0.1.0 - Production on 月 9月 14 15:09:33 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

接続先: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39001: 引数値が無効です
ORA-39170: スキーマ式'HOGEDB'がどのスキーマにも対応していません。


エクスポート失敗例④:LOG_FILENAMEにdir名が含まれてた場合
logfile名も一緒。dir名を含むpathを指定できない。dumpfileとlogfileを一緒に設定してると、logの方が優先して怒られるみたい。

Export: Release 11.2.0.1.0 - Production on 月 9月 14 15:07:55 2015

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

接続先: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORA-39002: 操作が無効です
ORA-39070: ログ・ファイルをオープンできません。
ORA-39088: ファイル名にパス指定を含めることはできません



更新日: 2015年10月16日 (金) 13時32分50秒

名前:
コメント:

すべてのコメントを見る
記事メニュー
ウィキ募集バナー