当前位置: 首页 > news >正文

我的世界做皮肤的网站西安市高新区建设局网站

我的世界做皮肤的网站,西安市高新区建设局网站,天津做网站的公司排名,苏州区建设局网站PostgreSQL (以下简称PG)号称 the most advanced open-source database in the world。 吸引用户的是其企业级特性:稳定,安全,可扩展性。 PG 是开源关系型数据库。开源意味着其属于任何人,任何人都可以对…

PostgreSQL (以下简称PG)号称 the most advanced open-source database in the world。
在这里插入图片描述

吸引用户的是其企业级特性:稳定,安全,可扩展性。

PG 是开源关系型数据库。开源意味着其属于任何人,任何人都可以对其作出贡献。同时,倒闭的风险极低。

PGDG(PostgreSQL Global Development Group)是官方的PG开发人员。PGDG 每年发布一次新的生产版本,通常在每年的最后一个季度。目前最新版本是17(这本书是针对16版本的,但基本概念通用)。

技术要求

本书示例代码。

PostgreSQL 概览

一个PG实例可包括多个数据库,单表最大32TB,最多1600列。

PL/PgSQL支持过程和函数,即可重用的代码。

PostgreSQL 可以使用其他嵌入式语言进行扩展,例如 Perl、Python、Java 甚至 Bash!

可通过Extension增强数据库功能。

PG支持的操作系统和平台参见这里。

在邮件列表存档中搜索问题和解决方案是一个好习惯,访问这里了解更多信息

PostgreSQL 简史

完整的简史可以参看文章:The History of PostgreSQL Open-Source Development

PostgreSQL 的前身是Ingres,从其项目名称POSTGRES (POST-Ingres) 即可看出。虽然项目是1986年启动,但书中认为PG的诞生是在1996年。

$ git log 'git rev-list --max-parents=0 HEAD'
commit d31084e9d1118b25fd16580d9d8c2924b5740dffAuthor: Marc G. Fournier <scrappy@hub.org>Date:   Tue Jul 9 06:22:35 1996 +0000Postgres95 1.01 Distribution - Virgin Sources

在这里插入图片描述
右边两位华人即伯克利的学生:Andrew Yu 和 Jolly Chen。这个图实际是拼的。
在这里插入图片描述

PostgreSQL 16 有哪些新功能?

参考Release Notes。

PostgreSQL 发布策略、版本号和生命周期

PG的版本号格式为major.minormajor每年发布一次,16,17都是9月发布的。minor通常包括错误修复和安全修补等。详细规则见这里。

major版本间可能不兼容,minor版本间是兼容的。

PG建议安装最新版本。

major的生命周期是5年,到期后不再更新。所以升级、安全补丁和错误修复都没了,同时也得不到支持。

PostgreSQL 术语探索

完整的术语可参考网页。
基本术语可参考文档。

PG作为守护进程在OS上运行。运行的守护进程称为instance,一个instance可包括多个database,因此instance也称为database_cluster。数据库内的命名空间称为schema。一个对象的完整层级为:server.database_cluster.database.schema.object

user是在database_cluster一级定义的,因此可以操作cluster中任何数据库。

PostgreSQL 的内部数据(例如用户、数据库、命名空间、配置和数据库运行时状态)通过catalog提供:catalog(也称为information schema)是一种特殊的表和视图。不同用户可能看到信息不一样,但超级用户通常可以看到全部信息。

PG 将用户数据(例如表)及其内部状态存储在本地文件系统上。PG依赖底层文件系统来实现持久化,因此调优文件系统性能至关重要。PG 将其所有内容(数据,日志和配置)存储在目录PGDATA 中。

日志即WAL(Write-Ahead Logs)。和Oracle的redo log类似,WAL在修改数据前先持久化日志。

PG启动时,第一个进程是postmaster,当有用户连接时,postmaster会fork一个backend process来一对一的处理。

安装 PostgreSQL

OS平台首选Linux。

安装 PostgreSQL 有两种方式:

  1. 从源代码编译(最新)
  2. 使用二进制包(最简单,最快)

安装组件

  • server
  • client
  • contrib(扩展和实用程序)
  • docs
  • PL/Perl, PL/Python 和 PL/Tcl(server中的编程语言)

建议至少安装前三个。

从二进制包安装 PostgreSQL

OS厂商和PGDG都会提供Linux二进制包。建议用PGDG的,例如红帽家族。

使用本书的 Docker 镜像

在本书Github项目的docker-images目录下。

在 GNU/Linux Debian、Ubuntu 及其衍生版本上安装 PostgreSQL
$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get -y install postgresql
# 开机启动 PostgreSQL
$ sudo update-rc.d postgresql enable
$ sudo service postgresql start
在 Fedora Linux 上安装 PostgreSQL
$ sudo dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/F-38-x86_64/pgdg-fedora-repo-latest.noarch.rpm
$ sudo dnf install -y postgresql16-server postgresql16
$ sudo systemctl edit postgresql-16
$ sudo /usr/pgsql-16/bin/postgresql-16-setup initdb
$ sudo systemctl enable postgresql-16
$ sudo systemctl start postgresql-16.service
或
$ sudo service postgresql-16 start
在 FreeBSD 上安装 PostgreSQL

略。

从源代码安装 PostgreSQL

$ wget https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.bz2
$ wget https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.bz2.md5
$ md5sum --check postgresql-16.0.tar.bz2.md5
$ tar xjvf postgresql-16.0.tar.bz2
$ cd postgresql-16.0
$ ./configure --prefix=/usr/local
$ make && sudo make install
$ sudo useradd postgres
$ sudo mkdir -p /postgres/16/data
$ sudo chown -R postgres:postgres /postgres/16
$ /usr/local/bin/initdb -D /postgres/16/data

通过 pgenv 安装 PostgreSQL

pgenv 是一款精巧的非官方小工具,并非针对生产环境,而是让开发人员和 DBA 能够轻松尝试不同版本的 PostgreSQL 并控制它们的工具。

总结

本章介绍了PG的简史,基本术语和安装。

http://www.dtcms.com/a/470525.html

相关文章:

  • 车载360环视平台:米尔RK3576开发板支持12路低延迟推流
  • 松下机械手焊机气体流量调节
  • x64dbg破解学习(浅尝)
  • RRC状态机:移动通信网络中的连接灵魂
  • LibreCAD 编译详细步骤指南
  • 2025年100道最新软件测试面试题,常见面试题及答案汇总
  • (15)100天python从入门到拿捏《面向对象编程》
  • Spring AI Alibaba 与 Ollama 集成初探:从环境搭建到首次调用
  • 营销型网站的标准网站flash导入页
  • 汉中专业网站建设开发怎么上国外网站
  • Windows上离线安装 PostgreSQL
  • MySQL——表的操作
  • langchain官网翻译:Build a Question/Answering system over SQL data
  • 我的HarmonyOS百宝箱
  • 广州十大室内设计公司排名网站推广seo教程
  • h5网站用什么软件做网站域名备案证书下载
  • 南京本地网站有哪些做网页需要什么
  • 机器学习破解生命之谜:内在无序蛋白质设计迎来革命性突破
  • Springboot之常用注解
  • 从 0 到 1 搭建 Python 语言 Web UI自动化测试学习系列 14--二次开发--封装公共方法 2
  • 做平面的公司网站DNF做钓鱼网站
  • SpringBoot 集成 LangChain4j RAG Redis
  • 【QT】customPlot 设置图例透明背景和文字颜色
  • AT指令解析:ring_buffer、信号量、互斥量等基础知识
  • 任务网站(做任务学技能的)潍坊市建设局网站
  • 【算法】——动态规划之路径问题
  • 阿里云企业建站教程泰州东方医院
  • 东阿县住房和城乡建设局网站申请做版主 再什么网站
  • 深入理解数据在内存中的存储:整数与浮点数的二进制表示
  • 广东网站营销seo费用品牌推广活动有哪些