?
This document uses PHP Chinese website manual Release
持久性是數(shù)據(jù)庫的一個保證已提交事務(wù)的記錄的特性(即使是發(fā)生數(shù)據(jù)庫崩潰或突然斷電)。 然而會明顯增加數(shù)據(jù)庫的開銷,因此如果不需要這個保證,PostgreSQL 可以配置的運行更快。根據(jù)下面的配置可以提高性能;這些設(shè)置不會廢止數(shù)據(jù)庫崩潰恢復(fù)有關(guān)的事務(wù) 保證,只影響系統(tǒng)存儲,如下:
將數(shù)據(jù)庫集群的data目錄放到一個基于沒存的文件系統(tǒng)上(如RAM磁盤)。 這消除了所有的數(shù)據(jù)庫磁盤I/O,但限制的數(shù)據(jù)存儲的可用內(nèi)存量(也有可能是SWAP區(qū))。
關(guān)閉fsync;不需要將數(shù)據(jù)刷入磁盤。
關(guān)閉full_page_writes;不許要警惕部分頁面的寫入。
增加checkpoint_segments和checkpoint_timeout;會降低檢查點的頻率,但會 增加/pg_xlog的存儲要求。
關(guān)閉synchronous_commit;不需要在每次提交之后將WAL 寫入到磁盤。這會影響數(shù)據(jù)庫崩潰時事務(wù)的有效期。