From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=AWL,BAYES_00, RCVD_IN_BL_SPAMCOP_NET,SPF_PASS autolearn=no version=3.2.5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :content-type:content-transfer-encoding; bh=xA6cFSrgawrMc7lNs0athe3xWuKL1kz9wb9+ZE4JqyI=; b=v9dGrb7aJb7wYV9C+idNfrpad6KnIUTO9GVhphCf1zoS5db4INs+zBk2kqdj4q7WNQ b7FzH2KFZsO7pkfpJKzfanQc2ptf7uKDtCTS342R5OdFMQBP087lSyRnIHWDnRnOcsVg BG2G7rr/jvKuk7zTnGxE96cM06yrVYxvnR/S8= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:content-type:content-transfer-encoding; b=Flb5APM5IwTOqt9gB4gjdO6UwB7/lSNuqMdFE26Iu2zgjhaF4TfKaX5J2skixkDsLn 9sz2sUwUGTnKXvEdrdDHC/7QbChs/GbUNiHbY02TGq+dhfTB8iy64aQEAEANp+0CPN7X 4MSGf3FxD54jwBje4ms5JD2bauyE2HZqMA9vw= Message-ID: <48F2C39B.9040903@gmail.com> Date: Mon, 13 Oct 2008 10:42:19 +0700 From: Evgeny Yugov User-Agent: Mozilla-Thunderbird 2.0.0.16 (X11/20080724) MIME-Version: 1.0 To: sysadmins@lists.altlinux.org References: <48EDEEB6.5080801@gmail.com> In-Reply-To: <48EDEEB6.5080801@gmail.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Subject: Re: [Sysadmins] =?utf-8?b?UG9zdGdyZVNRTCDQvtC/0YLQuNC80LjQt9Cw0YY=?= =?utf-8?b?0LjRjw==?= X-BeenThere: sysadmins@lists.altlinux.org X-Mailman-Version: 2.1.10b3 Precedence: list Reply-To: ALT Linux sysadmin discuss List-Id: ALT Linux sysadmin discuss List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Oct 2008 03:44:19 -0000 Archived-At: List-Archive: Здравствуйте. Много раз задавался подобным вопросом, теоретических материалов навалом. Maxim Tyurin поделился общей формулой, которая годится в большинстве случаев, надеюсь он не обидится если я её приведу тут: ""Стандартная настройка" Среднестатическая настройка для максимальной производительности. Берём размер памяти (RAM), ставим: * shared_buffers = 1/8 RAM или больше (но не более 1/4); * work_mem в 1/20 RAM; * maintenance_work_mem в 1/4; * max_fsm_relations в планируемое кол-во таблиц в базах * 1.5; * max_fsm_pages в max_fsm_relations * 2000; * fsync = true; * wal_sync_method = fdatasync; * commit_delay = от 10 до 100 ; * commit_siblings = от 5 до 10; * effective_cache_size = 0.9 от значения cached, которое показывает free; * random_page_cost = 2 для быстрых cpu, 4 для медленных; * cpu_tuple_cost = 0.001 для быстрых cpu, 0.01 для медленных; * cpu_index_tuple_cost = 0.0005 для быстрых cpu, 0.005 для медленных; ну и autovacuum включить ещё. с analyze treshhold в 900, и vacuum treshhold в 1800. Если на сервере крутится еще что-то большое кроме PostgreSQL то нужно изменить effective_cache_size (например 1С рекомендует устанавливать этот параметр в RAM/2). Выключить fsync можно только при использовании аппаратного рейда с BBU. Также в рекомендациях от 1С встречается "установить enable_nestloop = off " Не стоит так делать. Как, впрочем, и использовать другие костыли, для того, чтобы обмануть планировщик запросов PostgreSQL. Планировщик у PostgreSQL значительно умнее среднестатистического администратора БД, и в 99.9% случаев срабатывает корректно. Если же он работает некорректно, то нужно настраивать в первую очередь effective_cache_size, random_page_cost и cpu*_cost. Чем меньше значения этих параметров, тем больше будут использоваться агрессивные планы с использованием индексов." (с) Maxim Tyurin Alexandr Ogurtsov пишет: > Уважаемые коллеги, ищу совета по настройке производительности PostgreSQL > 8.1.(Debian Etch) <поскипанно> -- Здесь могла быть ваша реклама...