ユーザ用ツール

サイト用ツール


database:oracledb9i:backup_restore

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
database:oracledb9i:backup_restore [2023/05/19 18:40] mikotodatabase:oracledb9i:backup_restore [2023/07/14 16:20] (現在) – [SQLファイルを使う場合] mikoto
行 1: 行 1:
 ====== バックアップとリストア ====== ====== バックアップとリストア ======
 [[database:oracledb|一つ上へ]] [[database:oracledb|一つ上へ]]
 +
 +===== 物理バックアップとリストア =====
  
 アーカイブログモードかどうかの確認 アーカイブログモードかどうかの確認
行 7: 行 9:
 </code> </code>
  
-===== オフラインバックアップを行う =====+==== オフラインバックアップを行う ====
 データベースを止める データベースを止める
 <code sql> <code sql>
行 29: 行 31:
 </code> </code>
  
-===== オンラインバックアップを行う =====+==== オンラインバックアップを行う ====
 バックアップすべきファイルの場所を表示する バックアップすべきファイルの場所を表示する
 <code sql> <code sql>
行 39: 行 41:
  
 オンラインバックアップモードに変更 オンラインバックアップモードに変更
-<code>+<code sql>
 alter database begin backup; alter database begin backup;
 </code> </code>
行 55: 行 57:
 </code> </code>
  
-===== リストア =====+==== リストア ====
 データベースを停止する データベースを停止する
 <code sql> <code sql>
行 70: 行 72:
 alter database open; alter database open;
 </code> </code>
 +
 +===== 論理バックアップとリストア =====
 +
 +まずは移行対象ユーザーのオブジェクトを確認する
 +<code sql>
 +select object_name, object_type
 +from dba_objects
 +where owner='user'
 +order by object_name;
 +</code>
 +あるいは対象のユーザーにスイッチして確認
 +<code sql>
 +conn user/pass
 +select object_name, object_type
 +from user_objects;
 +</code>
 +
 +ユーザーのデフォルト表領域を確認するには
 +<code>
 +select tablespace_name from dba_segments where owner = 'schema_name'
 +</code>
 +
 +===== リストア手順 =====
 +まず、オブジェクトなどを初期化するためにスキーマを削除する
 +<code sql>
 +drop user 'user_name' cascade;
 +</code>
 +''cascade''オプションを付与すると、スキーマの削除と共に関連するオブジェクトを削除してくれる。
 +次に、スキーマを再作成する。その際、デフォルトの表領域を設定しておく。またはスキーマの作成後に割り当てる。
 +<code sql>
 +create user username identified by password default tablespace tbs_name;
 +</code>
 +<code sql>
 +alter user username default tablespace tbs_name;
 +</code>
 +<code>
 +imp userid=username/password@connect_string file=backup_file.dmp full=y ignore=y log=logfile.log
 +</code>
 +
 +^オプション^説明^
 +|userid|ユーザーID/パスワード@サービス名を設定する。|
 +|file|ダンプファイルのパスを指定|
 +|full|フルインポートかどうか。y/n|
 +|ignore|エラーがあっても処理を続行するかどうか。続行(y)/中止(n)|
 +|log|ログファイルの出力先を指定|
 +|commit|y/n 指定することでコミットを確定できる。|
 +
 +==== SQLファイルを使う場合 ====
 +<code>
 +sqlplus "sys/change_on_install as sysdba" @/path/to/sqlfile
 +imp userid='system/manage as sysdba' fromuser='FROMUSER' touser='TOUSER' commit=y file=/path/to/dmp log=/path/to/log
 +</code>
 +
 +<file | drop_and_create.sql>
 +DROP USER <user_name> CASCADE;
 +CREATE USER <user_name> IDENTIFIED BY <password> DEFAULT TABLESPACE <tbsp_name>;
 +GRANT UNLIMITED TABLESPACE TO <user_name>;
 +GRANT DBA TO <user_name>;
 +GRANT CONNECT TO <user_name>;
 +GRANT RESOURCE TO <user_name>;
 +QUIT;
 +</file>
  
database/oracledb9i/backup_restore.1684489252.txt.gz · 最終更新: 2023/05/19 18:40 by mikoto