centos7下安装pgsql和pgadmin

https://www.postgresql.org/download/linux/redhat/ 官网链接

安装pgsql数据库

在这里插入图片描述
依此按照相应得选参数,之后一条一条命令的跑就行了。

修改pg_hba.conf
sudo vim /var/lib/pgsql/data/pg_hba.conf

插入一行:host all all 0.0.0.0/0 md5

说明:

配置文件目录可能带版本号,比如pgsql/9.5/data这种,自己找一下。
hba means host-based authentication
默认情况下,PostgreSQL不允许password authentication,不允许非localhost的主机,不允许远程登录。(所谓默认情况就是PostgreSQL刚装好时候conf文件里写的情况。)
插入的那一行,格式为CONNECTIONTYPE DATABASE USER ADDRESS METHDO
字段含义、各字段可选值、配置方式直接参考conf文件的注释。
提一句,ADDRESS那里自己配一下,不要太放开了,md5即用密码认证身份登录。

修改postgresql.conf

sudo vim /var/lib/pgsql/data/postgresql.conf

改一行:listen_addresses = '*'

说明:

postgresql.conf文件中涉及诸如:最大连接数、监听地址,监听端口、日志、内存、硬盘等等各种设置。文件注释详细,自己按需修改,用不到的先不做了解。
监听地址原值为localhost,这时只能本机访问,改成*或0.0.0.0或逗号分隔字符串都行。
很多值是change requires restart,需要重启postgresql-9.5服务(要带版本号)。

重启postgresql服务

systemctl restart postgresql-9.5.service

或者sudo service postgresql-9.5 restart

说明:

重启服务使之前修改的配置生效。

安装可视化工具pgadmin

https://www.pgadmin.org/ 官网链接

docker安装

首先在centos7上安装docker,具体的可以百度,文章太多了。
https://hub.docker.com/r/dpage/pgadmin4/ pgadmin的docker链接
pull命令

docker pull dpage/pgadmin4
运行
环境变量

容器将在启动时接受以下变量:

PGADMIN_DEFAULT_EMAIL

这是设置初始管理员帐户以登录pgAdmin时使用的电子邮件地址。此变量是必需的,必须在启动时设置。

PGADMIN_DEFAULT_PASSWORD

这是设置初始管理员帐户以登录pgAdmin时使用的密码。此变量是必需的,必须在启动时设置。

PGADMIN_ENABLE_TLS

默认:

如果未设置,容器将在端口80上侦听纯文本连接。如果设置为任何值,容器将在端口443上侦听TLS连接。

启用TLS时,必须提供证书和密钥。通常,这些应存储在主机文件系统上并从容器中安装。预期的路径是/certs/server.crt和/certs/server.key

PGADMIN_LISTEN_PORT

默认值:80或443(如果启用了TLS)

允许将服务器侦听的端口设置为特定值,而不是使用默认值。

GUNICORN_THREADS

默认值:25

调整Gunicorn服务器用于处理传入请求的线程数。这通常应保持原样,除非在可能增加的高负载系统中。

映射文件和目录

可以将以下文件或目录从容器映射到主机上,以允许在实例之间自定义和共享配置:

在/ var / lib中/ pgAdmin的

这是pgAdmin存储会话数据,用户文件,配置文件及其配置数据库的工作目录。将此目录映射到主机上可以轻松地在两者之间维护配置

调用容器。

/pgadmin4/config_local.py

此文件可用于覆盖pgAdmin中的配置设置。如果需要,可以使用特定于部署的值覆盖config.py中的设置。

/pgadmin4/servers.json

如果映射了此文件,则将在启动时加载其中找到的服务器定义。这允许将连接信息预先加载到容器中的pgAdmin实例中。注意,服务器定义仅在首次启动时加载,即在创建配置数据库时加载,而不是在使用相同配置数据库的后续启动时加载。请注意,服务器定义仅在首次启动时加载,即在创建配置数据库时加载,而不是在使用相同配置数据库的后续启动时加载。

/certs/server.cert

如果启用了TLS,则此文件将用作服务器TLS证书。

/certs/server.key

如果启用了TLS,则此文件将用作服务器TLS证书的密钥文件。

例子

在端口80上运行一个简单的容器:

docker pull dpage/pgadmin4
docker run -p 80:80 \
    -e "PGADMIN_DEFAULT_EMAIL=user@domain.com" \
    -e "PGADMIN_DEFAULT_PASSWORD=SuperSecret" \
    -d dpage/pgadmin4

使用主机上/ private / var / lib / pgadmin中的共享配置/存储目录运行TLS安全容器,并从主机上的/tmp/servers.json预加载服务器:

docker pull dpage/pgadmin4
docker run -p 443:443 \
    -v "/private/var/lib/pgadmin:/var/lib/pgadmin" \
    -v "/path/to/certificate.cert:/certs/server.cert" \
    -v "/path/to/certificate.key:/certs/server.key" \
    -v "/tmp/servers.json:/servers.json" \
    -e "PGADMIN_DEFAULT_EMAIL=user@domain.com" \
    -e "PGADMIN_DEFAULT_PASSWORD=SuperSecret" \
    -e "PGADMIN_ENABLE_TLS=True" \
    -d dpage/pgadmin4
python安装

这里我用的python3进行的安装
有两种方式,一种是从官网上下载对应的whl包,一种是直接从官网上下载源码包。原理大致相同,这里说whl包。
https://www.pgadmin.org/download/pgadmin-4-python-wheel/ 下载对应的whl包,之后进行安装

wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v4.6/pip/pgadmin4-4.6-py2.py3-none-any.whl
pip3 install ./pgadmin4-4.6-py2.py3-none-any.whl

之后找到对应的安装位置,我的位置是在/usr/local/python3/lib/python3.7/site-packages/pgadmin4

python3 setup.py

会对初始账号邮箱和密码进行初始化。

一定要记住这个初始账号和密码,不然之后修改会比较麻烦。

之后再运行

python3 pgAdmin4.py

服务基本就启动了,不过现在启动的是内网的服务,假如想用外网访问还需要进行配置:
https://www.pgadmin.org/docs/pgadmin4/dev/server_deployment.html 官方各种配置地址
当然假如你只是自己用或者几个人用的话就不必那么麻烦了,找到目录下的config.py文件

DEFAULT_SERVER = '0.0.0.0'

将server地址改成0.0.0.0就ok了。打开浏览器访问对应地址的5050端口就可以了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值