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. スクリプトファイルの実行権限を変更する
実行できるかテストする: ./dbbak.sh エクスポートは警告なしで正常に終了しました。これは、エクスポートに問題がないことを意味します。問題がある場合は解決してください。 5. スケジュールされたタスクを追加する Oracleユーザー
挿入: 59 23 * * * /home/oracle/dbbak/shell/dbbak.sh スクリプトが毎日23:59に実行されることを示します crondを再起動します: 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 ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
>>: vue.jsは画像のURLに従って画像をダウンロードします
<br />これまで、Web ページのプリンタ対応バージョンを作成するには、印刷したとき...
最近、webpackの使い方を学んでいたときに、webpack-replace-loaderの設定正...
最近、セキュリティ製品をテストする必要があったため、mariadb の起動ユーザーを root に調...
Samba サービス:このコンテンツはサンバサービス学習者の参考用ですケースの説明:企業の管理者は、...
1. IE8 の getElementById は id のみをサポートし、name はサポートしま...
目次序文No.1 焦点No.2 複雑な状態ロジックの抽出No.3 複数状態操作の抽出要約する序文Re...
これは今日私が踏んだ4つの落とし穴を記念したものです...落とし穴1:地元のせいエラー:エラー 39...
目次1. オブジェクトをマップとして扱わない1. 未定義のプロパティはプロトタイプチェーンを通じてア...
1. Mariaソースを追加する vi /etc/yum.repos.d/MariaDB.repo...
ウィンドウの中央にブロック要素の位置を設定する方法ブロック要素をウィンドウの中央に配置する上記の方法...
1. ダウンロード参考: 2. D:\MySQL\mysql-5.7.24 などの固定の場所に解凍し...
現象システムは Linux システムカーネルを正常にコンパイルできましたが、SVN をインストールし...
目次マスターの後ろの秒数オリジナルの実装最終マスタータイムスタンプマスターとのクロック差他の実行時間...
この記事では、参考までに、簡単な計算機を実装するためのJavaScriptの具体的なコードを紹介しま...
SQL 左結合、右結合、内部結合、自然結合 さまざまな結合の概要SQL には、左結合、右結合、内部結...