zoukankan      html  css  js  c++  java
  • centos7 安装postgresql

    在mysql被收购之后,大家发现了另一款开源的数据库,postgresql,虽然centos自带版本9.2也可以用,但是最近的几次升级支持了更多更新的内容,比如,PostgreSQL有一个MySQL无法比拟的优势,那就是PostGIS,PostGIS可以完美支持空间数据存储和空间分析;从PostgreSQL9.3起就内置了JSON数据类型,而9.4又开始支持JSONB,这标志着PostgreSQL实际上已经是一个关系型数据库和NoSQL数据库的结合体了、虽然postgresql是一个关系型数据库,但是近几次更新PostgreSQL的NoSQL性能有益到甚至超过了MongoDB。

    系统自带版本9.2略低,近几次升级功能较多,本次安装最新版本。

    一、更新源

    地址:https://yum.postgresql.org/repopackages.php

    这里我选择centos7-x86 64 右键 复制链接。

    在centos系统中执行

    yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm -y 
    二、安装postgresql

    先查看postgresql源

    yum list | grep postgresql


    我们需要安装的是这两个。postgresql10-contrib postgresql10-server

    yum install postgresql10-contrib postgresql10-server -y
    三、初始化数据库

    Postgresql安装目录是/usr/pgsql-10,而Postgresql的数据目录是/var/lib/pgsql/版本号/data目录

    在这里,如果在装系统开始分配var空间足够大则可以继续,如果分配var空间不够,我们需要更改数据目录,在这里,我们假设var空间足够大。直接开始初始化。

    /usr/pgsql-10/bin/postgresql-10-setup initdb

    显示这个代表初始化成功

    四、启动数据库并设置开机启动

    sudo systemctl start postgresql-10
    sudo systemctl enable postgresql-10.service
    五、登录postgresql并设置密码

    postgresql在安装时默认添加用户postgres

    输入

    su - postgres
    psql
    进入数据库

    样子长这样

    我们来设置密码:

    ALTER USER postgres WITH PASSWORD '密码';

    退出:q

    备注其他:列出所有库l  列出所有用户du 列出库下所有表d

    六、默认情况下postgresql是不用密码不支持远程登录的。我们需要修改配置文件

    vi /var/lib/pgsql/10/data/pg_hba.conf
    原本长成这样

    我们需要改成

    保存退出

    我们改远程访问

    vi /var/lib/pgsql/10/data/postgresql.conf
    往下拉我们会看到

    需要改成

    重启postgresql

    systemctl restart postgresql-10
    七、登录postgresql

    postgresql在安装时默认添加用户postgres

    输入

    su - postgres
    psql
    进入数据库


    此时已经可以进行验证密码

    八、远程连接数据库

    我们用pgadmin进行验证连接

    输入相关信息

    此时我们可以看到相关数据了

    九、我们测试创建数据库及创建用户

    因为postgres属于superuser,我们需要创建部分低权限用户

    创建数据库

    CREATE DATABASE testdb;
    创建用户

    CREATE USER testuser CREATEDB LOGIN PASSWORD 'testpassword';
    将testdb所有权限赋给用户testuser

    GRANT ALL ON DATABASE testdb TO testuser;
    样子:

    查看现有数据库及用户

    十、删除数据库及测试用户

    删除数据库

    drop database testdb;


    删除用户

    drop role testuser;

  • 相关阅读:
    .net ORM架构列表
    C#向win32程序窗口中的文本框设置指定文本
    C#串口通信总结
    MPF配置文件参数管理
    WF牛人们的资源
    BDD初步
    DevExpress 汉化(简单、实用、快速)
    WPF中的命令简述(Command)
    Devexpress汉化资源
    Silverlight架构列表
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13317436.html
Copyright © 2011-2022 走看看