PostgreSQL入门

简介

PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),是以加州大学计算机系开发的POSTGRES,4.2版本为基础的对象关系型数据库管理系统。POSTGRES的许多领先概念只是在比较迟的时候才出现在商业网站数据库中。PostgreSQL支持大部分的SQL标准并且提供了很多其他现代特性,如复杂查询、外键、触发器、视图、事务完整性、多版本并发控制等。同样,PostgreSQL也可以用许多方法扩展,例如通过增加新的数据类型、函数、操作符、聚集函数、索引方法、过程语言等。另外,因为许可证的灵活,任何人都可以以任何目的免费使用、修改和分发PostgreSQL。

优势/亮点

相对于其他关系数据库来说,postgresql有哪些优势以及怎么选择它的使用场景呢?

  • 支持存储一些特殊的数据类型,比如:array、json、jsonb
  • 时间精度更高,支持秒以下的单位
  • 字符支持更好,MySQL里需要utf8mb4才能显示emoji
  • 事务隔离更好,MySQL 的事务隔离级别repeatable read并不能阻止常见的并发更新,要么使用悲观锁,会影响性能,要么使用乐观锁,但是手动实现又太复杂。postgresql 列里面有隐藏的乐观锁,默认的repeatable read隔离级别就能保证并发更新。
  • 对地理信息的存储与处理有更好的支持,所以它可以成为一个空间数据库,更好的管理数据测量和几何拓扑分析
  • 支持树状结构
  • 增加列更简单,mysql增加列相当于重新建表和索引,postgresql只需要在数据字典中增加字段的定义。
  • 存储方式支持更大的数据量
  • 对索引的支持更强,PostgreSQL支持 B-树、哈希、R-树和 Gist 索引。而MySQL取决于存储引擎

安装

官网
在这里插入图片描述

一般安装

所有平台的安装包下载地址 https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
在这里插入图片描述

Linux 包管理器安装(Ubuntu)

sudo apt-get install postgresql postgresql-client

docker 安装

拉取镜像

docker pull postgres

运行镜像

docker run --name postgresql -p 5432:5432 -e POSTGRES_PASSWORD=123456 -v pgdata:/var/lib/postgresql/data -d postgres

启动完成后在Navicat中连接数据库。
在这里插入图片描述
新建数据库的目录层级
在这里插入图片描述

语法

postgresql 语法和mysql的语法类似,只要掌握一门sql,完全可以驾驭它。
零基础可以参考
这里的语法就不多做介绍了。

SpringBoot 集成

  1. 创建Springboot 项目
  2. 导入依赖
<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <scope>runtime</scope>
</dependency>
  1. application.yml文件中配置数据源,使用postgresql的驱动器
spring:
  datasource:
    url: ${SPRING_DATASOURCE_URL:jdbc:postgresql://172.23.40.23:3306/agile_service?useUnicode=true&characterEncoding=utf-8&useSSL=false}
    username: ${SPRING_DATASOURCE_USERNAME:choerodon}
    password: ${SPRING_DATASOURCE_PASSWORD:password}
    driver-class-name: org.postgresql.Driver

不管你使用 spring的jpa 还是mybaits完成以上步骤就行了,其他操作按照各自的规范就行了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值