- 博客(54)
- 收藏
- 关注
原创 shell读写管道文件
创建管道文件mkfifo test.pipe# write.shi=1while truedo i=$((i+1)) echo $i > test.pipe sleep 2sdone# read.shwhile truedo cat test.pipe sleep 3sdone可以同时有多个读和多个写在运行,实现消息分发功能。...
2021-03-08 23:28:40
754
原创 echo -e 识别转义,unicode
root@10-35-111-140:/$ echo -e \\u4e13\\u6ce8专注root@10-35-111-140:/$root@10-35-111-140:/$ echo -e 'a\bc'croot@10-35-111-140:/$ECHO(1) User ...
2019-09-16 19:01:32
800
原创 ssh -t
ssh -tman ssh ... -T Disable pseudo-terminal allocation. -t Force pseudo-terminal allocation. This can be used to execute arbitrary screen-based programs on a remote machine, ...
2019-09-16 18:49:51
3591
原创 PG 利用FDW的水平分片
利用FDW的水平分片一、 说明架构采用一主多从,主节点和从节点之间采用FDW外部表的方式关联。利用PG的继承和分区表特性做到数据的水平分片。二、 实施验证找五个服务器安装数据库,1一个master库存放全局数据和数据分片的定义,数据路由算法。4个下层节点数据库,用于存放分片数据。207.121.127.106 admin_123 64位 CentOS6.2 TMS9500硬件 ma...
2019-06-29 13:58:03
1041
1
原创 数据库负载查看
数据库负载查看top -c -u postgresselect * from pg_stat_activity;select now(),pg_stat_statements_reset(); -- 记录一下时间-- 按总时间排序。select calls, total_time/calls AS one_call_time, total_time ,rows, 100.0 * sh...
2019-06-29 10:35:07
3406
原创 用户和用户组变成了数字
tar包解压后发现用户和用户组变成了数字,原因是没有这个ID对应的用户UID和用户组GID,手动创建即可[root@localhost postgres]# lltotal 4drwxr-xr-x 6 504 504 4096 Jun 9 09:34 pgsql[root@localhost postgres]# useradd -u 504 -d /home/postgres -g p...
2019-06-29 10:26:59
2883
原创 yum 配置源
本地安装CCProxy虚拟机/etc/yum.repos.d/环境下配置源,例如网易的源/etc/yum.repos.d/CentOS6-Base-163.repo网易源地址http://mirrors.163.com/.help/centos.html配置代理在yum.conf文件最后面加(修改)一行[root@root etc]# vi yum.confkeepcache=1 (改...
2019-06-29 10:18:51
128
原创 PG 窗口函数(待完善)
PG 窗口函数(待完善)窗口函数语法窗口函数别名类似与聚合函数也是对结果集的运算生成一行结果,不同的事窗口函数是对分组内的数据进行运算再返回多行结果。窗口函数语法内置窗口函数 row_num() rank() lag() 等。聚合函数和自定义聚集函数后接over属性也可以作为窗口函数。function_name ([expression [, expression ... ]]) [FI...
2019-06-23 17:47:54
418
原创 PG 聚合函数(待完善)
PG 聚合函数(待完善)string_aggarray_aggstring_aggstring_agg(expression, delimiter)功能 将结果集连接成字符串,并使用指定的分隔符delimiterexpression表示要处理的字符类数据参数类型可以是(text,text)或(bytea,bytea)函数返回类型和入参类型一致array_agg和string_agg...
2019-06-23 16:42:51
505
原创 PG 数据抽样 tablesample
9.5版本前 order by random() 功能可以实现但是性能较差。9.5版本以后 支持tablesample 数据抽样select ... from table_name tablesamplesampling_method (argument[, ...]) [ repeatable (seed)]sampling_method 指抽样方法,主要有 system 和 ...
2019-06-23 16:28:58
1313
转载 PG return next & return query
PG return next & return queryRETURN NEXT expression;RETURN QUERY query;RETURN QUERY EXECUTE command-string [ USING expression [, ... ] ];如果一个PL/pgSQL函数声明为返回SETOF sometype,那么遵循的过程则略有不同。在这种情况...
2019-06-20 11:15:28
2115
原创 PG 踩过的坑 ltree
PG自带的ltree能够比较好的处理树形结构数据,不过存在节点标志的字符限制,只支持a-z A-Z 0-9 _ 这些,其他的字符都会报错。
2019-06-11 15:16:01
557
原创 PG11 index include 覆盖索引
create index idx_tbl_a_sort_key on tbl_a using btree(sort_key) include (user_code_list);其中字段sort_key是text类型 user_code_list 是text[]类型gin 索引不支持 include
2019-02-28 10:40:38
334
原创 真值优先级以及null的特殊性
AND 的情况:false > null > trueOR 的情况: true > null > falseselect null and false; -- falseselect false and null; -- falseselect null and true; -- nullselect true and null; -- nullsele...
2019-02-21 19:57:06
226
原创 postgresql 触发器disable/enable
ALTER TABLE tablename DISABLE TRIGGER ALL;ALTER TABLE tablename ENABLE TRIGGER ALL;
2019-02-19 10:10:12
1593
原创 记录一个踩过的坑 表连接查询相关
create table tbl_a(id integer,id2 integer);create table tbl_b(id integer,id2 integer);truncate tbl_a;truncate tbl_b;insert into tbl_a values (1,1),(2,2),(3,3),(4,4),(5,5),(6,6);insert into tbl_b...
2019-01-23 11:47:11
247
1
转载 PG 表大小
--数据库中单个表的大小(不包含索引)select pg_size_pretty(pg_relation_size('表名'));--查出所有表(包含索引)并排序SELECT table_schema || '.' || table_name AS table_full_name, pg_size_pretty(pg_total_relation_size('"' || table_sc...
2019-01-23 11:44:15
2535
原创 记录一个踩过的坑 数据库函数入参会被declare变量覆盖
同是内部定义的变量会检查冲突入参变量会被declare变量覆盖,没注意的时候可能发生 类型不同也会覆盖定义
2019-01-23 10:16:55
291
原创 记录一个踩过的坑 看不见的特殊字符
记录一个踩过的坑 看不见的特殊字符之前发到优快云上的代码没有以代码格式粘贴,拷贝出来使用的时候在PgAdmin4.3.1版本下没有任何提示信息。在PgAdmin3版本下可以看到错误提示。经过一顿绝望的排查发现是代码里面的空白不是空格也不是制表符。使用notepad++ 显示所有特殊字符后可以发现差异,第一个是制表符,第二个是空格,第三个是不知名的特殊字符。 有没有...
2019-01-22 16:46:38
6556
原创 看PG10文档的笔记
中文文档 http://www.postgres.cn/docs/10 人们广泛认为在一个连接查询中限定所有列名是一种好的风格,这样即使未来向其中一个表里添加重名列也不会导致查询失败。SELECT weather.city, weather.temp_lo, weather.temp_hi,weather.prcp, weather.date, cities.locationFR...
2019-01-22 12:06:51
136
原创 PG系统状态查看
------------------------------------------------------------------------------------------------------------- pg_stat---------------------------------------------------------------------------------...
2019-01-18 10:30:37
2923
原创 SSH互信
一、在SSH服务器所在机器上1、以root用户登录,更改ssh配置文件 /etc/ssh/sshd_config,去除以下配置的注释RSAAuthentication yes #启用rsa认证PubkeyAuthentication yes #启用公钥私钥配对认证方式AuthorizedKeysFile .ssh/authorized_keys #公钥文件路径2、重启SSH服务[...
2019-01-14 16:36:29
4672
转载 SSH连接慢问题解决
现在连接linux服务器一般都是使用SSH远程连接的方式。最近新装了一台服务器,发现telnet时速度很快,ping时一切也正常,但SSH连接的时候却很慢。经过网上资料查询,大致是有以下几种原因:1、SERVER的SSHD会去DNS查找访问的CLIENT IP的HOSTNAME,如果DNS不可用或者没有相关记录,就会消耗一段时间。2、在authentication gssapi-with-m...
2019-01-14 16:35:13
377
转载 pg_hint_plan
安装https://github.com/ossc-db/pg_hint_plan/releases # export PATH= /home/postgres/pgsql/bin:$PATH# gmake clean # gmake # gmake install vi $PGDATA/postgresql.conf shared_preload_li...
2019-01-14 15:11:01
419
转载 PG日志审计
PG日志审计日志审计的几种方式PostgreSQL自带的日志审计,实现语句级别,数据库级别,用户级别的审计。弊端是审计颗粒度太大。http://blog.163.com/digoal@126/blog/static/16387704020132208241607/通过事件触发器审计数据库或限制数据库的DDL操作。弊端是目前只能审计DDL操作。http://blog.163.c...
2019-01-14 15:01:38
1184
原创 PG索引类型
PG索引类型索引类型CREATE INDEX 在一个指定表或者物化视图的指定列上创建一个索引,索引主要用来提高数据库的效率(尽管不合理的使用将导致较慢的效率)btree选择性越好(唯一值个数接近记录数)的列,越适合b-tree。当被索引列存储相关性越接近1或-1时,数据存储越有序,范围查询扫描的HEAP PAGE越少。 支持多列索引,默认最多32列,编译可改。(通过调整pg...
2019-01-14 14:58:11
3063
原创 inline code
do language plpgsql $$ declare -- .... begin -- .... end; $$;
2019-01-14 12:02:55
402
转载 Linux内存Cache和Buffer理解
https://linux.cn/article-7310-1.htmlhttps://blog.youkuaiyun.com/lqglqglqg/article/details/82313966https://www.cnblogs.com/chenpingzhao/p/5161844.htmlhttps://www.cnblogs.com/sunqim16/p/6580388.html
2019-01-09 16:35:57
176
原创 PG表膨胀及对策
PG表膨胀及对策检查表膨胀方法一 查询pg_stat_all_tables系统表SELECT schemaname||'.'||relname, n_dead_tup, n_live_tup, round(n_dead_tup * 100 / (n_live_tup + n_dead_tup),2) AS dead_tup_ratioFROM...
2019-01-09 12:04:07
2283
原创 测试 数据库函数嵌套调用xid是同一个
select * from func_aa();NOTICE: func_aa() : 4414931NOTICE: func_bb() : 4414931NOTICE: func_cc() : 4414931NOTICE: func_cc() : 4414931NOTICE: func_bb() : 4414931NOTICE: func_aa() : 4414931...
2019-01-09 11:44:56
128
原创 pgadmin4信息收集语句
-- pgadmin4信息收集语句 SELECT (SELECT sum(tup_inserted) FROM pg_stat_database) AS "Inserts", (SELECT sum(tup_updated) FROM pg_stat_database) AS "Updates", (SELECT sum(tup_deleted) FROM pg_st...
2019-01-09 11:21:27
595
原创 PG in & not in系列方案比较
PG in¬ inin VS join VS any VS exists模型Apostgres=# create table tbl_a (a integer primary key, b char(128));CREATE TABLETime: 67.026 mspostgres=# create table tbl_b (a integer pri...
2019-01-02 10:55:40
1913
转载 Load average高排查
https://www.jianshu.com/p/3edc2c9f05e9 查CPU使用率比较高的线程小脚本:#!/bin/bashLANG=CPATH=/sbin:/usr/sbin:/bin:/usr/bininterval=1length=86400for i in $(seq 1 $(expr ${length} / ${interval}));do...
2018-12-28 14:43:38
670
转载 pg_awr相关信息
https://github.com/digoal/blog/blob/master/201611/20161123_01_sql_001.sql https://github.com/digoal/blog/blob/master/201611/20161123_01_pdf_001.md https://github.com/digoal/blog/blob/master/20...
2018-12-25 10:18:36
585
原创 postgresql信息统计分析
------------------------------------------------------------------------------------------------------------- pg_stat---------------------------------------------------------------------------------...
2018-12-21 16:56:24
1570
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人