基于Docker安装关系型数据库PostgrelSQL替代Mysql

基于Docker安装关系型数据库PostgrelSQL替代Mysql

最近“全栈数据库”的概念甚嚣尘上,主角就是PostgrelSQL,它最近这几年的技术发展不可谓不猛,覆盖OLTP、OLAP、NoSQL、搜索、图像等应用场景,实实在在的全栈性发展。帮助公司解决了数据孤岛、数据平台多、同步一致性、延迟,软硬件成本增加等业务痛点,在互联网、金融、物联网、传统企业等领域得到了广泛的应用。PostgreSQL的应用场景丰富,不亚于商用数据库Oracle,常被业界称为“开源界的Oracle”。

至于Mysql大家都很熟悉,很多公司因为人才储备和数据量大的原因,一般是Hadoop+Mysql的模式,Hadoop计算大量原始数据,然后按维度汇总后的展示数据存储在Mysql上,但是Mysql也有很多的“坑”:比如著名的Emoji表情坑,由此引申出来的utf8mb4的坑(隐式类型转换陷阱),性能低到发指的悲观锁机制,不支持多表单序列中取 id,不支持over子句,几乎没有性能可言的子查询…有点罄竹难书的意思,更多的“罪行”详见:见鬼的选择:Mysql。而这些问题,在PostgrelSQL中得到了改善,本次我们在Win10平台利用Docker安装PostgrelSQL,并且初步感受一下它的魅力。

首先需要拉取PostgrelSQL的镜像

docker pull postgres:11.1  #这里是指定11.1版本拉取

拉取成功之后查看拉取的镜像

docker images

在这里插入图片描述

然后我们就可以将容器启动了

docker run -d --name dev-postgres -e POSTGRES_PASSWORD=root -p 6432:5432 postgres:11.1  
# 在这里注意 如果需要可视化工具连接 username:postgres password:root prot:6432 在下面我会详细介绍

输入命令来查看容器运行状态

docker ps 		#有此我们可以看出postgressql在正常运行

在这里插入图片描述

现在我们进入命令行操作一下。

docker exec -it dev-postgres bash
psql -h localhost -U postgres


这样就可以进入容器内部的命令行,在命令行输入PostgrelSQL的命令\l 就可以查看数据库列表。

在这里插入图片描述

创建数据库
CREATE DATABASE mytest;   # mytest为数据库名称
使用数据库
\c mytest
创建一张表
CREATE TABLE "public"."article" (
	"id" int4 NOT NULL,
	"content" text,
	PRIMARY KEY ("id")
)
WITH (OIDS=FALSE);
查看所有表
\d

如果不习惯也可以使用可视化工具来进行链接,比如Navicat

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值