Linux で Oracle データベースをバックアップするためのスケジュールされたタスクの設定に関するチュートリアル

Linux で Oracle データベースをバックアップするためのスケジュールされたタスクの設定に関するチュートリアル

1. データベースの文字セットを確認する

データベースの文字セットは、Linux で設定された環境変数と一致している必要があります。一致していない場合は、文字化けが発生します。

次の 2 つの SQL ステートメントが見つかります。

nls_database_parameters t から * を選択します (t.parameter='NLS_CHARACTERSET')。
パラメータが 'NLS_CHARACTERSET' の場合、v$nls_parameters から * を選択します。

クエリ結果は次のとおりです: NLS_CHARACTERSET AL32UTF8

2. OracleユーザーとしてOracleサーバーにログインし、関連ディレクトリを作成します。

バックアップデータ用のディレクトリを作成します: mkdir -p /home/oracle/dbbak/data

バックアップ スクリプト ディレクトリを作成します。mkdir -p /home/oracle/dbbak/shell

エクスポートデータログディレクトリを作成します。mkdir /home/oracle/dbbak/log

3. スクリプトディレクトリにスクリプトファイルを作成する

vi /home/oracle/dbbak/shell/dbbak.sh

スクリプトの内容:

#[プレーン]ビュー プレーンコピー
#!/bin/sh
エクスポート ORACLE_BASE=/u01/app/oracle
エクスポート ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
エクスポート ORACLE_SID=orcl
エクスポート PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
DATA_DIR=/home/oracle/dbbak/data をエクスポートします。
LOGS_DIR=/home/oracle/dbbak/log をエクスポートします。
エクスポート DELTIME=`date -d "30日前" +%Y%m%d`
エクスポート BAKUPTIME=`日付 +%Y%m%d%H%M%S`
エクスポート NLS_LANG=AMERICAN_AMERICA.AL32UTF8
mkdir -p $DATA_DIR
mkdir -p $LOGS_DIR
echo "バックアップを開始しています..."
echo "バックアップファイルパス$DATA_DIR/$BAKUPTIME.dmp"
exp user/pwd@orcl ファイル=$DATA_DIR/orcl$BAKUPTIME.dmp ログ=$LOGS_DIR/orcl$BAKUPTIME.log
echo "30日前にファイルバックアップを削除します...ファイルパス: $DATA_DIR/orcl$DELTIME*.dmp"
rm -rf $DATA_DIR/orcl$DELTIME*.dmp
rm -rf $LOGS_DIR/orcl$DELTIME*.log
echo "ファイル bakup を正常に削除しました。"
echo "バックアップが完了しました。"

必要に応じて関連コンテンツを変更します。

export DELTIME=`date -d "30 days ago" +%Y%m%d` は、データを保持する期間を設定します。ここでは 30 日間です。ニーズやサーバーのストレージ容量に応じて変更できます。
NLS_LANG=AMERICAN_AMERICA.AL32UTF8 文字エンコード形式をエクスポートします。これは最初のステップの結果と一致している必要があります。
exp DISPLAY/DISPLAY@orcl ファイル=$DATA_DIR/orcl$BAKUPTIME.dmp ログ=$LOGS_DIR/orcl$BAKUPTIME.log

エクスポート ステートメント。テーブル全体をエクスポートします。必要に応じて変更できます。exp ユーザー名/パスワード@SID file=dmp ファイルのフル パス log=ログ ファイルのフル パス

4. スクリプトファイルの実行権限を変更する

chmod 777 dbbak.sh

実行できるかテストする: ./dbbak.sh

エクスポートは警告なしで正常に終了しました。これは、エクスポートに問題がないことを意味します。問題がある場合は解決してください。

5. スケジュールされたタスクを追加する

Oracleユーザー

crontab –e

挿入: 59 23 * * * /home/oracle/dbbak/shell/dbbak.sh

スクリプトが毎日23:59に実行されることを示します

crondを再起動します:

service crond restart

6. dmpファイルをインポートする

インポート後にテーブル データに問題が発生しないように、インポートする前に、対応するユーザーの下にあるすべてのテーブルを削除する必要があります。

sqlplus user/pwd // データベースにログインするためのユーザー名とパスワード SQL> SELECT 'drop table ' || table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME;

次にクエリ結果を実行します

テーブル フィールドのコメントが文字化けするのを避けるには、次の行を実行します。

    NLS_LANG=AMERICAN_AMERICA.AL32UTF8 をエクスポートします。
データをインポート:
imp DISPLAY/DISPLAY ファイル=/home/oracle/dbbak/data/orcl20191121113703.dmp fromuser=DISPLAY touser=DISPLAY ignore=y;
// ignore=y エラーを無視して実行を続行します

要約する

上記は、Linux で Oracle データベースをバックアップするためのスケジュールされたタスクの設定についてご紹介したものです。お役に立てば幸いです。ご質問がある場合は、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • LINUXでOracleデータベースユーザーを作成する方法の詳細な説明
  • Linux で大容量メモリ ページを持つ Oracle データベースを最適化する方法
  • Linux システムの Oracle データベースにおける ora12505 問題の解決方法
  • LinuxでのOracleデータベースの自動バックアップの詳細な説明
  • LinuxでOracleデータベースを作成する詳細なプロセス

<<:  MySQL ビューの紹介と基本操作のチュートリアル

>>:  vue.jsは画像のURLに従って画像をダウンロードします

推薦する

MYSQL マスタースレーブ レプリケーションの知識ポイントの概要

単一の MYSQL サーバーが現在の Web サイトのトラフィックに対応できない場合の最適化ソリュー...

問題におけるJS演算子の調査

問題は、誰もが「メモリ リーク」について知っていることです。一般的なシナリオはいくつかあります。クロ...

HTMLからPDFへの変換のための純粋なクライアント側と純粋なサーバー側の実装ソリューション

必要ユーザーがフォームに入力して「保存」をクリックすると、PDF ドキュメントを直接ダウンロードでき...

JS の配列トラバーサルについて、一般的なループをいくつ知っていますか?

序文基本的なデータ構造として、配列とオブジェクトはさまざまなプログラミング言語で重要な役割を果たしま...

MySQL 8.0.22 解凍版インストールチュートリアル(初心者向け)

目次1. リソースのダウンロード2. ソフトウェアを解凍する2.1 場所を選択する2.2 名前を変更...

すべてのブラウザとの完全な互換性を実現するために最適なプリセットを選択してください

各ブラウザの select タグのプロパティと各ブラウザのサポートが多少異なるため、各ブラウザでの選...

CentOS システムのディスク パーティションを拡張する方法

問題/障害/シナリオ/要件Eve-ng の仮想マシン OVA のハードディスクは 38G しかないた...

読み取り専用と無効の微妙な違いの詳細な説明

「読み取り専用」と「無効」はどちらも、ユーザーがフォーム フィールドの内容を変更できないようにします...

MySQL における explain の役割の詳細な説明

1. MYSQLインデックスインデックス: MySQL がデータを効率的に取得するのに役立つデータ構...

Vue.js で AntV X6 を使用する手順の例

目次0x0 はじめに0x1 インストール0x2 ノードサイドバー0x3 統合例0x0 はじめにプロジ...

クロスオリジン画像リソース権限(CORS 対応画像)

HTML 仕様書では、画像の crossorigin 属性が導入されています。適切なヘッダー情報 ...

Vueプロジェクトの支払い機能コードの詳細な説明

1. Alipay方式: Alipay メソッド: Alipay をクリックして支払い、バックエンド...

MySQL PXC は IST 送信のみで新しいノードを構築します (推奨)

需要シナリオ: 既存の PXC 環境には大量のデータがあります。新しく購入したサーバーをこのクラスタ...

jsのイベントオブジェクトを深く理解しましょう

JS でよく使用されるイベントは次の通りです。ページイベント: load;フォーカス イベント: フ...

Docker イメージに基づいて Go プロジェクトをデプロイする方法と手順

知識への依存Go クロスコンパイルの基礎Dockerの基礎Dockerfileカスタムイメージの基本...