自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(215)
  • 资源 (2)
  • 收藏
  • 关注

原创 PostgreSQL vacuum freeze

数据库使用 32 位事务号,最大容纳 42 亿左右的事务号,事务号是循环使用的。当前事务号过去的 21 亿事务属于过去的事务号,当前事务号往前的 21亿 属于未来的事务号,未来的事务号对当前事务是不可见的。当事务号处于未来事务时,就会导致该事务不可见(事务 ID 回卷),为了预防此类情况发生,数据库事务号在达到阈值时 autovacuum 会自动冻结(freeze)重置事务 ID 为 2(冻结的事务id,比任何普通的事务 ID 都旧),来防止事务 ID 回卷。

2024-08-20 14:30:10 578

原创 centos7 安装 llvm-toolset-7-clang

【代码】centos7 安装 llvm-toolset-7-clang。

2024-06-12 09:39:14 455

原创 PostgreSql 索引使用技巧

查询数据库中未使用过的索引,确认业务确实用不上后可删除。

2023-12-26 14:25:13 897

原创 PostgreSql 并行

当服务器有多核 cpu 时,PostgreSQL 会根据默认配置,在合适的条件下自动进行并行操作,除非主动关闭了相关并行参数。

2023-12-26 14:19:16 687

原创 PostgreSql 序列

在 PostgreSQL 中,序列用于生成唯一标识符,通常用于为表的主键列生成连续的唯一值。

2023-12-12 14:35:05 1351

原创 PostgreSql 设置自增字段

序列类型是 PostgreSQL 特有的创建一个自增列的方法。包含 smallserial、serial和 bigserial 类型,它们不是真正的类型,只是为了创建唯一标识符列而存在的方便符号。

2023-12-12 14:33:23 819

原创 PostgreSql 报错ERROR: cannot cast type smallint to boolean

smallint 类型需先转为 int 类型,再转为布尔类型。

2023-12-07 16:24:39 844

原创 PostgreSql 字符串匹配

PostgreSQL 提供了三种独立的实现模式匹配的方法:SQL LIKE 操作符、更近一些的 SIMILAR TO 操作符(SQL:1999 里添加进来的)和 POSIX 正则表达式。虽然大部分的正则表达式搜索都能被很快地执行,但是正则表达式仍可能被人为地设置成需要任意长的时间和任意量的内存进行处理,如果必须这样做,建议加上语句超时限制。使用 SIMILAR TO 模式的搜索具有同样的安全性危险,LIKE 搜索比其他两种选项简单得多,要更安全些。

2023-12-07 15:59:05 936

原创 PostgreSql 规则

其它数据库系统定义活动的数据库规则,通常是存储过程和触发器。在 PostgreSQL 中,这些东西可以通过函数和触发器来实现。规则系统(更准确地说是查询重写规则系统)与存储过程和触发器完全不同。它把查询修改为需要考虑规则,并且然后把修改过的查询传递给查询规划器进行规划和执行。它非常强大,并且可以被用于许多东西如查询语言过程、视图和版本。PostgreSQL 规则系统允许我们定义针对数据库表中插入、更新或者删除动作上的替代动作。比如当在一个给定表上执行给定命令时,一条规则会导致执行额外的命令。

2023-12-05 17:41:20 539 1

原创 PostgreSql HOT 技术

因为多版本的原因,当 PostgreSQL 中更新一行时,实际上原数据行并不会被删除,只是插入了一个新行。如果表上有索引,而更新的字段不是索引的键值时,由于新行的物理位置发生了变化,仍然需要更新索引,这将导致性能下降,为了解决这一问题,PostgreSQL 自 8.3 版本之后引入了一个名为“Heap-Only Tuple”的新技术,简称 HOT。

2023-12-05 11:33:26 354

原创 Centos 7 安装 llvm5.0-devel

Centos 7 安装 llvm5.0-devel

2023-10-16 17:05:24 358

原创 PostgreSql 备份恢复

在 recovery_target、recovery_target_lsn、recovery_target_name、recovery_target_time 和recovery_target_xid 中, 最多只能使用一个。当指定时间点恢复时,启动数据库后默认为只读状态,此时可查询数据进行检查,若不是想要的数据,可继续往后推进(只能向上次恢复的时间点后推进,不能向之前倒推)允许其他并发备份运行,既包括那些使用同样的 API 开始的备份,也包括那些用 pg_basebackup 开始的备份。

2023-08-14 10:04:27 1747

原创 PostgreSql 参数配置

pfilespfileASCII文本文件ASCII文本文件ASCII文本文件二进制文件手动编辑手动编辑手动编辑、alter system 修改alter system 修改重启库或重载配置文件生效用 pfile 重启库生效重启库或重载配置文件生效立即生效或重启库生效示例如下。

2023-08-08 09:54:28 2602

原创 PostgreSql 日期时间输出风格及顺序

风格为 ISO 和 German 时,时间显示结果不受排序影响。风格为 SQL 和 POSTGRES 时,时间显示结果中的 月、日 受排序影响。

2023-08-08 09:53:23 1779

原创 PostgreSql 启停

【代码】PostgreSql 启停。

2023-08-03 11:32:20 1581

原创 PostgreSql pg_ctl 命令

控制 PostgreSQL 服务的工具。

2023-08-03 11:25:19 2546

原创 PostgreSql 进程及内存结构

PostgreSQL 启动后会生成一块共享内存,共享内存主要用作数据块的缓冲区,以便提高读写性能。WAL 日志缓冲区 和 CLOG(CommitLog)缓冲区也存在于共享内存中。PostgreSQL 数据库运行时,使用如下命令可查询数据库进程,正对应上述结构图。

2023-07-31 17:22:27 1447

原创 PostgreSql 锁

在中提到,多个用户访问相同数据时可能出现脏读,不可重复度,幻读,更新丢失的问题,为解决这些问题,定义了不同的隔离级别,而隔离级别的具体实现,依靠的就是数据库锁冲突的机制,在数据库中,不同事务在同一时刻不能对同一对象持有相互冲突的锁,PostgreSQL 提供了多种锁模式用于控制对表中数据的并发访问,大多数情况下数据库会在事务运行的过程中自动的给相关对象加锁解锁,以保证事物的正常运行及数据的一致性。

2023-07-31 09:45:35 2087

原创 PostgreSql 事务

在日常操作中,对于一组相关操作,通常需要其全部成功或全部失败。在关系型数据库中,将这组相关操作称为事务。事务具有的四个特性简称为 ACID。

2023-07-26 15:48:34 1570

原创 PostgreSql 用户及权限管理

ALTER DEFAULT PRIVILEGES 允许设置将被应用于未来要创建的对象的特权(它不会影响分配给已经存在的对象的特权)。当前,只能修改用于模式、表(包括视图和外部表)、序列、函数和类型(包括域)的特权。其中,可设置权限的函数包括聚集函数和过程函数。当这个命令应用于函数时,单词 FUNCTIONS 和 ROUTINES 是等效的。(推荐使用 ROUTINES,因为它是用来囊括函数和过程的一个标准术语。在较早的 PostgreSQL 发行版中,只允许单词 FUNCTIONS。

2023-07-17 17:21:54 15532

原创 PostgreSql 表空间

PostgreSQL 中的表空间允许数据库管理员在文件系统中定义用来存放表示数据库对象的文件的位置。一旦被创建,表空间就可以在创建数据库对象时被引用,如创建数据库、表、索引和添加索引时指定表空间。管理员可以利用表空间控制 PostgreSQL 的磁盘布局,这么做至少有如下两个用处。

2023-07-12 17:59:26 2022

原创 PostgreSql 查询表所在表空间

【代码】PostgreSql 查询表所在表空间。

2023-07-11 18:17:21 1327

原创 PostgreSql 触发器

PostgreSQL从9.3 版开始支持一种称为"Event Trigger"的触发器,这种触发器主要用于弥补PostgreSQL 以前版本不支持 DDL 触发器的不足。由于事件触发器涉及的权限较大,比如能禁止 DDL 操作等,所以只有超级用户才能创建和修改事件触发器。目前,事件触发器支持以下 3 种 DDL 事件。:DDL开始执行前被触发。:一个DDL执行完成后被触发。sql_drop:删除数据库对象前被触发。

2023-07-11 13:54:37 6974

原创 PostgreSql 表

UNLOGGED表在使用上与普通表没有区别,仅仅在插入、删除、更新数据时不产生WAL日志,所以做这些DML操作的性能会更高。另外需要注意的是,数据库异常宕机时,UNLOGGED表的数据可能会丢失。

2023-07-07 11:33:07 1079

原创 PostgreSql 限制

参考:https://www.postgresql.org/docs/current/limits.html

2023-07-07 11:29:08 1513

原创 PostgreSql 模式

模式(Schema)是数据库中的一个概念,可以将其理解为一个命名空间或目录,不同的模式下可以有相同名称的表、函数等对象而不会产生冲突。提出模式的概念是为了便于管理,只要有权限,各个模式的对象可以互相调用。在 PostgreSQL 中,一个数据库包含一个或多个模式,模式中又包含了表、函数以及操作符等数据库对象。

2023-07-06 09:32:55 2116

原创 PostgreSql 数据库操作

要创建一个数据库,你必须是一个超级用户或者具有特殊的 CREATEDB 特权。默认情况下,新数据库将以标准系统数据库 template1 为模板进行创建。可以通过写 TEMPLATE name 指定一个不同的模板。特别地,通过写 TEMPLATE template0 可以创建一个原始的数据库(其中没有用户定义的对象存在并且系统对象没有被更改),它将只包含你的 PostgreSQL 版本所预定义的标准对象。:要创建的数据库名。

2023-07-05 18:05:27 1394

原创 PostgreSql 逻辑结构

PostgreSql 文件目录结构:

2023-06-29 11:00:37 1343

原创 PostgreSql 数据类型

字符串函数及操作符:https://blog.csdn.net/songyundong1993/article/details/131416803?数学函数及操作符:https://xiaosonggong.blog.csdn.net/article/details/131416741。布尔类型操作符:https://xiaosonggong.blog.csdn.net/article/details/131416704。

2023-06-27 14:49:52 1611

原创 PostgreSql 字符串函数及操作符

一、标准SQL字符串函数和操作符函数返回类型描述示例结果string||stringtext字符串连接‘Post’||‘greSQL’PostgreSQLbit_length(string)int字符串中的二进制位数的个数bit_length(‘jose’)32char_length(string)int字符串中的字符个数char_length(‘数据库’)3convert(string using conversion_name)te

2023-06-27 14:41:09 1488

原创 PostgreSql 数学函数及操作符

dp” 表示double precision。|二进制右移|16>>3|2。

2023-06-27 14:41:02 844

原创 PostgreSql 布尔类型操作符

一、AND、OR 运算真值表aba AND ba OR bTRUETRUETRUETRUETRUEFALSEFALSETRUETRUENULLNULLTRUEFALSEFALSEFALSEFALSEFALSENULLFALSENULLNULLNULLNULLNULL二、NOT 运算真值表aNOT aTRUEFALSEFALSENULLNULLNULL

2023-06-27 14:37:54 170

原创 PostgreSql psql 用法

psql 是 PostgreSQL 中的一个命令行交互式客户端工具,类似 Oracle 中的命令行工具 sqlplus,它允许用户交互地键入 SQL 语句或命令。此外,它还提供了一些快捷命令和多种类似 Shell 的特性来实现书写脚本,便于对大批量任务的自动化操作。虽然 psql 的功能与 sqlplus 差不多,但使用起来远比 sqlplus 简便,如可以用上下方向键,把上一条和下一条 SQL 命令翻出来,还有单击 Tab 键自动补全功能。

2023-06-25 10:46:18 4616 1

原创 PostgreSql SQL 入门

SQL(Structured Query Language)中文全称为”结构化查询语句“,在 1986 年成为 ANSI(American National Standards Institute 美国国家标准化组织)的一项标准,在 1987 年成为国际标准化组织(ISO)标准。SQL 是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。简单理解就是对我们数据库和数据库中的表进行”增删改查“操作的编程语言。

2023-06-15 17:01:28 3879

原创 Linux硬件时间和系统时间

Linux 分为硬件时间和系统时间。两个时间开始后是独立运行的,长期运行后可能存在误差。

2023-04-15 17:21:49 3899 2

原创 PostgreSql pg_restore 用法

pg_restore 是一个用来从 pg_dump 创建的非文本格式文件中恢复 PostgreSQL 数据库的工具。

2023-03-27 09:42:20 3389 1

原创 Windows 远程连接报错:这可能是由于 CredSSP 加密数据库修正

策略组 gpedit.msc,注册表 regedit 等方式都尝试无效时,可尝试把下面这个勾勾去掉。

2023-03-08 16:45:07 1098

原创 PostgreSql 视图

视图(View)本质上是一个存储在数据库中的查询语句。视图本身不包含数据,也被称为虚拟表。我们在创建视图时给它指定了一个名称,然后可以像表一样对其进行查询。

2023-02-27 13:43:08 5012

原创 PostgreSql 关键字

PosetgeSQL 中标识符和关键词必须以一个字母(也可以是带变音符的字母和非拉丁字母)或一个下划线开始。后续字符可以是字母、下划线、数字或美元符号($)。注意根据 SQL 标准的规定,美元符号是不允许出现在标识符中的,因此它们的使用可能会降低应用的可移植性。SQL标准不会定义包含数字或者以下划线开头或结尾的关键词,因此这种形式的标识符是安全的,不会与标准的未来扩展发生冲突。

2023-02-17 11:07:54 2794

原创 PostgreSql 索引

索引主要被用来提升数据库性能,不当的使用会导致性能变差。PostgreSQL 提供了多种索引类型: B-tree、Hash、GiST、SP-GiST 、GIN 和 BRIN。每一种索引类型使用了一种不同的算法来适应不同类型的查询。默认情况下,CREATE INDEX 命令创建适合于大部分情况的 B-tree 索引。在使用上,除了常见的单列索引,还有多列索引、唯一索引、表达式索引、部分索引、覆盖索引等。

2023-02-08 16:52:34 5031

oracle数据库巡检脚本 dbcheck.sh

linux环境Oracle11g单机数据库巡检脚本,上传至数据库服务器后root用户执行,可在/opt/xunjian目录下自动生成巡检日志。可自定义计划任务定期自动执行脚本。巡检内容包括:操作系统本地磁盘使用情况,CPU使用情况,内存使用情况,操作系统日志信息,数据库监听日志大小信息,数据库版本,数据量大小,表空间,临时表空间使用率,数据库连接数信息,数据库alter信息等等。。。

2020-09-08

Oracle 11g 部署rman定时备份文档(windows+linux).docx

windows环境和linux环境中Oracle 11.2.0.4 rman定时备份策略部署,内含rman备份相关脚本,该脚本已经用于多套生产环境(备份及归档删除策略也包含其中)。

2020-07-31

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除