PostgreSQL是世界上使用最广泛的数据库之一。面向初次使用PostgreSQL的开发人员介绍PostgreSQL。

关系数据库管理系统是许多网站和应用程序的关键组成部分,提供一种结构化的方式来存储,组织和访问信息。PostgreSQL是一个关系数据库管理系统(RDB),提供SQL查询语言的实现。许多小型和大型项目采用Postgres,它的优点是符合标准,并具有许多高级功能,例如可靠的事务处理和并发,没有读取锁定。

Windows上安装PostgreSQL的方法参照 Windows上下载及安装PostgreSQL

PostgreSQL版权

PostgreSQL是PGDB(PostgreSQL Global Development Group)开发社区进行开发的OSS(Open-source software)。即PostgreSQL是一款免费数据库软件,以BSD版权为基础定义的PostgreSQL版权。任何人,无论是商业的还是非商业的都可以免费使用它,并可以自由复制和修改它。没有义务发布源代码。

PostgreSQL版本

PostgreSQL版本为X.Y时,X为Major Version,Y为Minor Version。PostgreSQL10以前的版本把X分为2个数字如9.5.1(Major Version:9.5,Minor Version:1)。

每次发行Major Version和Minor Version,PostgreSQL都会发布发行说明。Minor Version版本升级主要是错误修复和安全修复。开发中的PostgreSQL版本还有α及β版本,Release之前版本被称为RC(Release Candidate)。

RHEL上安装Postgres

安装PostgreSQL的Repository。

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

禁用内置的PostgreSQL模块。

# dnf -qy module disable postgresql

安装PostgreSQL Server13。

# dnf install -y postgresql13-server

初始化postgres数据库。

# /usr/pgsql-13/bin/postgresql-13-setup initdb

启动Postgres并设置为开机自动启动。

# systemctl start postgresql-13
# systemctl enable postgresql-13
# systemctl status postgresql-13

连接PostgreSQL

安装Postgre数据库后的默认用户是postgres,切换到postgres用户后使用psql连接数据库。

# su - postgres
$ psql

修改密码

登录postgres数据库后,使用alter user命令修改设定。

postgres=# alter user postgres with password 'admin@123';

创建数据库

创建Database使用CREATE DATABASE命令,格式如下。

CREATE DATABASE name
    [ [ WITH ] [ OWNER [=] user_name ]
           [ TEMPLATE [=] template ]
           [ ENCODING [=] encoding ]
           [ LC_COLLATE [=] lc_collate ]
           [ LC_CTYPE [=] lc_ctype ]
           [ TABLESPACE [=] tablespace_name ]
           [ ALLOW_CONNECTIONS [=] allowconn ]
           [ CONNECTION LIMIT [=] connlimit ]
           [ IS_TEMPLATE [=] istemplate ] ]

选项较多,但最基本的格式如下。

CREATE DATABASE name

新建名为sample的数据库,如果没有明确指定,将复制模板数据库(template1)来创建数据库。而执行创建数据库命令的用户,需要是超级用户或者拥有CREATEDB的权限。

在这里是集创建sample数据库。

使用 \l 命令确认已创建的数据库。

可以确认到在上面创建的sample数据库。