[英]How to restore database from dump or sql file in docker using volume?
I am trying to run my database in docker which already have some data into it, But when I run it in docker it gives empty.. So how to restore my database in docker PostgreSQL image.
首先,啟動您的 docker posgtres 容器。 然后執行以下命令:
docker exec -i <CONTAINER> -U <USER> -d <DB-NAME> < <PATH-TO-DUMP>
<CONTAINER>
: 容器 ID 或容器名稱<USER>
: PostgreSQL DBMS 的用戶。 如果您使用沒有特定配置的標准 postgres 圖像,則用戶是postgres
<DB-NAME>
:數據庫的名稱。 該數據庫應該已經存在。 您可以通過指定名為POSTGRES_DB
的環境變量在運行 postgres 容器時創建數據庫<PATH-TO-DUMP>
:在此處指定轉儲文件的路徑示例: docker exec -i mypostgres psql -U postgres -d mydb < backup.sql
希望這可以幫助。
當我對 Pdi Jobs 進行 dockerize 處理時,我收到了這個錯誤。
錯誤(版本 8.3.0.0-371,buildguy 從 2019-06-11 11.09.08 構建 8.3.0.0-371):發生錯誤,處理將停止:2019/10/31 05:02:03 - 表輸入.0 - 嘗試連接到數據庫時發生錯誤 2019/10/31 05:02:03 - 表 input.0 - 2019/10/31 05:02:03 - 表 input.0 - 連接到數據庫時出錯:(使用 class org.postgresql.Driver) 2019/10/31 05:02:03 - 表 input.0 - 連接到 localhost:5432 被拒絕。 檢查主機名和端口是否正確以及 postmaster 是否接受 TCP/IP 連接。 2019/10/31 05:02:03 - 表 output.0 - 錯誤(版本 8.3.0.0-371,buildguy 從 2019-06-11 11.09.08 開始構建 8.3.0.0-371):初始化此步驟時發生錯誤:
我的 docker-compose 文件:
版本:'3.1'
服務:pdijobs:圖像:pdijobs 重新啟動:始終構建:上下文:。 dockerfile:Dockerfile
volumes:
- ./data/jasper-data:/usr/local/tomcat/webapps
ports:
- "8080:8080"
depends_on:
- datawarehouse-db
environment:
DB_TYPE: postgresql
DB_HOST: datawarehouse-db
DB_NAME: data-warehouse
DB_USER: postgres
DB_PASSWORD: admin
datawarehouse-db: image: postgres:10 restart: "no" environment: POSTGRES_DB: data-warehouse POSTGRES_USER: postgres POSTGRES_PASSWORD: admin
卷:postgres 數據:pgdata:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.