神马软件站
首页 > 数据库 > PostgreSQL
Postgre数据库Insert 、Query性能优化详解
Postgre数据库Insert 、Query性能优化详解
一、前言 以前的系统由于表设计比较复杂(多张表,表与表直接有主从关系),这个是业务逻辑决定的。 插入效率简直实在无法忍受,必须优化。在了解了Postgre的Copy,unlogged table 特性 之后,决定一探究竟。 二、测试用例 1.数据表结构:表示一个员工工作绩效...

11-11

用PostgreSQL数据库做地理位置app应用
用PostgreSQL数据库做地理位置app应用
项目中用到了postgreSQL中的earthdistance()函数功能计算地球上两点之间的距离,中文的资料太少了,我找到了一篇 英文的、讲的很好的文章 ,特此翻译,希望能够帮助到以后用到earthdistance的同学。 做一个GEO应用从来都不是一件容易的事。但是用一些身边的...

11-11

PostgreSQL教程(十二):角色和权限管理介绍
PostgreSQL教程(十二):角色和权限管理介绍
PostgreSQL是通过角色来管理数据库访问权限的,我们可以将一个角色看成是一个数据库用户,或者一组数据库用户。角色可以拥有数据库对象,如表、索引,也可以把这些对象上的权限赋予其它角色,以控制哪些用户对哪些对象拥有哪些权限。 一、数据库角色: 1. 创...

11-11

SQL Server数据迁移至PostgreSQL出错的解释以及解决方案
SQL Server数据迁移至PostgreSQL出错的解释以及解决方案
问题重现: 1、PG客户端: postgres=# create table text_test (id int,info text);CREATE TABLEpostgres=# insert into text_test values (1,E'\0x00');ERROR: invalid byte sequence for encoding...

11-11

初识PostgreSQL存储过程
初识PostgreSQL存储过程
什么是存储过程, 百度百科是这么定义的:存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来...

11-11

CentOS中运行PostgreSQL需要修改的内核参数及配置脚本分享
CentOS中运行PostgreSQL需要修改的内核参数及配置脚本分享
PostgreSQL在CentOS上部署的时候,需要设置一些操作系统的参数,官方文档上列举了一些(传送门)。除了这些,还有一些其他的设置,如单个用户允许的最大进程数,单个进程的最大句柄数等,这些一般也需要调整,否则系统会在一些条件下出现问题,或者性能下降。...

11-11

PostgreSQL教程(八):索引详解
PostgreSQL教程(八):索引详解
一、索引的类型: PostgreSQL提供了多 种索引类型:B-Tree、Hash、GiST和GIN,由于它们使用了不同的算法,因此每种索引类型都有其适合的查询类型,缺省时,CREATE INDEX命令将创建B-Tree索引。 1. B-Tree: 复制代码 代码如下: CREATE TABLE test1 ( id integ...

11-11

PostgreSQL教程(十一):服务器配置
PostgreSQL教程(十一):服务器配置
一、服务器进程的启动和关闭: 下面是pg_ctl命令的使用方法和常用选项,需要指出的是,该命令是postgres命令的封装体,因此在使用上比直接使用postgres更加方便。 复制代码 代码如下: pg_ctl init[db] [-D DATADIR] [-s] [-o...

11-11

PostgreSQL管理工具phpPgAdmin入门指南
PostgreSQL管理工具phpPgAdmin入门指南
一、安装phpPgAdmin 将下载的压缩包解压 对于 tar.gz 执行如下命令: 复制代码 代码如下:gunzip phpPgAdmin-*.tar.gz tar -xvf phpPgAdmin-*.tar 对于 tar.bz2 执行如下命令: 复制代码 代码如下:bunzip2 phpPgAdmin-*.tar.bz2 tar -xvf phpPgAdmin-*.tar 对...

11-11

PostgreSQL ERROR: invalid escape string 解决办法
PostgreSQL ERROR: invalid escape string 解决办法
今天有同事在配置PostgreSQL为Hive元数据库后,运行Hive SQL时遇到以下报错信息: 复制代码 代码如下: Caused by: MetaException(message:Got exception: org.apache.hadoop.hive.metastore.api.MetaException javax.jdo.JDODataStoreException: Error execu...

11-11

解决PostgreSQL服务启动后占用100% CPU卡死的问题
解决PostgreSQL服务启动后占用100% CPU卡死的问题
进程中有N个postgres.exe(此为正常,见官方文档),却有一个始终占满CPU(由于本机是双核,占用了50%的资源)。自带的pgAdmin III连接会死掉。 此问题在网上搜索没找到答案。 查看日志发现有这样一条错误信息: %t LOG: could not receive data from clien...

11-11

PostgreSQL 数据库性能提升的几个方面
PostgreSQL 数据库性能提升的几个方面
1.使用EXPLAIN EXPLAIN命令可以查看执行计划,在前面的blog中已经介绍过。这个方法是我们最主要的调试工具。 2.及时更新执行计划中使用的统计信息 由于统计 信息不是每次操作数据 库 都 进 行更新的,一般是在 VACUUM 、 ANALYZE 、 CREATE INDEX等DDL执行的...

11-11

PostgreSQL 安装和简单使用第1/2页
PostgreSQL 安装和简单使用第1/2页
据我了解国内四大国产数据库,其中三个都是基于PostgreSQL开发的。并且,因为许可证的灵活,任何人都可以以任何目的免费使用,修改,和分发 PostgreSQL,不管是私用,商用,还是学术研究使用。本文只是简单介绍一下postgresql的安装和简单的使用,语法方面涉...

11-11

深入解读PostgreSQL中的序列及其相关函数的用法
深入解读PostgreSQL中的序列及其相关函数的用法
这篇文章主要介绍了PostgreSQL中的序列及其相关函数的用法,包括序列的更新和删除等重要知识,需要的朋友可以参考下 p一、简介/p p序列对象(也叫序列生成器)就是用CREATE SEQUENCE 创建的特殊的单行表。一个序列对象通常用于为行或者表生成唯一的标识符。/p p...

11-11

Windows PostgreSQL 安装图文教程
Windows PostgreSQL 安装图文教程
它提供了多版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户定义类型和函数), 并且可以获得非常广阔范围的(开发)语言绑定 (包括 C,C++,Java,perl,tcl,和 python)。本文介绍的是其在windows系统下的安装过程。 一般说来,一个现代的与...

11-11

PostgreSQL教程(十四):数据库维护
PostgreSQL教程(十四):数据库维护
一、恢复磁盘空间: 在PostgreSQL中,使用delete和update语句删除或更新的数据行并没有被实际删除,而只是在旧版本数据行的物理地址上将该行的状态置为已删除或已过期。因此当数据表中的数据变化极为频繁时,那么在一段时间之后该表所占用的空间将会变得很大...

11-11

PostgreSQL教程(十六):系统视图详解
PostgreSQL教程(十六):系统视图详解
一、pg_tables: 该视图提供了对有关数据库中每个表的有用信息地访问。 名字 类型 引用 描述 schemaname name pg_namespace.nspname 包含表的模式名字。 tablename name pg_class.relname 表的名字。 tableowner name pg_authid.rolname 表的所有者的名字。 t...

11-11

PostgreSQL教程(十五):系统表详解
PostgreSQL教程(十五):系统表详解
一、pg_class: 该系统表记录了数据表、索引(仍然需要参阅pg_index)、序列、视图、复合类型和一些特殊关系类型的元数据。注意:不是所有字段对所有对象类型都有意义。 名字 类型 引用 描述 relname name 数据类型名字。 relnamespace oid pg_namespace.oid 包...

11-11

PostgreSQL教程(一):数据表详解
PostgreSQL教程(一):数据表详解
一、表的定义: 对于任何一种关系型数据库而言,表都是数据存储的最核心、最基础的对象单元。现在就让我们从这里起步吧。 1. 创建表: 复制代码 代码如下: CREATE TABLE products ( product_no integer, name text, price numeric ); 2. 删除表: 复制代码...

11-11

PostgreSQL教程(五):函数和操作符详解(1)
PostgreSQL教程(五):函数和操作符详解(1)
一、逻辑操作符: 常用的逻辑操作符有:AND、OR和NOT。其语义与其它编程语言中的逻辑操作符完全相同。 二、比较操作符: 下面是PostgreSQL中提供的比较操作符列表: 比较操作符可以用于所有可以比较的数据类型。所有比较操作符都是双目操作符,且返回boolean...

11-11

修改一行代码提升 Postgres 性能 100 倍
修改一行代码提升 Postgres 性能 100 倍
在一个(差)的 PostgreSQL 查询中只要一个小小到改动 (ANY(ARRAY[...])to ANY(VALUES(...))) 就能把查询时间从20s缩减到0.2s。从最简单的学习使用 EXPLAIN ANALYZE 开始,到学习使用 Postgres community 大量学习时间的投入将有百倍时间到回报。 使用Postgr...

11-11

PostgreSQL中的OID和XID 说明
PostgreSQL中的OID和XID 说明
oid: 行的对象标识符(对象 ID)。这个字段只有在创建表的时候使用了 WITH OIDS ,或者是设置了default_with_oids 配置参数时出现。 这个字段的类型是 oid (和字段同名)。 例子: 复制代码 代码如下: CREATE TABLE pg_language ( lanname name NOT NULL, l...

11-11

PostgreSQL教程(四):数据类型详解
PostgreSQL教程(四):数据类型详解
一、数值类型: 下面是PostgreSQL所支持的数值类型的列表和简单说明: 1. 整数类型: 类型smallint、integer和bigint存储各种范围的全部是数字的数,也就是没有小数部分的数字。试图存储超出范围以外的数值将导致一个错误。常用的类型是integer,因为它提供...

11-11

PostgreSQL中关闭死锁进程的方法
PostgreSQL中关闭死锁进程的方法
由于使用的PostgreSQL数据库,没有资料。只好进行谷歌。 最终在一个英文论坛中发现了解决方法。 如下: 1.检索出死锁进程的ID 复制代码 代码如下: SELECT * FROM pg_stat_activity WHERE datname='死锁的数据库ID '; 检索出来的字段中,【wating 】字段,数...

11-11

PostgreSql新手必学入门命令小结
PostgreSql新手必学入门命令小结
1、命令行登录数据库 有两种方式,一是直接在系统shell下执行psql命令;而是先进入psql环境,然后再连接数据库。下面分别给出实例: (1)直接登录 执行命令:psql -h 172.16.35.179 -U username -d dbname ,其中username为数据库用户名,dbname为要连接的数...

11-11

 1 2 3>
返回顶部