postgres优化项及linux上pg操作记录
1、linux切换到pg命令:
$ su - postgres
$ psql
postgres=#
2、查看/退出pg
ps -ef |grep postgres
postgres=# \q
3、一般优化项
|
参数名 |
作用 |
64GB建议值 |
256GB建议值 |
|
shared_buffers |
设置PostgreSQL中用于缓存的专用内存量。建议的设置值为机器总内存大小的25%。 |
16GB |
64GB |
|
wal_buffers |
WAL(预写日志)记录缓冲区,由wal_buffers定义的缓冲区的默认大小为16MB,但如果有大量并发连接的话,则设置为一个较高的值可以提供更好的性能。 |
32MB |
64MB |
|
max_wal_size |
WAL(预写日志),增大max_wal_size可以延长checkpoint时间间隔 |
10GB |
10GB |
|
effective_cache_size |
用于磁盘高速缓存的内存量的估计值。更高的数值会使得索引扫描更可能被使用,更低的数值会使得顺序扫描更可能被使用。 |
32GB |
128GB |
|
work_mem |
用于复合排序,全局设置此参数可能会导致内存使用率过高,强烈建议在会话级别修改此参数。 |
4MB |
16MB |
|
maintenance_work_mem |
用于维护任务的内存设置。 |
64MB |
256MB |
|
checkpoint_completion_target |
在两个checkpoint之间多长时间内完成刷盘动作,数值越小对磁盘IO能力要求越高 |
0.8 |
0.8 |
4、查看现有参数值
postgres=# show effective_cache_size;
动态修改现有参数:
alter system set effective_cache_size='16GB';(单位大写字母,单引号)
动态修改参数后生效:
postgres=# select pg_reload_conf();
以上优化项中shared_buffers需要重启pg,其他的修改完后直接执行一次 select pg_reload_conf(); 即可
5、快速停止,启动,重启pg
#su - postgres -c "/usr/pgsql-9.6/bin/pg_ctl stop -m fast -D /opt/pgsql/9.6/data"
#su - postgres -C "/usr/pgsql-9.6/bin/pg_ctl start -m fast -D /opt/pgsql/9.6/data"
#su - postgres -C "/usr/pgsql-9.6/bin/pg_ctl restart -m fast -D /opt/pgsql/9.6/data"
-D /opt/pgsql/9.6/data表示pg中数据存储所在的路径
6、查看长事务
SELECT * FROM pg_stat_activity
WHERE STATE <> 'idle'
AND pg_backend_pid () != pid
AND ( backend_xid IS NOT NULL OR backend_xmin IS NOT NULL )
AND EXTRACT (epoch FROM ( now() - xact_start )) > 60
ORDER BY xact_start;
杀掉长事务会话:select pg_terminate_backend(pid);
postgres优化项及linux上pg操作记录的更多相关文章
- [原创]gerrit上分支操作记录(创建分支、删除分支)
Git分支对于一个项目的代码管理而言,是十分重要的! 许多久用git的朋友可能已经掌握的很牢固了,但对于一些初涉git的童鞋来说,可能还不是很熟悉. 在此,我将自己的一些操作经历做一梳理,希望能帮助到 ...
- Gerrit上分支操作记录(创建分支、删除分支)
Git分支对于一个项目的代码管理而言,是十分重要的!许多久用git的朋友可能已经掌握的很牢固了,但对于一些初涉git的童鞋来说,可能还不是很熟悉.在此,我将自己的一些操作经历做一梳理,希望能帮助到有用 ...
- linux下用户操作记录审计环境的部署记录
通常,我们运维管理人员需要知道一台服务器上有哪些用户登录过,在服务器上执行了哪些命令,干了哪些事情,这就要求记录服务器上所用登录用户的操作信息,这对于安全维护来说很有必要.废话不多说了,下面直接记录做 ...
- Cobbler自动化批量安装linux服务器的操作记录
Cobbler为何物?Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows.该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命 ...
- linux中的操作记录
在hadoop上运行jar文件:hadoop jar xxx.jar main路径 命令模式: 1.dd 删除光标所在的当前行 2.Ctrl+u 删除光标所在行光标之前的内容 3.命令模式下,按‘/’ ...
- Spark+Hadoop+Hive集群上数据操作记录
[rc@vq18ptkh01 ~]$ hadoop fs -ls / drwxr-xr-x+ - jc_rc supergroup 0 2016-11-03 11:46 /dt [rc@vq18ptk ...
- linux查看历史操作记录并且显示执行时间
vim ~/.bashrc 或者 ~/.bash_profile 增加:export HISTTIMEFORMAT="%F %T " 查看历史记录之前先执行: 然后使用hist ...
- 定时备份windows机器上的文件到linux服务器上的操作梳理(rsync)
由于需要对网络设备做备份,备份文件是放到windows机器上的.现在需要将备份数据同步到linux备份机器上,想到的方案有三种: 1)将windows的备份目录共享出来,然后在linux服务器上进行挂 ...
- 运维利器-ClusterShell集群管理操作记录
在运维实战中,如果有若干台数据库服务器,想对这些服务器进行同等动作,比如查看它们当前的即时负载情况,查看它们的主机名,分发文件等等,这个时候该怎么办?一个个登陆服务器去操作,太傻帽了!写个shell去 ...
随机推荐
- RichView
TRichView中文文档 TRichView 是Delphi/C++Builder 控件,主要用于显示.编辑和打印超文本文档. 新版本解决多个兼容性问题,更新了字符串标签.剪贴板.RTF和DB组件 ...
- 吉首大学校赛 A SARS病毒 (欧拉降幂)
链接:https://ac.nowcoder.com/acm/contest/925/A来源:牛客网 题目描述 目前,SARS 病毒的研究在世界范围内进行,经科学家研究发现,该病毒及其变种的 DNA ...
- Ext——xtype各组件类型
Ext.form.TextField的 xtype类型
- linux基础知识汇总(四)--ps grep命令
转:http://www.cnblogs.com/allen8807/archive/2010/11/10/1873843.html http://www.cnblogs.com/end/archiv ...
- Java-Class-I:org.springframework.web.mutipart.MutipartFile
ylbtech-Java-Class-I:org.springframework.web.mutipart.MutipartFile 1.返回顶部 2.返回顶部 1.1. import org.s ...
- 一道腾讯面试题:如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?布隆过滤器
何为布隆过滤器 还是以上面的例子为例: 判断逻辑: 多次哈希: Guava的BloomFilter 创建BloomFilter 最终还是调用: 使用: 算法特点 使用场景 假设遇到这样一个问题:一个网 ...
- Linux shell模拟多线程拷贝
#!/bin/sh #日志文件 log_file=/data/threadcp.log a=$(date +%H%M%S) echo -e "startTime:\t$a" #最大 ...
- Http协议中get和post的区别 转载https://www.cnblogs.com/lexiaofei/p/http.html
get(默认值)是通过URL传递表单值,数据追加在action属性后面. post传递的表单值是隐藏到http报文体中,url中看不到. get是通过url传递表单值,post通过url看不到表单域的 ...
- 【转】/bin/bash^M: bad interpreter: 没有那个文件或目录
运行脚本时出现了这样一个错误,打开之后并没有找到所谓的^M,查了之后才知道原来是文件格式的问题,也就是linux和windows之间的不完全兼容,解决的方法有两种: 1 如果os中已经安装dos2un ...
- Java全栈,MySQL搞透,架构手到擒来,还有面试官搞不定?
五月最后一天啦,时间过得真快,做技术的难免做了几年就感觉很迷茫,那就需要多读点书,多学点技术才能有安全感. 栈长之前推荐过不少极客时间的课程,几乎每周都推荐一个,很多朋友评论说,课程太多学不过来,今天 ...