暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Deploy PostgreSQL12 for Centos 7

Linux技术宅 2023-10-17
112

点击上方蓝字:Linux技术宅,关注我!!!

Every Day

江上渔者

[作者] 范仲淹 [朝代] 宋

江上往来人,但爱鲈鱼美。

君看一叶舟,出没风波里。

介绍

PostgreSQL是一种对象-关系型数据库管理系统,由加州大学伯克利分校计算机系开发,以POSTGRES,4.2版本为基础。


PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。它也可以用许多方法扩展,例如通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言等。任何人都可以以任何目的免费使用、修改和分发PostgreSQL。

官网

https://www.postgresql.org/

安装

  • 导入yum源

    yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm


    # 切换到阿里源
    sed -i "s@https://download.postgresql.org/pub@https://mirrors.aliyun.com/postgresql@g" etc/yum.repos.d/pgdg-redhat-all.repo
    • 安装服务

      yum install -y postgresql12 postgresql12-server


      #安装PostgreSQL 11
      yum install -y postgresql12 postgresql11-server


      #安装PostgreSQL 9.5
      yum install -y postgresql95 postgresql95-server
      • 初始化数据库

        sudo usr/pgsql-12/bin/postgresql-12-setup initdb
        #Initializing database ... OK
        • 启动服务并配置开机自启

          systemctl enable postgresql-12 --now


          # 9.x版本的服务名是postgresql-9.x

          修改账号密码

          • 进入命令行

            # 通过su命令切换linux用户为postgres会自动进入命令行
            su postgres
            • 启动SQL Shell

              psql
              • 修改密码

                ALTER USER postgres WITH PASSWORD 'NewPassword';

                配置远程访问

                • 开放端口

                  # 防火墙禁用状态下,无需变更
                  sudo firewall-cmd --add-port=5432/tcp --permanent
                  sudo firewall-cmd --reload
                  • 修改IP绑定

                    #修改配置文件
                    vi var/lib/pgsql/12/data/postgresql.conf


                    #将监听地址修改为*
                    #默认listen_addresses配置是注释掉的,所以可以直接在配置文件开头加入该行
                    listen_addresses='*'
                    • 允许所有IP访问


                      #修改配置文件
                      vi var/lib/pgsql/12/data/pg_hba.conf


                      #在文件尾部加入
                      host all all 0.0.0.0/0 md5
                      • 重启服务

                        #重启PostgreSQL服务
                        sudo systemctl restart postgresql-12

                        Shell常用语法示例

                        • 切换用户,启动SQL

                          su -i -u postgres
                          psql
                          • 数据库相关

                            #创建数据库
                            CREATE DATABASE mydb;


                            #查看所有数据库
                            \l


                            #切换当前数据库
                            \c mydb


                            #创建表
                            CREATE TABLE test(id int,body varchar(100));


                            #查看当前数据库下所有表
                            \d
                            • 用户与访问授权语法

                              #新建用户
                              CREATE USER test WITH PASSWORD 'test';


                              #赋予指定账户指定数据库所有权限
                              GRANT ALL PRIVILEGES ON DATABASE mydb TO test;


                              #移除指定账户指定数据库所有权限
                              REVOKE ALL PRIVILEGES ON DATABASE mydb TO test


                              # 权限代码:SELECT、INSERT、UPDATE、DELETE、TRUNCATE、REFERENCES、TRIGGER、CREATE、CONNECT、TEMPORARY、EXECUTE、USAGE

                              参考文档

                              PostgreSQL 教程

                              https://www.runoob.com/postgresql/postgresql-tutorial.html




                              分享、在看与点赞

                              只要你点,我们就是胖友

                              ​​​​

                              文章转载自Linux技术宅,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                              评论