PG修改参数方法
1.查看参数文件位置
postgres=# show config_file;
config_file
----------------------------------
/data/pgsql_data/postgresql.conf
(1 row)
postgres=# show hba_file;
hba_file
------------------------------
/data/pgsql_data/pg_hba.conf
(1 row)
postgres=# show ident_file;
ident_file
--------------------------------
/data/pgsql_data/pg_ident.conf
(1 row)
2.查看当前会话参数
show all;
postgres=# show enable_hashjoin;
enable_hashjoin
-----------------
on
(1 row)
postgres=# \x
Expanded display is on.
postgres=# select * from pg_settings where name in ('enable_hashjoin');
-[ RECORD 1 ]---------------------------------------------
name | enable_hashjoin
setting | on
unit |
category | Query Tuning / Planner Method Configuration
short_desc | Enables the planner's use of hash join plans.
extra_desc |
context | user
vartype | bool
source | default
min_val |
max_val |
enumvals |
boot_val | on
reset_val | on
sourcefile |
sourceline |
3.修改参数值
3.1全局修改pg的参数.
- 1.alter system 命令修改参数.使用alter system命令将修改postgresql.auto.conf文件,而不是postgresql.conf,这样可以很好的保护postgresql.conf文件,加入你使用很多alter system命令后搞的一团糟,那么你只需要删除postgresql.auto.conf,再重新加
postgres=# show work_mem;
-[ RECORD 1 ]-
work_mem | 4MB
postgres=# alter system set work_mem='8MB';
ALTER SYSTEM
postgres=# show work_mem;
-[ RECORD 1 ]-
work_mem | 4MB
[postgres@mysql56 pgsql_data]$ cat postgresql.auto.conf
# Do not edit this file manually!
# It will be overwritten by ALTER SYSTEM command.
work_mem = '8MB'
3.2修改会话级参数
使用set命令,在会话层修改,修改之后将被用于未来的每一个事务,只对当前会话有效
postgres=# set work_mem='16MB';
SET
postgres=# show work_mem;
-[ RECORD 1 ]--
work_mem | 16MB
postgres=# set session work_mem='32MB';
SET
3.3添加local关键字,只在当前事务中修改,只在当前事务内有效:
postgres=# show work_mem;
-[ RECORD 1 ]--
work_mem | 32MB
postgres=# begin;
BEGIN
postgres=# set local work_mem='8MB';
SET
postgres=# show work_mem;
-[ RECORD 1 ]-
work_mem | 8MB
postgres=# commit;
COMMIT
postgres=# show work_mem;
-[ RECORD 1 ]--
work_mem | 32MB
postgres=#
4.reset回复默认值
postgres=# show work_mem;
-[ RECORD 1 ]--
work_mem | 32MB
postgres=# reset work_mem;
RESET
postgres=# show work_mem;
-[ RECORD 1 ]-
work_mem | 4MB
# reset all回复所有默认值
5.为特定的数据库里的所有的用户设置参数,例如为test数据库所有的连接设置work_mem为16MB:
postgres=# alter database bluemoon set work_mem='16MB';
ALTER DATABASE
6.为数据库中的某个特定用户设置参数.例如为brent用户,设置work_mem为2MB:
postgres=# alter role bluemoon set work_mem='2MB';
ALTER ROLE
# 数据库中与用户粒度为准
7.当前的参数值是从何处指定,可以通过查询pg_setttings中的source字段获取
postgres=# select name,setting,source from pg_settings where name='work_mem';
-[ RECORD 1 ]-----
name | work_mem
setting | 4096
source | default
- archive_command
archive_command = 'DATE=`date +%Y%m%d`; DIR="/mysqldata/pg/pgarch/$DATE; (test -d $DIR||mkdir -p $DIR)&&cp %p $DIR/%f"'
# %p代表的是相对目录$PGDATA下的pg_xlog, %f代表的是文件名
PG修改参数方法的更多相关文章
- Spring Aop 修改目标方法参数和返回值
一.新建注解 @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Document ...
- SQL存储过程-新增和修改,参数Xml数据类型
输入参数:xml数据类型 功能:新增和修改 --value() 方法从 XML 中检索 rogue 属性值.然后将该值分配给 int 变量. --将 Member 节点拆分成多行 SELECT T ...
- RAC环境修改参数生效测试
本篇文档--目的:实验测试在RAC环境下,修改数据库参数与单实例相比,需要注意的地方 --举例说明,在实际生产环境下,以下参数很可能会需要修改 --在安装数据库完成后,很可能没有标准化,初始化文档,没 ...
- mysql不重启修改参数变量
分享下mysql不重启的情况下修改参数变量的方法. 通常来说,更新mysql配置my.cnf需要重启mysql才能生效,但是有些时候mysql在线上,不一定允许你重启,这时候应该怎么办呢? 例子: m ...
- JS高级. 06 缓存、分析解决递归斐波那契数列、jQuery缓存、沙箱、函数的四种调用方式、call和apply修改函数调用方法
缓存 cache 作用就是将一些常用的数据存储起来 提升性能 cdn //-----------------分析解决递归斐波那契数列<script> //定义一个缓存数组,存储已经计算出来 ...
- phpcms搜索给分页代码添加参数方法
在使用PHPCMS开发网站时遇到了一个搜索功能,需要在搜索结果分页链接上添加一些传递的参数,不然不能够正确翻页. 方法: 找到\phpcms\libs\functions\global.func.ph ...
- Action接收页面传来的参数方法
接收页面传来的参数方法 1.第一种:在action中设置相应的变量 在相应的action中设置与将要传进来的参数名相同的变量 eg: 页面传给后台两个参数 name=chance & age ...
- C# 中的可变参数方法(VarArgs)
首先需要明确一点:这里提到的可变参数方法,指的是具有 CallingConventions.VarArgs 调用约定的方法,而不是包含 params 参数的方法.可以通过MethodBase.Call ...
- 练习3:修改withdraw 方法
练习目标-使用有返回值的方法:在本练习里,将修改withdraw方法以返回一个布尔值来指示交易是否成功. 任务 1.修改Account类 a.修改deposit 方法返回true(意味所有存款是成功的 ...
随机推荐
- zabbix 微信告警机制
微信告警首先得注册一个企业微信,然后才能实现微信告警.自行百度 微信: 添加一个用户到上面创建的部门里面 创建完成记住 AgentID 和 Secret 下一步:记住企业 ID 1)编辑zabbix ...
- Android:finish()与System.exit(0)之间的区别
finish()与System.exit(0)都是用来退出.但是两者还是有一定的区别: finish是Activity的类,仅仅针对Activity,当调用finish()时,只是将活动推向后台,并没 ...
- axios的使用小技巧:如何绕过字符串拼接,直接传递对象
Vue.js官方推荐使用axios作为发送http请求的工具,在使用axios中,有些小技巧是不容易发现的.当我们不知道这些技巧时,我们可能会使用其他"奇技淫巧",比如,我们很容 ...
- Vue Cli 3 打包上线 静态资源404问题解决方案
报错原因:静态资源丢失 解决方案 官方文档https://cli.vuejs.org/zh/config/#vue-config-js baseUrl 从 Vue CLI 3.3 起已弃用,请使用pu ...
- Nginx入门及如何反向代理解决生产环境跨域问题
1.Nginx入门与基本操作篇 注:由于服务器是windows系统,所以本文主要讲解Nginx在windows下的操作. 首先下载Nginx 解压缩,我们所有的配置基本都在万能的 nginx/conf ...
- 1745 Divisibility
Divisibility Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 14084 Accepted: 4989 Descrip ...
- unittest(简介)
一.unittest框架介绍: unittest框架是python中的一个单元测试框架,该模块包括许多的类如 TestCase 类.TestSuite 类.TextTestRunner 类.TestR ...
- Regex 正则表达式入门
0,什么是正则表达式 正则表达式(Regular Expression简写为Regex),又称为规则表达式,它是一种强大的文本匹配模式,其用于在字符串中查找匹配符合特定规则的子串. 正则表达式是独立于 ...
- Javajdk的安装
初次接触Java,这是我真正接触的第一门编程语言,在学习它之前,我曾看过一些c语言的书籍,可是并没有进行代码实现,在上手了Java后,并不懂的如何让代码运行,通过一点一点的学习和积累,今天记录下Jav ...
- A Simple Problem with Integers 循环节 修改 平方 找规律 线段树
A Simple Problem with Integers 这个题目首先要打表找规律,这个对2018取模最后都会进入一个循环节,这个循环节的打表要用到龟兔赛跑. 龟兔赛跑算法 floyed判环算法 ...