PostgreSQL及中国用户会简介
主讲人 李元佳 galy
原文地址:http://chenlinux.com/2012/03/17/postgreSQL-DBA-2000-note1/
数据库分类
商业数据库: Oracle, DB2, SQLserver, Sybase… 开源数据库: MySQL, PostgreSQL, Firebird, SQLite, Apache Derby…
PostgreSQL沿革
类BSD许可的,面向对象的,关系型数据库管理系统。
MIT –> Ingres –> Postgres –> PostgreSQL ( 同源的还有SQLserver等 )
支持SQL2008标准的大部分功能特性,是各种RDBMS的SQL方言中最贴近标准的。
PostgreSQL简介
主讲人 萧少聪 Scott.Siu
用户与进程
注意在上图中,不管是workmem还是sharebuffer,每个page都是8KB大小。
复制流程
stream replica的流程如下:
client --> postgres --> WAL (not file)--> slave --> (return OK) --> master --> commit
在master上的流程细节如下:
client --> write-ahead log(WAL) buffer --> commit --> (async/fsync~~160%) --> WAL Files (16MB * 132个)
^
|--> share buffer --> bgwriter --> db files
^ |
|-- check point <-- ## 安装
linux: 注意使用独立的非root用户来安装启动pgsql。在version9.1后,可以跟SElinux结合使用,提高安全性。
win: 只能在NTFS文件系统上创建表空间。
窗口统一式安装,可以方便的安装stack builder套件。
目录
默认使用窗口安装的情况下,目录结构如下:
/opt/PostgreSQL/9.1/
|
|--> bin/
|--> doc/
|--> include/
|--> lib/
|--> share/
|--> install/
|--> data/
|--> base/ 存放table和index的ID号
|--> global/
|--> pg_clog/ 运行日志
|--> pg_xlog/ WAL日志
|--> pg_tblspc/ 表空间ID,实质为到真实数据目录的软连接
|--> postgresql.conf
|--> pg_hba.conf
创建
- 使用bin/initdb命令;
- 修改data/pg_hba.conf里的连接地址段和登录权限;
- 修改data/postgresql.conf里的监听网卡。
启动与停止
使用bin/pg_ctl命令。其停止命令可指定三种类型:
- smart模式,即等待全部client连接断开后停止;
- fast模式,即直接回滚全部尚未完成的事务后停止;
- immediate模式,即立刻中止全部进程。
配置说明
-
work_mem:
并不是每个client连接的postgres进程分配一个work mem,而是SQL每一次的排序work使用一个work mem。包括join和order by。如果没有排序,就不用work mem。如果一条sql里同时使用了N次排序,那么就要使用N个work mem。所以理想的使用方法不是提供太大的work mem来排序,而是尽量缩小需要排序的数据大小,设置为4/8MB即可。
该配置是可以online修改的。命令如下:
SET work_mem = 2048; SET work_mem = ‘2MB’; 上面两条命令等价。可以看书其计量单位为1KB,且类型为字符串,所以在自定义计量时需要用引号。 -
share_buffers:
理论上为机器物理内存的40%大小。实际测试显示大于8GB后,性能不会有相应的提升,即可认为最大设置到8GB。 -
temp_buffers:
无修改意义 -
max_prepared_transactions:
并发事务数 -
maintenance_work_mem:
vacuum、create index、alter table add foreign key等管理命令使用的work_mem,建议设置1G。因为这些命令经常涉及全表扫描。
postgreSQL的数据集概念
DataBase Cluster
|
|---------|---------|
| | |
user database tablespace
|
schema
这里的cluster不是HA cluster,而是数据集。
一个database里可以有多个schema,一个user可以有多个schema的管理权限,但一个schema只能归属于一个user。
默认有一个template0为schema的基础,不可修改,在template0基础上有template1,可以修改。实际创建schema时就是复制template1出来。 创建user时,一般都会再创建一个同名的schema,并规定该schema的所属人为该user。这样在pgsql连接到database后,其默认schema即为该同名schema。
备份与恢复
备份
pg_dump命令,使用-s指定只备份数据结构,-t指定只备份数据内容。
基于时间点的备份恢复
- select pg_start_backup(‘FullBackup’);
- tar zcvf full_backup/week1.tgz /opt/PostgreSQL/9.1/data/
-
select pg_stop_backup();
- tar zxvf full_backup/week1.tgz -C /
- echo ‘restore_command=”cp %f %p”’ > data/recovery.conf
相关推荐
分享一套数据库课程——PostgreSQL DBA实战视频教程(2023完结新课),文档资料齐全。希望对大家有帮助。
**PostgreSQL 9.3 DBA最佳实战培训** 在IT领域,数据库管理是至关重要的,尤其是在企业级应用中。PostgreSQL作为一个开源的关系型数据库管理系统,因其强大的功能、稳定性及高度的可扩展性,受到了广大开发人员和...
由于给定的文件内容大部分...通过上述知识点,可以对一个顶级PostgreSQL DBA的日常工作有一个全面的了解。由于文档的具体内容无法识别,未包含在上述知识点中。如果有具体的文档内容提供,可以更准确地提炼相关知识点。
培训内容涵盖逻辑结构基础、安装及文件结构、配置基础、数据库逻辑结构、数据备份与恢复、数据库权限及安全管理、基于时间点的数据恢复、运行时维护管理、数据类型、存储过程及调试、并发控制、JDBC、libPQ以及监控...
PostgreSQL全套课程,全套24.73G,包含免密视频、课件、相关文档,课程目录: 01.PostgreSQL9 从零开始学...03.PostgreSQL 9.3 DBA5天培训 24课 04.PostgreSQL 9.3 优化培训视频 19课 05.DBA团队每天16点技术分享 7课
《PostgreSQL 10 DBA菜谱源码》是一份宝贵的学习资源,源自书籍《PostgreSQL 10 Administration Cookbook》。这份源码集合了书中的实际操作示例,旨在帮助数据库管理员(DBA)深入理解和掌握PostgreSQL 10的管理技巧...
PostgreSQL 11.0 DBA快速上手教程
PostgreSQL允许开发和使用用户自定义函数、类型和操作符,以及第三方扩展。这使得PostgreSQL能够适应各种特定需求,例如GIS功能、全文搜索、NoSQL特性等。 十、监控与日志 有效的监控和日志记录是DBA进行问题排查和...
上海 PostgreSQL 培训课程是针对数据库管理员和 IT 专业人士设计的一系列学习资源,旨在帮助学员深入了解 PostgreSQL 数据库管理系统,并掌握其基本操作和高级特性。PostgreSQL,简称 Postgres,是一款开源的对象...
postgresql-10.16.tar.gz postgresql-11.11.tar.gz postgresql-12.6.tar.gz postgresql-13.2-2-windows-x64-binaries.zip postgresql-13.2.tar.gz postgresql-9.4.26.tar.gz postgresql-9.6.21.tar.gz ...
15. **扩展与插件**:探索PostgreSQL的扩展机制,如地理空间支持(PostGIS)、全文搜索(TSearch2)和其他第三方插件。 通过这个全面的视频教程,学习者将能够熟练地运用PostgreSQL进行数据库设计、数据管理、性能...
PostgreSQL DBA认证PGCE-E-092-中级SQL题目是一个测试SQL掌握程度的题目,涵盖了PostgreSQL数据库管理系统的各种知识点。 LIKE操作符 在PostgreSQL中,LIKE操作符用于字符串模式匹配。LIKE操作符有两种通配符:%和...
它完全可以成为软件产品解决方案中非常重要的一环,特别是针对很多中低端用户,不仅在使用中不会感到任何差异,而且还能节省一部分额外的费用,这对于产品的市场推广是非常有帮助的。想到这里便决定起而行之,花上一...
《postgresql8.2.3用户手册API》是PostgreSQL数据库系统在8.2.3版本中的应用程序编程接口(API)的详细指南。这份手册对于开发者来说是宝贵的资源,它涵盖了如何利用API与PostgreSQL数据库进行交互的各种技术。下面...
PostgreSQL DBA认证 PGCA-E-090 应用管理基础考核题库
根据提供的标题、描述、标签及部分内容,我们可以提炼出与PostgreSQL数据库优化相关的多个知识点。以下是对这些知识点的详细阐述: ### PostgreSQL数据库优化培训视频概述 PostgreSQL是一款强大的开源对象关系型...
Postgresql培训ppt 基础培训课件
PostgreSQL DBA实战视频教程2023|PostgreSQL1 4.6教程 课程1、PostgreSQL安装与管理 课程2、PostgreSQL数据库SQL基础 课程3、PostgreSQL表详解 课程4、PostgreSQL索引详解 课程5、PostgreSQL对象管理 课程6、...
PostgreSQl函数部分阅读笔记 关于函数部分在PostgreSQL中的实现问题的解释 聚集函数