vIndex := 0 ;vCount := 0;
for vRecord in select objectid, (name || ',' || address || ',' || post || ',' || contacts || ',' || tel || ',' || fax || ',' || describe) as search from t_centerprises where objectid>vCurid order by objectid limit 1000 loop
vIndex := (vIndex + 1); vCurid :=vRecord.objectid; vCount := (vCount + 1);
insert into share.t_centerprises (objectid, plain) values(vRecord.objectid,vRecord.search);
if( 1000 = vCount ) then
raise notice '%', vCurid;
vCount := 0 ;
end if;
end loop;
if(0 = vIndex) then
raise notice '%', vCurid;
vCount := 0 ;
return;
end if;
end loop;
end$$;
do $$ declare vRecord record; declare vCurId bigint; declare vIndex bigint; declare vCount bigint;begin vIndex:=0; vCurid := 0; loop vIndex := 0 ;vCount := 0; for vRecord in select objectid
Greenplum 集群
之间
同步
数据
方法及性能.....................................................................................1
1 概述.................................................................................................................................................2
2 相同集群相同
数据
库不同 SCHEMA
之间
同步
数据
....................................................................2
2.1 查看原始
表
的大小行数与结构......................................................................................... 2
2.2 同步语句..............................................................................................................................2
2.3 查看 cpu 与内存的使用情况..............................................................................................3
2.3.1 查看 Master CPU 与内存使用情况.........................................................................3
2.3.2 查看
数据
节点的 CPU 使用情况..............................................................................3
2.3.3 查看
数据
节点的内存与磁盘使用情况..................................................................6
2.4 查看耗时与
表
的大小..........................................................................................................7
3 相同集群不同
数据
库
之间
同步
数据
.............................................................................................8
3.1 使用 pg_dum 方式同步
数据
..............................................................................................8
3.1.1 查看原始
表
的信息...................................................................................................8
3.1.2 把
数据
下载到磁盘...................................................................................................9
3.1.2.1 下载
数据
语句............................................................................................... 9
3.1.2.2 查看 Master 节点详细信息.........................................................................9
3.1.3 把
数据
导
入到
数据
库中........................................................................................ 10
3.1.3.1
导
入
数据
库语句......................................................................................... 10
3.1.3.2 查看 Master 节点的详细信息...................................................................11
3.1.3.3 查看
数据
节点的详细信息.........................................................................11
3.1.4 验证
数据
的准确性................................................................................................ 13
3.1.5 pg_dump 同步
数据
总结........................................................................................13
3.2 使用 dblink 同步
数据
........................................................................................................13
3.2.1 dblink 同步相同集群不同
数据
库的
数据
.............................................................13
3.2.1.1 同步语句......................................................................................................13
3.2.1.2 查看 Master 节点的详细信息...................................................................15
3.2.1.3 查看
数据
节点的详细信息.........................................................................15
3.2.2 验证
数据
的准确性................................................................................................ 17
3.2.3 dblink 使用总结......................................................................................................17
3.3 使用 gptransfer 同步
数据
.................................................................................................17
3.3.1 gptransfer 介绍.......................................................................................................17
3.3.2 gptransfer 命令参数介绍.......................................................................................18
3.3.3 查看集群及硬件信息............................................................................................ 19
3.3.4 同集群
之间
同步
数据
............................................................................................ 19
3.3.4.1 查看
表
的详细信息..................................................................................... 19
3.3.4.2 进行
表
数据
同步......................................................................................... 19
3.3.4.3 查看硬件详细信息..................................................................................... 21
3.3.4.4 查看
数据
的准确性..................................................................................... 23
3.3.4.5 使用 gptransfer 总结...................................................................................23
3.3.5 不同集群
之间
同步
数据
........................................................................................ 24
PostgreSQL
9.5.4
数据
库
快速
INSERT大量
数据
研究
在一些应用场景中,需要向
PostgreSQL
数据
库中
快速
装入大量的
数据
,比如
数据
库迁移,SQL日志分析等。在PG上
快速
插入
数据
有几种方案?每种方案的效率怎么样?如何调优能加快的
数据
装载?
SQL日志分析是一个采集JDBC日志、分析SQL、发送分析结果工具。在分析阶段,需要解析大量的JDBC日志,并把解析后的结构化结...
因为论坛上回答了一个帖子,也记录在这里。
写入
数据
库的性能有好多影响因素,大概帮着总结几句。如果有钱,愿意投入10-20万,那直接转到最后(0)。
1、如果是备份整体一波
导
入(如pgRestore),那就是COPY最快,而非INSERT。
导
入完了,再建立索引和各种约束。
2、那种
表
单可以整体删除、改名的,参考1. 先建立临时
表
,
导
入完毕后,老的改_OLD,新的改为正确的名字。
3、大部分情况是无法如此理想的,面对的都是热
导
入(结构、约束、参照完整性、名称都不能修改)。一般遵循4-6.
4、
导
入前调整参数po
postgresql
数据
库 INSERT 或 UPDATE 大量
数据
时速度慢的原因分析
文章目录
postgresql
数据
库 INSERT 或 UPDATE 大量
数据
时速度慢的原因分析前言一 死元祖过多1.1 什么是元祖?1.2 死元祖过多的危害1.3 查询死元祖情况1.4 解决办法二 索引过多
导
致插入过慢三 触发器四 死锁
最近这段时间一直使用pg
数据
库插入更新大量的
数据
,发现pg
数据
库有时候插入
数据
非常慢,这里我对此问题作出分析,找到一部分原因,和解决办法。
一 死元祖过多
提起pg
数据
库,
1、CREATE TABLE bas_cm_customer_bak AS(SELECT * from bas_cm_customer limit 0)
2、CREATE TABLE bas_cm_customer_bak (LIKE bas_cm_customer)
二、复制
表
结构及
数据
1、CREATE TABLE bas_cm_customer_bak AS(...
- `table_name` 是要
导
入
数据
的
表
的名称。
- `file_path` 是
数据
文件的路径。
- `WITH (FORMAT CSV, HEADER)` 告诉
PostgreSQL
导
入的
数据
是 CSV 格式且带有列头。
2. 使用 `psql` 命令行客户端:
psql -U username -d database_name -c "\copy table_name FROM 'file_path' WITH (FORMAT CSV, HEADER)"
- `username` 是
数据
库用户的名称。
- `database_name` 是
数据
库的名称。
- `table_name` 和 `file_path` 含义与上面的示例相同。
如果
数据
文件与当前
数据
库服务器不在同一个主机上,则可以将
数据
文件传输到
数据
库服务器并在服务器上使用上述方法
导
入
数据
。