![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
10.PostgreSQL
opendba
这个作者很懒,什么都没留下…
展开
-
postgresql 优化与维护[转]
<br />这是一篇比较老的文章,但写的不错,所以在这转一下,原文地址为 http://www.betalog.com/postgresql-hardware-analyze/<br /><br />postgresql 优化与维护<br />1. 硬件<br /><br />数据库最重要的就是 I/O了。所以一切从I/O开始。<br />RAID: 这个基本不用说,数据库放RAID10上面,只读的备份数据库可以放RAID0,反正挂了没关系。谨记:数据库是Random Read<br /><br />RAI转载 2010-09-01 18:54:00 · 1309 阅读 · 0 评论 -
PostgreSQL的安装
<br />安装PostgreSQL数据库不一定需要root用户权限,普通用户也可以。安装方式有两种,一种是编译安装,一种是直接用已编译好的二进制安装包安装。使用二进制安装包进行安装比较简单,这里就不再介绍了,这里主要介绍编译安装的方法。1. 先介绍编译安装的总体流程:./configure<br />gmake<br />su<br />gmake install<br />adduser postgres<br />mkdir /usr/local/pgsql/data<br />chown postg原创 2010-10-19 10:37:00 · 2518 阅读 · 0 评论 -
Slony-I同步复制配置简单步骤
我们配置一个最简单的同步场景:环境说明只有一台主机,在这台主机中建两个数据库pgbench和pgbenchslave,同步就在这两个数据库之间进行,而pgbench数据库是直接使用pgbench工具生成的测试数据库。我的数据库版本为PostgreSQL8.4.3,PostgreSQL的用户为Postgres。我安装的PostgreSQL的主目录为/usr/local/pgsql 编译安装slony-I下载安装包slony1-2.0.3.tar.bz2到/usr/src目录:tar jxvf slony1-2原创 2010-10-19 10:31:00 · 776 阅读 · 0 评论 -
PostgreSQL与Innodb并发控制大比拼
<br />PostgreSQL与Innodb并发控制大比拼2009年11月22日 00:06<br /> 多版本并发控制技术已经成为未来数据库的发展趋势。目前,多版本并发控制被很多数据库或存储引擎采用,如Oracle,MS SQL Server 2005+, PostgreSQL, Firebird, InnoDB, Falcon, PBXT, Maria等等。新的数据库存储引擎,几乎毫无例外的使用多版本而不是单版本加锁的方法实现并发控制。<br /> 虽然都是多版本,但不同的数据库系统的实现转载 2010-10-18 22:12:00 · 1327 阅读 · 0 评论 -
详解PostgreSQL的TOAST大字段存储方式
PostgreSQL为“大字段“的物理存储提供了TOAST功能,通过合适的配置策略能够减少IO次数和扫描块数,进而提升查询速度。TOAST:The Oversized-Attribute Storage Technique特点:PostgreSQL采用固定页面大小(通常是8Kb,不象oracle在运行期间有多种选择),元组不能跨越多个页面,无法实现“大字段值“的直接存储。TOAST提供了解决方法,允许大的字段值被压缩或分裂为多个物理行。PostgreSQL只为部分数据类型支提转载 2010-10-18 19:12:00 · 2346 阅读 · 0 评论 -
PostgreSQL的权限查询
查看哪些用户对表t1有哪些权限:part00=# /z t1 Access privileges Schema | Name | Type | Access privileges | Column access privileges --------+------+-------+---------------------+-------------------------- public | t1 | table | osdba=arwdDxt原创 2010-09-02 22:33:00 · 2489 阅读 · 0 评论 -
PostgreSQL9.0新特性介绍: alter default privileges,解决只读用户的问题
PostgreSQL9.0提供了一种新的权限方式,即alter default privileges。这个语句的可以解决在数据库中建只读用户的要求。以前在PostgreSQL数据库中,建不了只读用户,即使第一次把所有表的select权限赋给一个用户,但当后面又建新表后,这个只读用户是没有后面新建表的读权限的。而在oracle数据库,只要select any table to xxxx,就建立了一个只读用户。现在PostgreSQL9.0提供了alter default privileges功能后,这个问题不原创 2010-09-01 18:17:00 · 1222 阅读 · 0 评论 -
一台机器上启动多个PostgreSQL实例的方法
<br /> 在一台机器上启动多个PostgreSQL实例的方法很简单:比方说建两个实例:<br />initdb -D /data/pgdata1<br />initdb -D /data/pgdata2<br /> 然后把/data/pgdata1下的postgresql.conf文件中的port参数使用默认值:5432,/data/pgdata2下的postgresql.conf文件中的port一个不同的端口如5433,这样就可以同时启动这两个实例了,启动方法如下:<br />在post原创 2010-09-01 18:52:00 · 4268 阅读 · 0 评论 -
PostgreSQL9.0文档中“持续归档和基于时间点的恢复”部分的翻译
<br />PostgreSQL9.0 beta4版本发布了,在PostgreSQL9.0主要就是对Standby数据库的功能的增加,因为我着重翻译了PostgreSQL9.0文档中的“24.3 持续归档和基于时间点的恢复”<br />全文见我的blog:http://blog.chinaunix.net/u2/84422/showart_2302556.html,这篇翻译介绍了一些理论上的东西,如果想见具体如何搭建standby,请见我的另一个贴子:http://bbs.chinaunix.net/thr原创 2010-09-01 18:48:00 · 1411 阅读 · 0 评论 -
PostgreSQL与MySQL比较
特性MySQLPostgreSQL实例通过执行 MySQL 命令(mysqld)启动实例。一个实例可以管理一个或多个数据库。一台服务器可以运行多个 mysqld 实例。一个实例管理器可以监视 mysqld 的各个实例。通过执行 Postgres 进程(pg_ctl)启动实例。一个实例可以管理一个或多个数据库,这些数据库组成一个集群。集群是磁盘上的一个区域,这个区域在安装时初始化并由一个目录组成,所有数据都存储在这个目录中。使用 initdb 创建第一个数据库。一台机器上可以启动多个实例。数据库数据库是命名的原创 2010-09-01 19:00:00 · 619 阅读 · 0 评论 -
详解PostgreSQL中的checkpoint概念
<br />checkpoint又名检查点,在Oracle中checkpoint的发生意味着之前的脏数据全部写回磁盘,数据库实现了一致性与数据完整性。Oracle在实现介质恢复时将以最近的checkpoint为参照点执行事务前滚。在PostgreSQL中checkpoint起着相同的作用:写脏数据;完成数据库的完整性检查。<br /><br />checkpoints相关参数:<br /><br />checkpoint_segments:<br /><br />WAL log的最大数量,系统默认值是3。该转载 2010-10-25 15:15:00 · 1008 阅读 · 0 评论