PostgreSQL学习手册(服务器配置)(2)

来源:未知 责任编辑:责任编辑 发表时间:2014-02-02 17:50 点击:
二、服务器配置:
 
    1. 设置参数:
    在PostgreSQL中,所有配置参数名都是大小写不敏感的。每个参数都可以接受四种类型的值,
它们分别是布尔、整数、浮点数和字符串。其中布尔值可以是ON、OFF、TRUE、FALSE、YES、NO、1和0。
包含这些参数的配置文件是postgresql.conf,该文件通常存放在initdb初始化的数据(data)目录下,
见如下配置片段:   www.2cto.com  
    # 这是一个注释
    log_connections = yes
    log_destination = 'syslog'
    search_path = '$user, public'
    井号(#)开始的行为注释行,如果配置值中包含数字,则需要用单引号括起。
如果参数值本身包含单引号,我们可以写两个单引号(推荐方法)或用反斜扛包围。    
    这里需要注意的是,并非所有配置参数都可以在服务器运行时执行动态修改,有些参数在修改后,
只能等到服务器重新启动后才能生效。
    PostgreSQL还提供了另外一种修改配置参数的方法,即在命令行上直接执行修改命令,如:
    /> postgres -c log_connections=yes -c log_destination='syslog'
    如果此时命令行设置的参数和配置文件中的参数相互冲突,那么命令行中给出的参数
将覆盖配置文件中已有的参数值。除此之外,我们还可以通过ALTER DATABASE和ALTER USER等
PostgreSQL的数据定义命令来分别修改指定数据库或指定用户的配置信息。其中针对数据库的
设置将覆盖任何从postgres命令行或者配置文件从给出的设置,然后又会被针对用户的设置覆盖,
最后又都会被每会话的选项覆盖。下面是当服务器配置出现冲突时,
PostgreSQL服务器将会采用哪种方式的优先级,如:
    1). 基于会话的配置;   www.2cto.com  
    2). 基于用户的配置;
    3). 基于数据库的配置;
    4). postgres命令行指定的配置;
    5). 配置文件postgresql.conf中给出的配置。
    最后需要说明的是,有些设置可以通过PostgreSQL的set命令进行设置,如在psql中我们可以输入:
    SET ENABLE_SEQSCAN TO OFF;
    也可以通过show命令来显示指定配置的当前值,如:
    SHOW ENABLE_SEQSCAN;
    与此同时,我们也可以手工查询pg_settings系统表的方式来检索感兴趣的系统参数。 
 
三、内存相关的参数配置:
 
    1. shared_buffers(integer):
    设置数据库服务器可以使用的共享内存数量。缺省情况下可以设置为32MB,但是不要少于128KB。
因为该值设置的越高对系统的性能越有好处。该配置参数只能在数据库启动时设置。
    此时,如果你有一台专用的数据库服务器,其内存为1G或者更多,那么我们推荐将该值设置
为系统内存的25%。   www.2cto.com  
    
    2. work_mem(integer):
    PostgreSQL在执行排序操作时,会根据work_mem的大小决定是否将一个大的结果集拆分为
几个小的和work_mem差不多大小的临时文件。显然拆分的结果是降低了排序的速度。因此增加work_mem
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Request.ServerVariables 参数大全
  • 执行全文索引时出现权限不足的解决方法
  • 导入excel文件处理流程节点的解决方案
  • 查看sql修改痕迹(SQL Change Tracking on Table)
  • MongoDB安装为Windows服务方法与注意事项
  • App数据层设计及云存储使用指南
  • PostgreSQL启动过程中的那些事三:加载GUC参数
  • 写给MongoDB开发者的50条建议Tip1
  • Percolator与分布式事务思考(二)
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1