Linux系统:Centos7下搭建PostgreSQL关系型数据库

栏目: IT技术 · 发布时间: 5年前

内容简介:本文源码:PostgreSQL是一个功能强大的开源数据库系统,具有可靠性、稳定性、数据一致性等特点,且可以运行在所有主流操作系统上,包括Linux、Unix、Windows等。PostgreSQL是完全的事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程,支持了大多数的SQL:2008标准的数据类型,包括整型、数值型、布尔型、字节型、字符型、日期型、时间间隔型和时间型,它也支持存储二进制的大对像,包括图片、声音和视频。对很多高级开发语言有原生的编程接口API,如C/C++、Java、等,也包含各

本文源码: GitHub·点这里 || GitEE·点这里

一、PostgreSQL简介

1、数据库简介

PostgreSQL是一个功能强大的开源数据库系统,具有可靠性、稳定性、数据一致性等特点,且可以运行在所有主流操作系统上,包括 Linux 、Unix、Windows等。PostgreSQL是完全的事务安全性数据库,完整地支持外键、联合、视图、触发器和存储过程,支持了大多数的SQL:2008标准的数据类型,包括整型、数值型、布尔型、字节型、字符型、日期型、时间间隔型和时间型,它也支持存储二进制的大对像,包括图片、声音和视频。对很多高级开发语言有原生的编程接口API,如C/C++、 Java 、等,也包含各种文档。

2、高度开源

PostgreSQL的源代码可以自由获取,它的授权是在非常自由的开源授权下,这种授权允许用户在各种开源或是闭源项目中使用、修改和发布PostgreSQL的源代码。用户对源代码的可以按用户意愿进行任何修改、改进。因此,PostgreSQL不仅是一个强大的企业级数据库系统,也是一个用户可以开发私用、网络和商业软件产品的数据库开发平台。

二、Centos7下安装

1、安装RPM

RPM软件包管理器,一种用于互联网下载包的打包及安装工具,它包含在部分Linux分发版中。

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

2、安装客户端

yum install postgresql11

3、安装服务器端

yum install postgresql11-server

4、安装依赖包

yum install postgresql11-libs
yum install postgresql11-contrib
yum install postgresql11-devel

5、初始化和启动

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

6、重置密码

passwd postgres

7、登录服务

su - postgres
psql

8、安装Vim命令

yum -y install vim*

9、配置远程访问

# 修改01
vim /var/lib/pgsql/11/data/postgresql.conf
listen_addresses = 'localhost' 
修改为
listen_addresses = '*'  

# 修改02
vim /var/lib/pgsql/11/data/pg_hba.conf
添加内容
host  all  all  0.0.0.0/0 trust ## 修改后需要重启

10、开放端口

firewall-cmd --query-port=5432/tcp

firewall-cmd --add-port=5432/tcp

firewall-cmd --add-port=5432/tcp --zone=public --permanent

11、重新启动

systemctl restart postgresql-11

三、创建数据库

1、创建用户

CREATE USER root01 WITH PASSWORD '123456';
CREATE ROLE;

2、创建数据库

CREATE DATABASE db_01 OWNER root01;
CREATE DATABASE;

3、权限授予

GRANT ALL PRIVILEGES ON DATABASE db_01 TO root01;
GRANT

4、退出命令

\q:退出 SQL 编辑
exit:退出脚本

四、基本操作

1、创建表结构

-- 用户表
CREATE TABLE pq_user (
	ID INT NOT NULL,
	user_name VARCHAR (32) NOT NULL,
	user_age int4 NOT NULL,
	create_time TIMESTAMP (6) DEFAULT CURRENT_TIMESTAMP,
	CONSTRAINT "pg_user_pkey" PRIMARY KEY ("id")
);

-- 订单表
CREATE TABLE pq_order (
	id int not null,
	user_id int not null,
	order_no varchar (32) not null,
	goods varchar (20) not null,
	price money not null,
	count_num int default 1, 
	create_time timestamp (6) default current_timestamp,
	constraint "pq_order_pkey" primary key ("id")
);

2、写入数据

INSERT INTO pq_user ("id", "user_name", "user_age", "create_time") 
VALUES ('1', 'user01', '18', '2020-04-09 19:44:57.16154');
INSERT INTO pq_order ("id", "user_id", "order_no", "goods", "price", "count_num", "create_time") 
VALUES ('1', '1', 'NO20200329652362', '书籍', '$12.20', '3', '2020-04-09 20:01:09.660208');

3、常规查询

-- 基础查询
select * from pq_user t1 where t1.id='2' and t1.user_name='user01';
select * from pq_user t1 where t1.id !='2' order by create_time desc;
-- 连接查询
select * from pq_user t1 join pq_order t2 on t1.id=t2.user_id;
select * from pq_user t1 left join pq_order t2 on t1.id=t2.user_id;

4、更新和删除

-- 更新数据
UPDATE pq_user SET "create_time"='2020-04-09 19:49:57' WHERE ("id"='2');
-- 删除记录
DELETE FROM pq_user WHERE "id" = 2;

五、源代码地址

GitHub·地址
https://github.com/cicadasmile/linux-system-base
GitEE·地址
https://gitee.com/cicadasmile/linux-system-base

Linux系统:Centos7下搭建PostgreSQL关系型数据库

推荐阅读:环境安装

序号 文章标题
01 Centos7下安装Jdk8、Tomcat8、 MySQL 5.7环境
02 Centos7下搭建 Redis 单台和Redis集群服务
03 Centos7下搭建Rocketmq4.3中间件,配置监控台
04 Centos7下搭建ZooKeeper3.4中间件,常用命令总结
05 Centos7下搭建ElasticSearch中间件,常用接口演示
06 Centos7下搭建Nginx,FastDFS文件管理中间件
07 Centos7下搭建ClickHouse列式存储数据库

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Domain-Driven Design

Domain-Driven Design

Eric Evans / Addison-Wesley Professional / 2003-8-30 / USD 74.99

"Eric Evans has written a fantastic book on how you can make the design of your software match your mental model of the problem domain you are addressing. "His book is very compatible with XP. It is n......一起来看看 《Domain-Driven Design》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具