首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PostgreSQL基础(一):PostgreSQL入门介绍

​PostgreSQL入门介绍一、介绍PostgreSQL是一个功能强大的 开源 的关系型数据库。底层基于C实现。PostgreSQL的开源协议和Linux内核版本的开源协议是一样的。。...BDS协议,这个协议基本和MIT开源协议一样,说人话,就是你可以对PostgreSQL进行一些封装,然后商业化是收费。PostgreSQL的名字咋来的。...PostgreSQL相对MySQL上述问题的特点: PostgreSQL的数据类型嘎嘎丰富。 PostgreSQL是有序列的概念的。 PostgreSQL的插件特别丰富。...PostgreSQL支持主从复制的同步操作,可以实现数据的0丢失。...PostgreSQL的MVCC实现和MySQL不大一样,PostgreSQL一行数据会存储多个版本,最多可以存储40亿个事务版本。 ​

59421

PostgreSQL基础(九):PostgreSQL的事务介绍

​PostgreSQL的事务介绍一、什么是ACID(常识)在日常操作中,对于一组相关操作,通常要求要么都成功,要么都失败。在关系型数据库中,称这一组操作为事务。...PostgreSQL中,在事务的并发问题里,也是基于MVCC,多版本并发控制去维护数据的一致性。相比于传统的锁操作,MVCC最大的有点就是可以让 读写互相不冲突 。...当然,PostgreSQL也支持表锁和行锁,可以解决写写的冲突问题。PostgreSQL相比于其他数据,有一个比较大的优化,DDL也可以包含在一个事务中。...二、事务的基本使用首先基于前面的各种操作,应该已经体会到了,PostgreSQL是自动提交事务。跟MySQL是一样的。可以基于关闭PostgreSQL的自动提交事务来进行操作。

19010
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    PostgreSQL基础(十二):PostgreSQL备份和恢复介绍

    ​PostgreSQL备份和恢复介绍防止数据丢失的第一道防线就是备份。数据丢失有的是硬件损坏,还有人为的误删之类的,也有BUG的原因导致误删数据。...在PostgreSQL中,有三种备份方式:一、SQL备份(逻辑备份) 其实就是利用数据库自带的类似dump的命令,或者是你用图形化界面执行导入导出时,底层就是基于这个dump命令实现的。...三、归档备份:(也属于物理备份) 先了解几个概念,在PostgreSQL有多个子进程来辅助一些操作 BgWriter进程:BgWriter是将内存中的数据写到磁盘中的一个辅助进程。...PostgreSQL也提供了一个全量备份的操作。可以根据WAL日志,选择一个事件点,进行恢复。...-f /archive/%f && cp %p /archive/%f'注意:修改完上述配置文件后,记得重启postgreSQL进程,才会生效归档操作执行时,需要保证/archive存在,并且postgres

    41710

    PostgreSQL堆内元组、动态剪枝技术介绍

    上一篇文章《PostgreSQL的元组、页面结构及索引查找原理》中介绍了postgresql数据库数据结构和索引查找过程,本文接着继续介绍下堆内元组和动态剪枝技术,这两个技术其实是相辅相成的。...pg为了避免这个问题,从8.3版本开始采用HOT(heap only tuple)解决这个问题,下面简单介绍一下技术原理。...前一篇文章介绍过,在元组结构的t_informask2字段中有两个标记位,heap_hot_update和heap_only_tuple,在更新tuple1时,postgresql会将tuple1(老元组...tuple1 4.发现tuple1的标记位是heap_hot_update,表明该元组是经过hot更新的元组,并不是真实要读取的数据,于是通过tuple1的t_ctid字段读取tuple2(上一篇文章也介绍过...tuple1和tuple2两个数据块,这时我们可能会考虑到一个问题,因为tuple1是旧元组,它会在合适时机被vacuum掉,这时就无法通过tuple1的ctid字段定位到tuple2了,为了解决这个问题,postgresql

    82920

    进阶数据库系列(七):PostgreSQL 常用函数介绍

    LENGTH('egg'); 2、合并字符串CONCAT(s1,s2,…),CONCAT_WS(x,s1,s2,…) 使用CONCAT函数连接字符串,输入语句如下: SELECT CONCAT('PostgreSQL...', 3); 8、替换函数REPLATE(s,s1,s2) 使用REPLACE函数进行字符串替代操作,输入语句如下: SELECT REPLACE('xxx.PostgreSQL.com', 'x',...rn] END; 使用CASE WHEN语句执行分支操作,输入语句如下: SELECT CASE WHEN 1<0 THEN 'true' ELSE 'false' END; 系统信息函数 1、获取PostgreSQL...版本号 查看当前PostgreSQL版本号,输入语句如下: SELECT VERSION(); 2、获取用户名的函数 获取当前登陆用户名称,输入语句如下: SELECT USER, CURRENT_USER...在PostgreSQL中,日期和时间是以字符串形式存储在数据表中,可以截取字符串,如dt = ‘2020-03-01 12:30:30’,则可以输入left(dt, 4)截取年份,输入mid(dt, 6

    1.2K21

    postgresql安装,java简单使用postgresql

    二 安装 postgresql了解的主要原因是因为腾讯很多招聘都有要求,那么不管怎么说crud折腾一次是必要的 但是这玩意好像他们都不更新几年了.......我把自己的猜测说一下 早期postgresql性能优于mysql,甚至有博客说是mysql的三倍。...但是在mysql 5.5就被追平,5.7反超,所以说腾讯用postgresql是历史原因,postgresql的开源团队毕竟几年都没更版本了。 postgresql在多年前就支持json。...mysql还没有,那么只要不引入其他支持json的等postgresql还是有一战之力的,但是5.7mysql也支持了......那么除去性能除去json,腾讯同时使用这两数据库的原因估计就是postgresql在高压环境下性能并没有下降,而myql明显下降。还有各种数据格式的支持。sql编程能力强。

    1.5K10

    PostgreSQL基础(十四):PostgreSQL的数据迁移

    ​PostgreSQL的数据迁移PostgreSQL做数据迁移的插件非常多,可以从MySQL迁移到PostgreSQL也可以基于其他数据源迁移到PostgreSQL。...这种迁移的插件很多,这里只说一个,pgloader(非常方便)以MySQL数据迁移到PostgreSQL为例,分为几个操作:1、准备MySQL服务(防火墙问题,远程连接问题,权限问题),准备了一个sms_platform...2、准备PostgreSQL的服务(使用当前一直玩的PostgreSQL)3、安装pgloaderpgloader可以安装在任何位置,比如安装在MySQL所在服务,或者PostgreSQL所在服务,再或者一个独立的服务都可以我就在...PostgreSQL所在服务安装# 用root用户下载yum -y install pgloader4、 准备pgloader需要的脚本文件官方文档: Welcome to pgloader’s documentation...— pgloader 3.6.9 documentation记住,PostgreSQL的数据库需要提前构建好才可以。

    37610
    领券