PostgreSQL的安装和卸载,远程连接

一,PostgreSQL的卸载

  1. 查看版本号和系统类别:

    cat /etc/redhat-release
    
  2. 如果是redhat/centos:(yum install)

    1. yum 删除软件包:

      yum remove postgresql*
      
    2. 删除相关目录文件:

      rm -rf  /var/lib/pgsql
      rm -rf  /usr/pgsql*
      
    3. 删除pg相关用户组/用户

      userdel -r postgres
      groupdel postgres
      
  3. rpm包安装的使用以下方法来卸载

    1. 列出已安装的包, 并使用yum remove逐一删除。

      $ rpm -qa | grep postgresql
      postgresql-docs-8.0.3-1.1AX
      postgresql-libs-8.0.3-1.1AX
      freeradius-postgresql-1.0.1-3.RHEL4.1AX
      postgresql-Python-8.0.3-1.1AX
      postfix-2.1.5-4.2.2AX
      postgresql-8.0.3-1.1AX
      postgresql-contrib-8.0.3-1.1AX
      postgresql-pl-8.0.3-1.1AX
      postfix-pflogsumm-2.1.5-4.2.2AX
      compat-postgresql-libs-7.4.7-2.RHEL4.1.1AX
      postgresql-tcl-8.0.3-1.1AX
      postgresql-devel-8.0.3-1.1AX
      postgresql-jdbc-8.0.3-1.1AX
      postgresql-odbc-08.00.0100-1.1AX
      postgresql-server-8.0.3-1.1AX
      
      说明:
      查询命令格式: 
      rpm -q ( or --query) options 
      参数: 
      pkg1 ... pkgN :查询已安装的软件包 
      详细选项
      -a                  查询所有安装的软件包 
      而grep post则是查找所有列表中包含"post"字符串的项
      
    2. 找到了旧有的版本,则卸载掉他们

      rpm -ev postgresql-docs-8.0.3-1.1AX
      rpm -ev --nodeps postgresql-libs-8.0.3-1.1AX
      rpm -ev freeradius-postgresql-1.0.1-3.RHEL4.1AX
      rpm -ev postgresql-python-8.0.3-1.1AX
      rpm -ev postfix-2.1.5-4.2.2AX
      rpm -ev --nodeps postgresql-8.0.3-1.1AX
      rpm -ev postgresql-contrib-8.0.3-1.1AX
      rpm -ev postgresql-pl-8.0.3-1.1AX
      rpm -ev postfix-pflogsumm-2.1.5-4.2.2AX
      rpm -ev --nodeps compat-postgresql-libs-7.4.7-2.RHEL4.1.1AX
      rpm -ev postgresql-tcl-8.0.3-1.1AX
      rpm -ev postgresql-devel-8.0.3-1.1AX
      rpm -ev postgresql-jdbc-8.0.3-1.1AX
      rpm -ev postgresql-odbc-08.00.0100-1.1AX
      rpm -ev postgresql-server-8.0.3-1.1AX
      说明:
      删除命令格式:
      rpm -e ( or --erase) options pkg1 ... pkgN 
      参数 
      pkg1 ... pkgN :要删除的软件包 
      详细选项 
      --nodeps    不检查依赖性 
      通用选项 
      -v  显示附加信息 
      -vv 显示调试信息
      
    3. 删除服务管理脚本

      rm -f /etc/init.d/postgresql-10
      
  4. 如果是ubuntu (apt-get install)

    dpkg -l |grep postgresql
    

    删除安装包

    sudo apt-get --purge remove postgresql\*
    
    

    删除相关配置文件及用户信息

    sudo rm -r /etc/postgresql/
    sudo rm -r /etc/postgresql-common/
    sudo rm -r /var/lib/postgresql/
    sudo userdel -r postgres
    sudo groupdel postgres
    
    

二,linux上PostgreSQL的安装

2.1 使用yum库安装postgresql11

https://www.postgresql.org/download/linux/redhat/

  1. 下载pg的rpm库

    yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
    
    
  2. 下载客户端包

    yum -y install postgresql11
    
    
  3. 安装服务器软件包(可选)

    yum -y install postgresql11-server
    
    
  4. 初始化数据库并启用开机自启(可选)

    /usr/pgsql-11/bin/postgresql-11-setup initdb
    systemctl enable postgresql-11
    systemctl start postgresql-11
    
    

2.2 使用rpm安装postgresql11.4

1.下载rpm包

下载地址: https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/

或者直接执行wget下载

wget https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7.2-x86_64/postgresql11-11.4-1PGDG.rhel7.x86_64.rpm
wget https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7.2-x86_64/postgresql11-libs-11.4-1PGDG.rhel7.x86_64.rpm
wget https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7.2-x86_64/postgresql11-server-11.4-1PGDG.rhel7.x86_64.rpm

2.安装

先安装相应依赖

yum install -y libicu systemd-sysv

安装rpm包,需要按照这个顺序安装,卸载就反序卸载

rpm -ivh postgresql11-libs-11.4-1PGDG.rhel7.x86_64.rpm
rpm -ivh postgresql11-11.4-1PGDG.rhel7.x86_64.rpm
rpm -ivh postgresql11-server-11.4-1PGDG.rhel7.x86_64.rpm

3.数据库初始化

/usr/pgsql-11/bin/postgresql-11-setup initdb
#Initializing database ... OK

4.启动

systemctl enable postgresql-11  #设置开机启动psql
systemctl start postgresql-11   #启动postgresql

5.查看状态

[root@7beccf3c3c2c pg11.4]# systemctl status postgresql-11
● postgresql-11.service - PostgreSQL 11 database server
   Loaded: loaded (/usr/lib/systemd/system/postgresql-11.service; enabled; vendor preset: disabled)
   Active: active (running) since Fri 2019-07-26 08:00:06 UTC; 11min ago
     Docs: https://www.postgresql.org/docs/11/static/
  Process: 390 ExecStartPre=/usr/pgsql-11/bin/postgresql-11-check-db-dir ${PGDATA} (code=exited, status=0/SUCCESS)
 Main PID: 395 (postmaster)
   CGroup: /system.slice/docker-7beccf3c3c2c90152d9c6eeb67fc2f4bdb854426e27e1e765a91011415f9650e.scope/system.slice/postgresql-11.service
           ├─395 /usr/pgsql-11/bin/postmaster -D /var/lib/pgsql/11/data/
           ├─396 postgres: logger   
           ├─398 postgres: checkpointer   
           ├─399 postgres: background writer   
           ├─400 postgres: walwriter   
           ├─401 postgres: autovacuum launcher   
           ├─402 postgres: stats collector   
           └─403 postgres: logical replication launcher   

Jul 26 08:00:06 7beccf3c3c2c systemd[1]: Starting PostgreSQL 11 database server...
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.251 UTC [395] LOG:  listening on IPv6 address "::1", port 5432
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.251 UTC [395] LOG:  listening on IPv4 address "127.0.0.1", port 5432
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.253 UTC [395] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.254 UTC [395] LOG:  listening on Unix socket "/tmp/.s.PGSQL.5432"
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.267 UTC [395] LOG:  redirecting log output to logging collector process
Jul 26 08:00:06 7beccf3c3c2c postmaster[395]: 2019-07-26 08:00:06.267 UTC [395] HINT:  Future log output will appear in directory "log".
Jul 26 08:00:06 7beccf3c3c2c systemd[1]: Started PostgreSQL 11 database server.

6.卸载

rpm -e postgresql11-server-11.4-1PGDG.rhel7.x86_64
rpm -e postgresql11-11.4-1PGDG.rhel7.x86_64
rpm -e postgresql11-libs-11.4-1PGDG.rhel7.x86_64

rm -rf /usr/pgsql-11/
rm -rf /var/lib/pgsql/

三,Windows上PostgreSQL的安装

这里使用 EnterpriseDB 来下载安装,EnterpriseDB 是全球唯一一家提供基于 PostgreSQL 企业级产品与服务的厂商。

下载地址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads。

双击下载安装包,开始安装

可以修改安装路径

选择安装组件,不懂的选就是全部勾上:

设置数据库路径

设置超级用户的密码

设置端口号,可以直接用默认就行

直接点 Next

点 Next

去掉勾选,直接点 Finish

打开 pgAdmin 4

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XLRbQ9XV-1586511811357)(img/1586316580434.png)]

pgAdmin 主页如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YyL3VFAb-1586511811358)(img/1586316618461.png)]

点击左侧的 Servers > Postgre SQL 11

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P5rQOTRJ-1586511811358)(img/1586316663436.png)]

输入密码,点击 OK 即可

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hBsGgfrv-1586511811358)(img/1586316708070.png)]

控制面板如下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hQkINWkR-1586511811359)(img/1586316917140.png)]

打开 SQL Shell(psql)

在这里插入图片描述

四,使用pgAdmin4进行远程连接

https://www.cnblogs.com/XiaoGuanYu/p/9892321.html

  1. 修改用户密码

    su - postgres 
    切换用户,执行后提示符会变为 '-bash-4.2$'
    
    psql -U postgres
    登录数据库,执行后提示符变为 'postgres=#'
    
    ALTER USER postgres WITH PASSWORD 'postgres';   
    设置postgres用户密码为postgres
    
    \q 
    退出数据库
    
    
  2. 开启远程访问

    vi /var/lib/pgsql/11/data/postgresql.conf
    
    修改
    #listen_addresses = 'localhost'
    为 
    listen_addresses='*'
    当然,此处'*'也可以改为任何你想开放的服务器IP
    
    
  3. Trusted remote connection

    vim /var/lib/pgsql/11/data/pg_hba.conf
    
        修改如下内容,信任指定服务器连接
    
        # IPv4 local connections:
    
        host    all            all      127.0.0.1/32      ident
    	host    all            all      192.168.139.101/22      md5
        host all all 192.168.139.101/22 (需要连接的服务器IP) md5
    
    
  4. 重启服务

    systemctl restart postgresql-11
    
    
  5. 测试连接

在这里插入图片描述

五,pgAdmin4设置为中文

  1. 首先,我们运行pgAdmin4,进入如下的软件界面,此时默认的界面语言为英文。

在这里插入图片描述
2. 用户点击菜单栏上的【file】按钮,在呼出的文件选项中选择【preferences】

在这里插入图片描述
3. 紧接着,弹出了如下所示的pgAdmin4的首选项设置窗口。

在这里插入图片描述
4. 在左侧的首选下列表下找到【Miscellaneous】的杂项,然后在杂项下拉菜单中选择【user language】的界面语言。

在这里插入图片描述
5. 此时语言默认为“English”,我们点击下拉菜单,然后在语言列表中找到并选择【Chinese(simplified)】的简体中文语言,刷新即可。

在这里插入图片描述

posted @ 2020-04-10 20:58  陈小哥cw  阅读(521)  评论(0编辑  收藏  举报