<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://wiki.cless.pro/index.php?action=history&amp;feed=atom&amp;title=PostgreSQL._HINTS</id>
	<title>PostgreSQL. HINTS - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.cless.pro/index.php?action=history&amp;feed=atom&amp;title=PostgreSQL._HINTS"/>
	<link rel="alternate" type="text/html" href="https://wiki.cless.pro/index.php?title=PostgreSQL._HINTS&amp;action=history"/>
	<updated>2026-10-23T00:01:58Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.36.2</generator>
	<entry>
		<id>https://wiki.cless.pro/index.php?title=PostgreSQL._HINTS&amp;diff=1138&amp;oldid=prev</id>
		<title>Cless: Новая страница: «= Расположение конфигурации = обычно:  &lt;code&gt;/etc/postgresql/9.1/main/postgresql.conf&lt;/code&gt;  найти:  &lt;code&gt;find / -iname postg...»</title>
		<link rel="alternate" type="text/html" href="https://wiki.cless.pro/index.php?title=PostgreSQL._HINTS&amp;diff=1138&amp;oldid=prev"/>
		<updated>2022-10-17T15:55:41Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «= Расположение конфигурации = обычно:  &amp;lt;code&amp;gt;/etc/postgresql/9.1/main/postgresql.conf&amp;lt;/code&amp;gt;  найти:  &amp;lt;code&amp;gt;find / -iname postg...»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Расположение конфигурации =&lt;br /&gt;
обычно:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/etc/postgresql/9.1/main/postgresql.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
найти:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;find / -iname postgresql.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;locate postgresql.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Конфигуратор для тонкой настройки =&lt;br /&gt;
&amp;gt;= 10&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;http://pgconfigurator.cybertec.at/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;gt;= 9.2&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;https://pgtune.leopard.in.ua/#/&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Оптимизация =&lt;br /&gt;
[https://serveradmin.ru/uskorenie-rabotyi-1s-s-postgresql-i-diagnostika-problem-proizvoditelnosti/https://interface31.ru/tech_it/2020/03/optimizaciya-proizvoditel-nosti-postgresql-dlya-raboty-s-1spredpriyatie.htmlhttps://its.1c.ru/db/metod8dev#content:5866:hdoc https://serveradmin.ru/uskorenie-rabotyi-1s-s-postgresql-i-diagnostika-problem-proizvoditelnosti/]&lt;br /&gt;
&lt;br /&gt;
[https://serveradmin.ru/uskorenie-rabotyi-1s-s-postgresql-i-diagnostika-problem-proizvoditelnosti/https://interface31.ru/tech_it/2020/03/optimizaciya-proizvoditel-nosti-postgresql-dlya-raboty-s-1spredpriyatie.htmlhttps://its.1c.ru/db/metod8dev#content:5866:hdoc https://interface31.ru/tech_it/2020/03/optimizaciya-proizvoditel-nosti-postgresql-dlya-raboty-s-1spredpriyatie.html]&lt;br /&gt;
&lt;br /&gt;
[https://serveradmin.ru/uskorenie-rabotyi-1s-s-postgresql-i-diagnostika-problem-proizvoditelnosti/https://interface31.ru/tech_it/2020/03/optimizaciya-proizvoditel-nosti-postgresql-dlya-raboty-s-1spredpriyatie.htmlhttps://its.1c.ru/db/metod8dev#content:5866:hdoc https://its.1c.ru/db/metod8dev#content:5866:hdoc]&lt;br /&gt;
&lt;br /&gt;
= auto_increment в PostgreSQL =&lt;br /&gt;
Тем, кто переходит на PostgreSQL с MySQL, наверное будет удивительно узнать&lt;br /&gt;
&lt;br /&gt;
что специального свойства у поля auto_increment в новой СУБД нет.&lt;br /&gt;
&lt;br /&gt;
Заменой автоинкрементов в PostgreSQL являются такие штуки как Sequences (счетчики).&lt;br /&gt;
&lt;br /&gt;
Работают они так:&lt;br /&gt;
&lt;br /&gt;
-- Создание счетчика&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;CREATE SEQUENCE auto_id_users;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
-- Создание таблицы&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;CREATE TABLE users (&amp;quot;id&amp;quot; integer NOT NULL DEFAULT nextval('auto_id_users'), &amp;quot;name&amp;quot; text)&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
То есть счетчик взаимодействует с полем id  через свойство DEFAULT в которой прописывается nextval от счетчика.&lt;br /&gt;
&lt;br /&gt;
У этого подхода есть ряд несомненных плюсов:&lt;br /&gt;
&lt;br /&gt;
   - Можно очень быстро узнать значение счетчика, без нагрузки к БД и обращению к таблицам. SELECT last_value from auto_id_users;&lt;br /&gt;
&lt;br /&gt;
   - У счетчика функционал не ограничивается только увеличением на единицу, у него много возможностей.&lt;br /&gt;
&lt;br /&gt;
= Посмотреть список БД =&lt;br /&gt;
&amp;lt;code&amp;gt;\list&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
или&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;\l&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Подключиться к БД =&lt;br /&gt;
&amp;lt;code&amp;gt;\c databasename&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Отключиться от текущий БД и вернуться к умолчальной БД&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;\c postgres&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Создать таблицу =&lt;br /&gt;
&amp;lt;code&amp;gt;CREATE TABLE weather (&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;   city            varchar(80),&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;   temp_lo         int,           -- минимальная температура дня&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;   temp_hi         int,           -- максимальная температура дня&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;   prcp            real,          -- уровень осадков&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;   date            date&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Вывести список всех таблиц в БД =&lt;br /&gt;
&amp;lt;code&amp;gt;\dt&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Вывести информацию о таблице =&lt;br /&gt;
&amp;lt;code&amp;gt;\d weather&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Вставить строку в таблицу =&lt;br /&gt;
&amp;lt;code&amp;gt;INSERT INTO weather (city, temp_lo, temp_hi, prcp, date) VALUES ('Тамбов', '12', '25', '4', '2019-09-09 09:00');&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Получить все строки из таблицы =&lt;br /&gt;
&amp;lt;code&amp;gt;SELECT * FROM weather;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Postgresql позволяет определить порядок вывода запрошенных данных. Для этого используется конструкция ORDER BY, идущая после оператора SELECT =&lt;br /&gt;
БАЗОВЫЙ СИНТАКСИС ВЫГЛЯДИТ ТАК: &amp;lt;code&amp;gt;SELECT columns FROM table ORDER BY column_names [ ASC | DESC ];&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;SELECT city,temp_lo FROM weather ORDER BY city;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Вывести значение конкретного столбца строки с конкретным именем =&lt;br /&gt;
&amp;lt;code&amp;gt;SELECT date FROM weather WHERE city='Тамбов';&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Удалить таблицу =&lt;br /&gt;
&amp;lt;code&amp;gt;DROP TABLE &amp;lt;'''имя_таблицы&amp;gt;''';&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Создать пользователя с разрешением на вход в СУБД =&lt;br /&gt;
&amp;lt;code&amp;gt;CREATE ROLE username WITH PASSWORD 'user_password' LOGIN;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Изменить пароль пользователя =&lt;br /&gt;
&amp;lt;code&amp;gt;\password username;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Создание новой БД с присвоением владельца =&lt;br /&gt;
&amp;lt;code&amp;gt;CREATE DATABASE databasename WITH OWNER username;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Сменить владельца БД =&lt;br /&gt;
&amp;lt;code&amp;gt;ALTER DATABASE name OWNER TO new_username;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Дать права доступа на БД для пользователя =&lt;br /&gt;
&amp;lt;code&amp;gt;GRANT ALL ON DATABASE databasename TO username;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Переименовать БД =&lt;br /&gt;
&amp;lt;code&amp;gt;ALTER DATABASE name RENAME TO new_databasename ;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Посмотреть список запросов к БД =&lt;br /&gt;
&amp;lt;code&amp;gt;select * from pg_stat_activity where datname='YourDatabase';&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Удалить процесс по pid =&lt;br /&gt;
&amp;lt;code&amp;gt;select pg_terminate_backend(pid) from pg_stat_activity where datname='YourDatabase';&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Сделать дамп БД =&lt;br /&gt;
&amp;lt;code&amp;gt;pg_dump -U postgres database &amp;gt; dump_file.sql&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Залить дамп БД =&lt;br /&gt;
&amp;lt;code&amp;gt;psql -U postgres database &amp;lt; dump_file.sql&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Соотвественно работает связка&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;pg_dump -U postgres database | psql  -U postgres database2&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Сбросить все соединения к базе, удалить базу, создать базу =&lt;br /&gt;
&amp;lt;code&amp;gt;select pg_terminate_backend(pid) from pg_stat_activity where datname = 'db_name'; drop database db_name; create database db_name;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Удаленное выполнение команд на postgresql сервере (remote command run) =&lt;br /&gt;
If you only want to connect&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;PGPASSWORD=&amp;lt;user-postgresql-password&amp;gt; psql -h &amp;lt;ip/url-of-the-remote-server&amp;gt; -U &amp;lt;user-name&amp;gt; -d &amp;lt;database-name&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you want to execute a command remotely&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;PGPASSWORD=&amp;lt;user-postgresql-password&amp;gt; psql -h &amp;lt;ip/url-of-the-remote-server&amp;gt; -U &amp;lt;user-name&amp;gt; -d &amp;lt;database-name&amp;gt; -c &amp;quot;YOUR SQL COMMAND;&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your SQL commands are in a .sql file and you want to execute that file on the remote server&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;PGPASSWORD=&amp;lt;user-postgresql-password&amp;gt; psql -h &amp;lt;ip/url-of-the-remote-server&amp;gt; -U &amp;lt;user-name&amp;gt; -d &amp;lt;database-name&amp;gt; &amp;lt; /path/to/your/local/file.sql&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Формат имени файла лога (log filename pattern) =&lt;br /&gt;
Умолчальный путь к логам&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;/var/lib/pgsql/13/data/log/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Шаблон имени файлов логов&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;nano /var/lib/pgsql/13/data/postgresql.conf&amp;lt;/code&amp;gt;&lt;br /&gt;
 ...&lt;br /&gt;
 log_filename = 'postgresql_%Y-%m-%d.log'&lt;br /&gt;
 ...&lt;br /&gt;
[[Категория:PostgreSQL]]&lt;br /&gt;
__ОБЯЗАТЕЛЬНОЕ_ОГЛАВЛЕНИЕ__&lt;/div&gt;</summary>
		<author><name>Cless</name></author>
	</entry>
</feed>