麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > PostgreSQL > 正文

PostgreSQL教程(十一):服務器配置

2020-03-12 23:53:08
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PostgreSQL教程(十一):服務器配置,本文講解了服務器進程的啟動和關閉、服務器配置、內存相關的參數配置等內容,需要的朋友可以參考下
 

一、服務器進程的啟動和關閉:

    下面是pg_ctl命令的使用方法和常用選項,需要指出的是,該命令是postgres命令的封裝體,因此在使用上比直接使用postgres更加方便。

復制代碼代碼如下:

    pg_ctl init[db] [-D DATADIR] [-s] [-o "OPTIONS"]
    pg_ctl start     [-w] [-t SECS] [-D DATADIR] [-s] [-l FILENAME] [-o "OPTIONS"]
    pg_ctl stop     [-W] [-t SECS] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]
    pg_ctl restart  [-w] [-t SECS] [-D DATADIR] [-s] [-m SHUTDOWN-MODE]
    pg_ctl reload  [-D DATADIR] [-s]
    pg_ctl status  [-D DATADIR]
    pg_ctl promote [-D DATADIR] [-s]

 

 

選項 描述
-D 指定數據庫存儲的路徑
-l 指定服務器進程的日志文件
-s 僅打印錯誤信息,不打印普通信息
-t SECS 當使用-w選項時等待的秒數
-w 等待直到數據庫操作完成(對于stop而言,該選項時缺省選項)
-W 不等待任何操作的完成
--help 顯示幫助信息
--version 顯示版本信息
-m 對于stop和restart操作,可以指定關閉模式
系統關閉模式  
smart 不在接收新的連接,直到當前已有的連接都斷開之后才退出系統
fast 不在接收新的連接請求,主動關閉已經建立的連接,之后退出系統
immediate 立即退出,但是在restart的時候需要有恢復的操作被執行

 

  這里我們只是給出最為常用的使用方式,即數據庫服務器的正常啟動和關閉。
    #start表示啟動postgres服務器進程。
    #-D指定數據庫服務器的初始目錄的存放路徑。
    #-l指定數據庫服務器進程的日志文件
    /> pg_ctl -w start -D /opt/PostgreSQL/9.1/data -l /opt/PostgreSQL/9.1/data/pg_log/startup.log
    #stop表示停止postgres服務器進程
    #-m fast在關閉系統時,使用fast的關閉模式。
    /> pg_ctl stop -m fast -w -D /opt/PostgreSQL/9.1/data

二、服務器配置:

    1. 設置參數:
    在PostgreSQL中,所有配置參數名都是大小寫不敏感的。每個參數都可以接受四種類型的值,它們分別是布爾、整數、浮點數和字符串。其中布爾值可以是ON、OFF、TRUE、FALSE、YES、NO、1和0。包含這些參數的配置文件是postgresql.conf,該文件通常存放在initdb初始化的數據(data)目錄下,見如下配置片段:

復制代碼代碼如下:

    # 這是一個注釋
    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). 基于會話的配置;
    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%。
    
    2. work_mem(integer):

    PostgreSQL在執行排序操作時,會根據work_mem的大小決定是否將一個大的結果集拆分為幾個小的和work_mem差不多大小的臨時文件。顯然拆分的結果是降低了排序的速度。因此增加work_mem有助于提高排序的速度。然而需要指出的是,如果系統中同時存在多個排序操作,那么每個操作在排序時使用的內存數量均為work_mem,因此在我們設置該值時需要注意這一問題。
    
    3. maintence_work_mem(integer):

    指定在維護性操作中使用的最大內存數,如VACUUM、CREATE INDEX和ALTER TABLE ADD FOREIGN KEY等,該配置的缺省值為16MB。因為每個會話在同一時刻只能執行一個該操作,所以使用的頻率不高,但是這些指令往往消耗較多的系統資源,因此應該盡快讓這些指令快速執行完畢。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美性生活免费视频 | 日韩黄色成人 | 91色综合综合热五月激情 | 在线免费观看毛片视频 | h视频在线免费看 | 一区在线免费视频 | 久久精品一区二区三区国产主播 | 黄色的视频免费看 | 一级电影免费看 | 在线2区 | 5xx免费看 | 欧美成人精品一区二区 | 国产精品久久久久久久久久久久久久久久 | 欧美成年人在线视频 | 亚洲白嫩在线观看 | chinesexxxx刘婷hd| 视频在线色 | 中文字幕在线观看日韩 | 成人在线网站 | 日本中文字幕久久 | 黄色网战入口 | 久久久久久久久久91 | 7m视频成人精品分类 | 色网在线视频 | 日本精品一二区 | 91精品国产91久久久久久 | 国产激爽大片在线播放 | 婷婷久久影院 | 国产成人高清成人av片在线看 | 天天透天天狠天天爱综合97 | 狠狠干91| 成人18免费观看 | 欧美aⅴ在线观看 | 宅男视频在线观看免费 | 久久国产一二三 | 中文字幕在线观看视频www | 在线免费观看日韩视频 | 久久久久久久99 | 成人毛片100免费观看 | 九九热精品在线 | 欧美一级视频免费看 |