PG
17.PG索引核心
关于pg索引,上文提到了创建,删除等一些基础的操作,这里说说核心的东西 1.PG索引的视图和表pg_indexes和pg_index 1) pg_indexes postgres=# \d pg_indexes View "pg_catalog.pg_indexes" Column | Type | ......
16.PG的索引基础
索引类似于书籍的目录,方便对表中的记录快速查找或者排序,但是建索引会有以下代价: 增减数据库的存储空间 在插入和更新数据时,所以也会被更新 索引的分类 BTree:PG默认的索引类型,适合等值和范围查询 Hash:只能处理简单的等职查询 Gist:不是单独一种索引类型,而是一种架构,可以在这种架构上 ......
gitlab:Restoring PostgreSQL database gitlabhq_production ... ERROR: must be owner of extension pg_trgm
Restoring PostgreSQL database gitlabhq_production ... ERROR: must be owner of extension pg_trgm ERROR: must be owner of extension btree_gist ERROR: mu ......
PG实现主键自增
CREATE TABLE "t1"( "id" SERIAL PRIMARY KEY ); CREATE SEQUENCE "t1_seq" AS INTEGER; CREATE TABLE "t1" ( "id" INTEGER DEFAULT nextval('t1_seq') PRIMARY ......
tdsql(pg版)的一些系统检查语句
一、磁盘、CPU、内存:#!/bin/bashfor i in `cat ./ip.txt`;doecho " "$i" "echo ""free -m | awk 'NR==2{printf "内存 使用率:%s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'echo " ......
15.修改pg数据库的配置
设置pg数据库的参数分为全局和和会话级别: 会话级别可以直接使用set 参数 to value 全局的需要使用alter database 数据库名 set 参数 to value postgres=# set geqo to off; #这个是会话级别 SET postgres=# show ge ......
pg 本地忘记密码
在长久的工作中总会出现密码忘记的事情,在postgreSQL中,如果忘记密码,可以进行以下操作来在无需登录的情况下修改密码! 前提表明:我用的是windows系统,Linux系统没机会、没条件尝试一、首先关闭服务,Windows系统可以按win键+R调用运行,键入 services.msc来进入服务 ......
14.PG逻辑复制搭建
1.准备两台服务器: 172.16.191.140 发布者 172.16.191.139 订阅者 2.在这两台服务器都安装了pg数据库 3.分别在这三台服务器上pg_hba_conf配置文件新增 host all all 172.16.191.0/0 md5 host replication all ......
13.PG之逻辑复制
1.逻辑复制介绍 PostgreSQL10版本中增加了一个新特性,即逻辑复制(Logical Replication)。PostgreSQL 9的流复制是基于WAL日志的物理复制,其原理是主库不间断地发送WAL日志流到备库,备库接收主库发送的WAL日志流后应用WAL;而逻辑复制是基于逻辑解析(Log ......
12.PG主备搭建
1.环境 主库:172.16.191.133(pg16) 备库:172.16.191.136(pg16) 2.主库配置 要使用流复制,需要允许主库接受流复制的连接,这就需要在pg_hba.conf中做如下配置: host replication all 0/0 md5 修改配置参数文件postgre ......
tdsql(pg版本)安装文档
tdsql(pg版本)安装文档 一、安装的前置条件:1、需要在开通oss机器的80和8080端口;2、准备NAS,大小为2T. 二、安装前检查:1、部署DN节点的服务器数据盘必须是SSD,不能用HDD:通过cat /sys/block/sda/queue/rotational进行查看,返回值0即为S ......
TDSQL(PG版本)天巡系统安装与配置
参考文档:https://doc.weixin.qq.com/doc/w3_AFwAeQZ3ACcJA0Z3mpITzyrQuymvJ?scode=AJEAIQdfAAoexq79g0AFwAeQZ3ACc 安装前准备:1、需要下载安装包,包括:tbase-update.zip;2、天巡可以安装在虚 ......
使用pg_dump导出postgresql数据
使用pg_dump导出postgresql数据 参考:如何使用 PostgreSQL 进行数据迁移和整合? 导出命令 pg_dump -U username -d dbname -a --inserts -f backup.sql -a 只导出数据,不导出schema --inserts 将数据转储 ......
PG数据库存储验证
PG数据库存储验证 背景 最近学习了SQLServer数据库的varchar和nvarchar的存储 想到PG数据库其实没让选择字符集,也没有nvarchar 所以想学习一下nvarchar的使用情况 建表以及插入sql su - postgres psql create database zhao ......
11.PG表之pg_class和pg_stats
1. pg_class表 postgres=# \d pg_class Table "pg_catalog.pg_class" Column | Type | Collation | Nullable | Default + + + + oid | oid | | not null | 行标识符号 ......
10.PG的统计信息
1.PG的统计信息 数据的统计信息反映的是数据的分布情况,PG执行SQL语句会经过解析的过程和查询优化过程。 解析过程:解析器将sql语句分解成数据结构并传递给后续步骤 查询优化过程:查询优化器发现执行sql语句的最佳方案,并生产执行计划。 查询优化器sql决定sql语句如何执行依赖于数据库的统计信 ......
9.PG表的磁盘碎片清理
1.磁盘碎片 在PG中删除行时,这些行为只是被标记为 'dead' , 并不是真正从物理存储上进行删除,因为空间也没有被释放回收。 在PG中,除非进行自动的清理(vacuum)或者手工的清理,否则数据块所占用的物理空间是不会释放,在物理存储空间被回收之前,会导致存储空间中存在很多空洞。 大量的更新操 ......
8.PG的日志文件
Postgresql的日志分为运行日志、预写日志、事务日志和服务器日志。 1)运行日志 运行日志,在默认情况下是不开启的,通过主要的参数文件postgresql.conf的配置可以看到相关的参数设置。运行日志一般用来记录数据库服务器端与数据库的状态,如各种错误信息、定位慢日志、数据库的启动、关闭信息 ......
7.PG的控制文件
控制文件 控制文件记录了数据库运行时的一些信息,如数据库OID,是否为打开状态,预写日志的位置、检查点的信息等。 控制文件位置默认保存在$PGDATA/global目录下,pg_control 这个就是。 控制文件内容 [postgres@iZwz909xeqcc7ouqk8528zZ 16]$ p ......
6.PG数据库管理
1.PG数据库库属主 PG中的数据库属主属于创建者,只要有cretedb权限就可以创建数据库,数据库属主不一定拥有存放在该数据库中其它用户创建的对象的访问权限。 数据库在创建后,允许public角色连接,即允许任何人连接 数据库在创建后,不允许除了超级用户和owner之外的任何人在数据库中创建sch ......
centos安装pg数据库
1.下载yum源 yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm 2.安装libzstd 否则安装数据库报错Req ......
基于pg driver 的dremio cratedb arp 扩展
实际上pg 驱动是可以直接链接cratedb 的但是因为默认实现会自动添加一个编码造成生成的sql 在cratedb 运行异常 参考代码 核心是arp 方言处理上,移除了关于编码的处理,实际上与mssql server 处理是一样的,主要代码实际上来自ce 版本的pg 扩展 public SqlCo ......
5.PG的逻辑结构
1.如图 [postgres@iZwz909xeqcc7ouqk8528zZ ~]$ cd $PGDATA [postgres@iZwz909xeqcc7ouqk8528zZ data]$ ls base pg_dynshmem pg_logical pg_replslot pg_stat pg_t ......
4.PG的进程和内存结构
1.我们在启动PG数据库时,会先启动一个Postmaster的主进程,还会fork出一些辅助的子进程,其中辅助的子进程主要包含: 1)Logger(系统日志)进程 2)BgWriter(后台写)进程 3)WalWriter(预写式日志) 进程 4) PgArch(归档)进程 5) AutoVacuu ......
3.PG查看系统信息的常用命令
1.查看当前数据库实例的版本信息 postgres=# select version(); version PostgreSQL 14.2 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44), ......
electric 基于pg 的现代应用的同步层框架
electric 是使用Elixir 开发的基于pg 的应用数据同步层中间件,electric 支持多种集成模式 支持模式 drivers 支持基于sqlite 的应用同步,包含了本地,移动端,以及后端 前端支持 包含了对于一些主流前端框架的支持 后端 对于各种后端框架的支持 对于evnet sou ......
2.PG的\d命令
1)\d :显示当前数据库的所有表 2)\d 表名:显示表的定义结构 3)\d 索引名:显示索引信息 4)\d 表名或者索引名中也可以使用通配符, 如* 或者? 5)\d+ :表示显示更加详细的信息 6)只显示某个对象 7) 显示sql执行的时间,可以使用\timing on 表示打开 8) 如果想 ......
PG数据库的离线rpm包下载
PG数据库的离线rpm包下载 背景 周末时间研究数据库的版本. 发现PostgreSQL数据库的版本号已经变成了一年一个大版本. 兼容起来其实成本很高. 想着能够在能够上网的机器上面弄好多套数据库. 便于备份和下载 下载方式 参照官方文档进行学习, 改完下载和使用. 注意的是,我这边建议选择 rhe ......
Postgresql在Windows中使用pg_dump实现数据库(指定表)的导出与导入
场景 Windows中通过bat定时执行命令和mysqldump实现数据库备份: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/119024990 Windows上通过bat实现不同数据库之间同步部分表的部分字段数据: https ......
pg数据库 定时备份脚本
!/bin/bash 使用环境变量设置pg密码 export PGUSER=xxxx export PGPASSWORD=xxxx pghost="xxxxx" logfile="/db/log/dump/pg_dump_backup_$(date '+%d').log" touch $logfil ......