Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Postgresql 如何在我的计算机上本地设置Postgres SQL数据库?_Postgresql_Pgadmin 4 - Fatal编程技术网

Postgresql 如何在我的计算机上本地设置Postgres SQL数据库?

Postgresql 如何在我的计算机上本地设置Postgres SQL数据库?,postgresql,pgadmin-4,Postgresql,Pgadmin 4,我已经配置了生产postgres sql数据库。 如果需要进行调试工作,我不希望与生产数据库交互,否则会影响用户群。相反,我需要创建一个本地环境,以便在调试期间不会更改生产数据库中的任何内容 我正在使用Postgres SQL 10和PGAdmin 4 我怎样才能做到这一点 谢谢。您可以使用docker设置测试环境 首先是docker-compose.yml文件: version: "3" services: db: image: postgres:10-alpine

我已经配置了生产postgres sql数据库。 如果需要进行调试工作,我不希望与生产数据库交互,否则会影响用户群。相反,我需要创建一个本地环境,以便在调试期间不会更改生产数据库中的任何内容

我正在使用Postgres SQL 10和PGAdmin 4

我怎样才能做到这一点


谢谢。

您可以使用docker设置测试环境

首先是docker-compose.yml文件:

version: "3"
services:
    db:
        image: postgres:10-alpine
        volumes:
            - ./local_path:/var/lib/postgresql/data
        ports:
            - "8000:5432"
        expose:
            - "5432"

    admin:
        image: dpage/pgadmin4
        environment:
            - PGADMIN_DEFAULT_EMAIL=admin@admin.com
            - PGADMIN_DEFAULT_PASSWORD=admin
        ports:
            - "8080:80"
有关如何设置环境变量以定义user/password/db name,请参阅docker postgres图像的文档

我不太熟悉pgadmin,但container具有最少的设置选项:

然后用
sudocker compose up
启动容器

db容器正在主机上的8000上发布其端口,因此应该与主机上运行的postgres服务器没有冲突

要连接:

psql -h localhost -p 8000 -U postgres
管理页面应该在主机上的8080端口可用。 将管理员连接到UI中的数据库时,主机名为
db
,端口为
5432

现在您已经设置了一个DOCKER容器,您也可以考虑使用它来生产:(