<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sokolov blog &#187; postgres</title>
	<atom:link href="http://blog.sokolov.me/tag/postgres/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.sokolov.me</link>
	<description>всякие заметки, в-основном freebsd,linux</description>
	<lastBuildDate>Wed, 14 Dec 2011 16:39:52 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Postgres: разное</title>
		<link>http://blog.sokolov.me/2011/03/11/postgres-%d1%80%d0%b0%d0%b7%d0%bd%d0%be%d0%b5/</link>
		<comments>http://blog.sokolov.me/2011/03/11/postgres-%d1%80%d0%b0%d0%b7%d0%bd%d0%be%d0%b5/#comments</comments>
		<pubDate>Thu, 10 Mar 2011 23:27:48 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[postgres]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=879</guid>
		<description><![CDATA[Изменение уровня дебага в консоли: SET client_min_messages TO DEBUG;]]></description>
			<content:encoded><![CDATA[<p>Изменение уровня дебага в консоли:<br />
<code>SET client_min_messages TO DEBUG;</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2011/03/11/postgres-%d1%80%d0%b0%d0%b7%d0%bd%d0%be%d0%b5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Полнотекстовый поиск в postgresql</title>
		<link>http://blog.sokolov.me/2010/11/19/%d0%bf%d0%be%d0%bb%d0%bd%d0%be%d1%82%d0%b5%d0%ba%d1%81%d1%82%d0%be%d0%b2%d1%8b%d0%b9-%d0%bf%d0%be%d0%b8%d1%81%d0%ba-%d0%b2-postgresql/</link>
		<comments>http://blog.sokolov.me/2010/11/19/%d0%bf%d0%be%d0%bb%d0%bd%d0%be%d1%82%d0%b5%d0%ba%d1%81%d1%82%d0%be%d0%b2%d1%8b%d0%b9-%d0%bf%d0%be%d0%b8%d1%81%d0%ba-%d0%b2-postgresql/#comments</comments>
		<pubDate>Fri, 19 Nov 2010 00:24:54 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=749</guid>
		<description><![CDATA[http://www.sai.msu.su/~megera/postgres/talks/fts_pgsql_intro.htmll]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.sai.msu.su/~megera/postgres/talks/fts_pgsql_intro.html">http://www.sai.msu.su/~megera/postgres/talks/fts_pgsql_intro.html</a>l</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2010/11/19/%d0%bf%d0%be%d0%bb%d0%bd%d0%be%d1%82%d0%b5%d0%ba%d1%81%d1%82%d0%be%d0%b2%d1%8b%d0%b9-%d0%bf%d0%be%d0%b8%d1%81%d0%ba-%d0%b2-postgresql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Postgres 8.4 + FreeBSD 8.x</title>
		<link>http://blog.sokolov.me/2010/10/04/postgres/</link>
		<comments>http://blog.sokolov.me/2010/10/04/postgres/#comments</comments>
		<pubDate>Mon, 04 Oct 2010 12:44:35 +0000</pubDate>
		<dc:creator>kfx</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[postgres]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=712</guid>
		<description><![CDATA[Для увеличения максимального к-ва коннектов, осбслуживаемых постгресом: sysctl.conf kern.ipc.shmmax=2147483648 kern.ipc.shmall=2097152 loader.conf kern.ipc.semmni=256 kern.ipc.semmns=32000 kern.ipc.semmnu=256 postgresql.conf max_connections = 250]]></description>
			<content:encoded><![CDATA[<p>Для увеличения максимального к-ва коннектов, осбслуживаемых постгресом:</p>
<p>sysctl.conf</p>
<p><code>kern.ipc.shmmax=2147483648<br />
kern.ipc.shmall=2097152</code></p>
<p>loader.conf</p>
<p><code>kern.ipc.semmni=256<br />
kern.ipc.semmns=32000<br />
kern.ipc.semmnu=256</code></p>
<p>postgresql.conf</p>
<p><code>max_connections = 250</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2010/10/04/postgres/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PosrgreSQL: Заметки</title>
		<link>http://blog.sokolov.me/2010/02/17/posrgresql-notes/</link>
		<comments>http://blog.sokolov.me/2010/02/17/posrgresql-notes/#comments</comments>
		<pubDate>Wed, 17 Feb 2010 20:56:56 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Без рубрики]]></category>
		<category><![CDATA[postgres]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=528</guid>
		<description><![CDATA[Хорошие заметки по postgres. Массивы: Преобразование массивов: Оригинал тут select client_id, array_agg(order_id) from simple_table group by client_id; select * from explode_array(array[1,2,3,4]); Парсинг массивов postgres в php: http://dklab.ru/lib/DB_Pgsql_Type/ Служебная информация: Описание схемы: http://www.postgresql.org/docs/8.4/interactive/information-schema.html Выбор информации обо всех таблицах: SELECT c.table_schema, c.table_name, array_agg(CAST(c.column_name AS text)) as col_names, array_agg(DISTINCT CAST(c.data_type AS text)) As dat_types FROM information_schema.columns AS c [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.postgres.cz/index.php/PostgreSQL_SQL_Tricks">Хорошие заметки по postgres</a>.</p>
<h4>Массивы:</h4>
<p><strong>Преобразование массивов:</strong><br />
Оригинал <a href="http://www.depesz.com/index.php/2008/11/14/waiting-for-84-array-aggregate-and-array-unpacker/">тут</a><br />
<code><br />
select client_id, array_agg(order_id) from simple_table group by client_id;<br />
select * from explode_array(array[1,2,3,4]);<br />
</code><br />
<strong>Парсинг массивов postgres в php:</strong><br />
<a href="http://dklab.ru/lib/DB_Pgsql_Type/">http://dklab.ru/lib/DB_Pgsql_Type/</a></p>
<h4>Служебная информация:</h4>
<p><strong>Описание схемы:</strong><br />
<a href="http://www.postgresql.org/docs/8.4/interactive/information-schema.html">http://www.postgresql.org/docs/8.4/interactive/information-schema.html</a></p>
<p><strong>Выбор информации обо всех таблицах:</strong><br />
<code>SELECT c.table_schema, c.table_name,<br />
 array_agg(CAST(c.column_name AS text)) as col_names,<br />
 array_agg(DISTINCT CAST(c.data_type AS text)) As dat_types<br />
 FROM information_schema.columns AS c<br />
GROUP BY c.table_schema, c.table_name;<br />
</code></p>
<p><strong>Либа для автоматических тестов PGUNIT:</strong><br />
<a href="http://dklab.ru/lib/dklab_pgunit/">http://dklab.ru/lib/dklab_pgunit/</a></p>
<h4>Бэкапы</h4>
<p>Хорошая статья про ON-LINE backup <a href="http://www.opennet.ru/base/sys/postgresql_online_backup.txt.html">http://www.opennet.ru/base/sys/postgresql_online_backup.txt.html</a><br />
Для того, чтобы сделать простой бэкап в формате SQL:<br />
<code>pg_dump --inserts -U pavel -W database_name > /home/pavel/backup.sql</code></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2010/02/17/posrgresql-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Postgres: заметки</title>
		<link>http://blog.sokolov.me/2010/02/09/postgres-note/</link>
		<comments>http://blog.sokolov.me/2010/02/09/postgres-note/#comments</comments>
		<pubDate>Tue, 09 Feb 2010 13:37:31 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[Без рубрики]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[PostgreSQL]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=494</guid>
		<description><![CDATA[Преобразование строки в число:]]></description>
			<content:encoded><![CDATA[<p>Преобразование строки в число:</p>
<div id="wpshdo_1" class="wp-synhighlighter-outer"><div id="wpshdt_1" class="wp-synhighlighter-expanded"><table border="0" width="100%"><tr><td align="left" width="80%"><a name="#codesyntax_1"></a><a id="wpshat_1" class="wp-synhighlighter-title" href="#codesyntax_1"  onClick="javascript:wpsh_toggleBlock(1)" title="Нажмите, чтобы показать или скрыть блок кода">Исходный код</a></td><td align="right"><a href="#codesyntax_1" onClick="javascript:wpsh_code(1)" title="Показать код отдельно"><img border="0" style="border: 0 none" src="http://blog.sokolov.me/wp-content/plugins/wp-synhighlight/themes/default/images/code.png" /></a>&nbsp;<a href="#codesyntax_1" onClick="javascript:wpsh_print(1)" title="Напечатать код"><img border="0" style="border: 0 none" src="http://blog.sokolov.me/wp-content/plugins/wp-synhighlight/themes/default/images/printer.png" /></a>&nbsp;<a href="http://blog.sokolov.me/wp-content/plugins/wp-synhighlight/About.html" target="_blank" title="Показать информацию о плагине"><img border="0" style="border: 0 none" src="http://blog.sokolov.me/wp-content/plugins/wp-synhighlight/themes/default/images/info.gif" /></a>&nbsp;</td></tr></table></div><div id="wpshdi_1" class="wp-synhighlighter-inner" style="display: block;"><pre class="sql" style="font-family:monospace;"><span class="kw1">CREATE</span> <span class="kw1">OR</span> <span class="kw1">REPLACE</span> <span class="kw1">FUNCTION</span> pc_chartoint<span class="br0">&#40;</span>chartoconvert character varying<span class="br0">&#41;</span>
RETURNS integer <span class="kw1">AS</span>
$BODY$
<span class="kw1">SELECT</span> CASE WHEN trim<span class="br0">&#40;</span>$1<span class="br0">&#41;</span> SIMILAR <span class="kw1">TO</span> <span class="st0">'[0-9]+'</span>
THEN CAST<span class="br0">&#40;</span>trim<span class="br0">&#40;</span>$1<span class="br0">&#41;</span> <span class="kw1">AS</span> integer<span class="br0">&#41;</span>
ELSE <span class="kw1">NULL</span> END;
$BODY$
<span class="kw1">LANGUAGE</span> <span class="st0">'sql'</span> IMMUTABLE STRICT;</pre></div></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2010/02/09/postgres-note/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PostgreSQL: установка на FreeBSD</title>
		<link>http://blog.sokolov.me/2010/02/01/postgresql-freebsd/</link>
		<comments>http://blog.sokolov.me/2010/02/01/postgresql-freebsd/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 19:55:18 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[FreeBSD]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[PostgreSQL]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=458</guid>
		<description><![CDATA[Установка pkg_add -r postgresql90-server echo postgresql_enable="YES" > /etc/rc.conf /usr/local/etc/rc.d/postgresql initdb #теперь устанавливаем pl/perl cd /usr/ports/databases/p5-postgresql-plperl make install clean #стартуем /usr/local/etc/rc.d/postgresql start # создание plperl для базы: # sudo -u pgsql createlang plperl ИМЯ_БАЗЫ # Устанавливаем модули для perl cd /usr/ports/databases/p5-DBD-Pg make install clean #Устанавливаем доп пакеты (для vacuumlo) cd /usr/ports/databases/postgresql90-contrib make install clean Настройка бэкапа [...]]]></description>
			<content:encoded><![CDATA[<h4>Установка</h4>
<p><code>pkg_add -r postgresql90-server<br />
echo postgresql_enable="YES" > /etc/rc.conf<br />
/usr/local/etc/rc.d/postgresql initdb<br />
#теперь устанавливаем pl/perl<br />
cd /usr/ports/databases/p5-postgresql-plperl<br />
make install clean<br />
#стартуем<br />
/usr/local/etc/rc.d/postgresql start<br />
# создание plperl для базы:<br />
# sudo -u pgsql createlang plperl ИМЯ_БАЗЫ</code></p>
<p># Устанавливаем модули для perl<br />
cd /usr/ports/databases/p5-DBD-Pg<br />
make install clean</p>
<p>#Устанавливаем доп пакеты (для vacuumlo)<br />
cd /usr/ports/databases/postgresql90-contrib<br />
make install clean</p>
<h4>Настройка бэкапа</h4>
<p>Ежедневный скрипт, выполняющий backup и vacuum находиться здесь: <strong>/usr/local/etc/periodic/daily/502.pgsql</strong><br />
<code>echo daily_pgsql_backup_enable=YES &gt;&gt; /etc/periodic.conf<br />
echo daily_pgsql_backupdir=/usr/backup/postgres &gt;&gt; /etc/periodic.conf<br />
echo daily_pgsql_vacuum_enable=YES &gt;&gt; /etc/periodic.conf<br />
</code></p>
<p><strong>Создание юзера и базы:</strong><br />
<code>sudo -u pgsql createuser -s -W pavel<br />
sudo -u pgsql createdb test</code></p>
<h4>UTF8:</h4>
<p><code>To set limits, environment stuff like locale and collation and other<br />
things, you can set up a class in /etc/login.conf before initializing<br />
the database. Add something similar to this to /etc/login.conf:<br />
---<br />
postgres:\<br />
:lang=en_US.UTF-8:\<br />
:setenv=LC_COLLATE=C:\<br />
:tc=default:<br />
---<br />
and run `cap_mkdb /etc/login.conf'.<br />
Then add 'postgresql_class="postgres"' to /etc/rc.conf<br />
## ОБЯЗАТЕЛЬНО утсановить класс postgres для юзера pgsql<br />
pgsql:*:70:70:postgres:0:0:PostgreSQL Daemon:/usr/local/pgsql:/bin/sh</code></p>
<p><strong>postgresql.conf:</strong><br />
<code><br />
custom_variable_classes = 'plperl'<br />
plperl.use_strict = true<br />
max_connections = 200<br />
shared_buffers = 500MB</code></p>
<h4>UPGRADE</h4>
<p><a href="http://www.freebsddiary.org/postgresql-upgrading.php">Хорошая статья про апгрейд</a></p>
<h4>Разное</h4>
<p><strong>Тюнинг:</strong><br />
Отличная статья по тюнингу <a href="http://postgresmen.ru/articles/view/38">http://postgresmen.ru/articles/view/38</a></p>
<p><strong>Тема по руссификации:</strong><a href="http://www.sql.ru/forum/actualthread.aspx?tid=677731"> http://www.sql.ru/forum/actualthread.aspx?tid=677731</a><br />
<strong>Откуда можно коннектиться</strong><br />
<code>host    all     all     a.b.c.d/24 trust (<strong>/usr/home/pgsql/data/pg_hba.conf</strong>)</code><br />
<strong>На каких IP слушать</strong><br />
<code>listen_addresses='*' (<strong>/usr/local/pgsql/data/postgresql.conf</strong>)</code></p>
<p><strong><span style="color: #ff0000;">В apache должен быть обязательно прописан ServerName, иначе postgres как модуль php будет ронять apache в core dump</span></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2010/02/01/postgresql-freebsd/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Установка и настройка Asterisk 1.6 + PostgreSQL на Debian</title>
		<link>http://blog.sokolov.me/2009/10/09/%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0-%d0%b8-%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-asterisk-1-6-postgresql-%d0%bd%d0%b0-debian/</link>
		<comments>http://blog.sokolov.me/2009/10/09/%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0-%d0%b8-%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-asterisk-1-6-postgresql-%d0%bd%d0%b0-debian/#comments</comments>
		<pubDate>Thu, 08 Oct 2009 23:46:50 +0000</pubDate>
		<dc:creator>pavel</dc:creator>
				<category><![CDATA[Asterisk]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[sip]]></category>
		<category><![CDATA[sql]]></category>

		<guid isPermaLink="false">http://blog.sokolov.me/?p=48</guid>
		<description><![CDATA[Установка и настройка Asterisk 1.6 + PostgreSQL на Debian » Все для системного администратора. Софт. Мануалы..]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.admin-f1.ru/37-ustanovka-i-nastrojka-asterisk-16-postgresql-na.html">Установка и настройка Asterisk 1.6 + PostgreSQL на Debian » Все для системного администратора. Софт. Мануалы.</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.sokolov.me/2009/10/09/%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0-%d0%b8-%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-asterisk-1-6-postgresql-%d0%bd%d0%b0-debian/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

