docker での psql データベースのバックアップとリカバリの詳細な説明

docker での psql データベースのバックアップとリカバリの詳細な説明

1. DockerでのPostgresデータベースのバックアップ

注文:

docker exec it db_13 pg_dumpall -c -U mrp > mrp217

説明する:

docker exec it [docker内のイメージデータベース名] pg_dumpall -c -U [ユーザー名] > [エクスポートするデータベース名]

2. Postgresデータベースのバックアップ

注文:

pg_dump --host xxxxx --port 5434 --username odoo > odoo217 mrp

説明する:

pg_dump –host [アドレス] –port [ポート] –username [データベースユーザー名] > [エクスポートされたファイル] [データベース名]

3. ローカルに復元し、コマンドラインから直接Dockerに復元する

psql -U odoo (ユーザー名) -h localhost -p 6543 (docker によってマップされたポート) -d odoo (データベース名) -f /media/liang/_dde_data/mrp217

4. dockerでデータベースを復元する前に、古いデータベースを削除し、新しいデータベースを作成してから復元します(定期的なデータベース更新)

docker exec -it db13 bash #daockerと入力
psql -U odoo (ユーザー名) -d postgres # psqlデータベースを入力します

入力後、データベース操作を実行します。
drop databasebse odoo; # データベースを削除します
create database odoo; #新しいデータベースを作成し、dockersを終了してデータベースを復元します

4.1 別の回復、私のものはここには適用できません

pg_dump -h localhost -p 5432 -U odoo -F c -b -v -f "/usr/20200214.backup" mrp in docker、機能: docker データベースから docker にバックアップ
docker cp db_mrp_sync:/usr/20200214.backup ./ docker 外部、機能: docker から docker 外部のサーバーへ
scp xxxxxx:/home/xxx/20200214.backup D:\ リモートに接続し、ローカルの場所にインポートします
pg_restore -d <データベース名> /path/to/your/file/mrp.sql -c -U <ユーザー名>

5. テストサーバーからローカルにインポートする

scp xxxx:/home/xxx/mrp217 D:\ リモートに接続し、シェルツールをインストールせずにローカルの場所にインポートします
scp ip: テストサーバー内のバックアップファイルのパス、インポートするローカルパス

上記は123WORDPRESS.COMの編集者がまとめた内容です。お役に立てれば幸いです。

以下もご興味があるかもしれません:
  • docker 環境でのデータベース バックアップ (postgresql、mysql) のサンプル コード
  • Dockerコンテナは定期的にデータベースをバックアップし、指定されたメールボックスに送信します(設計アイデア)

<<:  Mysql ルートユーザーアカウントのパスワードをリセットする問題を解決する

>>:  Node.js の fs モジュールと Path モジュールのメソッドの詳細な説明

推薦する

Windows 10 で MySQL の解凍バージョンをインストールする方法の詳細なグラフィック チュートリアル

MySQL のインストールは、インストール バージョンと解凍バージョンに分かれています。インストール...

CentOS はローカル yum ソースを使用して LAMP 環境を構築するグラフィック チュートリアル

この記事では、ローカル yum ソースを使用して CentOS 上に LAMP 環境を構築する方法に...

面接官はReactのライフサイクルについてよく質問します

ReactライフサイクルReactのライフサイクルを理解するのに役立つ2つの図React ライフサイ...

Vue はボタンをクリックしてファイルをダウンロードする操作コードを実装します (バックエンド Java)

前回の記事では、ボタンをクリックしてファイルをダウンロードするVueの機能を紹介しました。今日は、ボ...

Ubuntu 20.04でルートアカウントを有効にする方法

Ubuntu 20.04 をインストールした後、デフォルトでは root アカウントのログイン権限が...

LinuxベースのSelenium環境を構成し、操作を実装する

1. Linux で Selenium を使用する1. Chromeをインストールする次のコマンドを...

MySQLのパフォーマンスが突然低下する理由

場合によっては、SQL ステートメントが通常どおり、非常に速く実行される状況に遭遇することがあります...

CSSは、閉じることができるマスクレイヤーを備えたポップアップウィンドウ効果を実装します。

実際の開発ではポップアップウィンドウがよく使われます。CSS3を勉強していたときに、閉じることができ...

HiveメタデータをMySQLに設定するプロセス全体

Hiveのインストールディレクトリで、confディレクトリに入り、hive-site.xmlファイル...

CSS3 で背景の透明化と不透明テキストを実装するサンプルコード

最近、画像上に半透明の背景でテキストを表示する必要があるという要件に遭遇しました。その効果は次のよう...

JavaScriptカスタムオブジェクトメソッドの概要

目次1. オブジェクトを使用してオブジェクトを作成する2. コンストラクタを使用してオブジェクトを作...

Vue グローバル フィルターの概念、注意事項、基本的な使用方法

目次1. フィルターの概念1. グローバルフィルターのフォーマットをカスタマイズする2. フィルター...

Windows 10 に TomCat をインストールするチュートリアル図

WindowsにTomCatをインストールするこの記事では、WindowsプラットフォームにTomC...

JavaScriptで継承を実装するいくつかの方法

目次構造継承(callで実装)プロトタイプチェーン継承(プロトタイプチェーンの助けを借りて実装)複合...

Windows 8 での MySQL Community Server 5.6 のインストールと設定のチュートリアル

この記事では、Windows 8 での MySQL5.6 のインストールと設定のチュートリアルを記録...