• 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)】的简体中文语言,刷新即可。

    在这里插入图片描述

  • 相关阅读:
    🏆【Java技术专区】「编译器专题」彻底你明白什么是JIT编译器(Just In Time编译器)
    Sql server日期函数用法
    Oracle 11g密码过期问题及解决方案
    该驱动程序不支持 SQL Server 8 版
    maven添加sqlserver的jdbc驱动包
    com.microsoft.sqlserver.jdbc.SQLServerException: 对象名 ‘DUAL‘ 无效 | Druid双数据源MySQL+SQL server
    用Java连接SQL Server2000数据库的两种方法与jDTS
    无法远程连接Sql Server 2000解决方案
    为 SQL Server 2000 数据库添加用户名和密码
    Oracle的number数据类型
  • 原文地址:https://www.cnblogs.com/chenxiaoge/p/13335421.html
Copyright © 2020-2023  润新知