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に従って画像をダウンロードします
ウェブサイトの開発とメンテナンスのコストが削減されるだけでなく、コードもよりセマンティックになります...
目次序文1. インストール1.公式サイトからダウンロード2. 構成を作成する3. MySQLを初期化...
1. 単純な三角形を実装するCSS ボックス モデルの境界線を使用すると、次のような三角形を実現で...
序文先ほどのプロジェクトを参考にすると、環境は整いました。プロジェクトの準備と検証の段階で、問題が発...
通常のプロジェクト開発中に、MySQL バージョンが 5.6 から 5.7 にアップグレードされた場...
MongoDBインストールYumを使用してインストールすることを選択する1. repoファイルを作成...
WeChat アプレットのスクロール ビューでは、プルアップして読み込むときにバグが多く発生します...
1. SELECT句を使用して複数のテーブルをクエリするSELECT フィールド名 FROM tab...
目次序文インストールと設定1. Echartsをインストールする2. Echartsをグローバルに導...
mysql の存在する例と存在しない例の詳細な説明テーブルA |列1 | 列1 | 列3 |テーブル...
1 はじめにデータベース内のデータを操作するための SQL 文を記述するときに、いくつかの不快な問題...
ユーザーがプライバシーを意識するようになり、オンライン トラッキングに対する予防策を強化するにつれて...
目次1. 概念をすぐに認識する: 2. ローカルフィルター: 3. グローバルフィルター: 4. 拡...
この記事の例では、ショッピングカート機能を実装するためのvuexの具体的なコードを参考までに共有して...
Web ページには、非常に複雑な HTML 構造があります。CSS を使用して関連するスタイルを定義...