Postgresql: различия между версиями

Материал из Home Wiki
Перейти к навигации Перейти к поиску
 
(не показано 9 промежуточных версий этого же участника)
Строка 1: Строка 1:
[[:Категория:Работа]]
= Создать пользователя =
= Создать пользователя =
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
createuser -P -U pgsql base_user
createuser -P -U pgsql base_user # FreeBSD user postgres
createuser -P -U postgres base_user # Ubuntu user pgsql
</syntaxhighlight>при этом система попросит ввести пароль нового пользователя
</syntaxhighlight>при этом система попросит ввести пароль нового пользователя


= Создать базу данных =
= Создать базу данных =
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
createdb base_name -e -U pgsql -O base_user --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 -T template0
createdb base_name -e -U pgsql -O base_user --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 -T template0 # FreeBSD user postgres
createdb base_name -e -U postgres -O base_user --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 -T template0 # Ubuntu user pgsql
</syntaxhighlight>где base_name - имя создаваемой БД, base_user - имя владельца базы данных.
</syntaxhighlight>где base_name - имя создаваемой БД, base_user - имя владельца базы данных.


== Ускорение некоторых операций ==
== Ускорение некоторых операций ==
# Не распаковывая gzip выполнить восстановление дампа
# Не распаковывая gzip выполнить восстановление дампа <syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
zcat  /data/base.sql.gz | psql base_name
zcat  /data/base.sql.gz | psql base_name
</syntaxhighlight>
</syntaxhighlight>
# Сразу формировать дамп в gzip
# Сразу формировать дамп в gzip <syntaxhighlight lang="bash">
/usr/local/bin/pg_dump -U pgsql -p 5432 base_name | gzip > base_name.sql.gz # FreeBSD user postgres
/usr/local/bin/pg_dump -U postgres -p 5432 base_name | gzip > base_name.sql.gz # Ubuntu user pgsql
</syntaxhighlight>
 
== pgcrypto ==
Поставить нужную версию пакета postgresql-contrib-9.Х
например: <syntaxhighlight lang="bash">apt-get install postgresql-contrib-9.5</syntaxhighlight>
 
От пользователя pgsql (FreeBSD) или postgres (Ubuntu) в psql запустить:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
/usr/local/bin/pg_dump -U pgsql -p 5432 base_name | gzip > base_name.sql.gz
create extension pgcrypto;
</syntaxhighlight>
</syntaxhighlight>
после этого будет работать функция digest и другие.
== Статьи по индексам (habr/Postgres Professional) ==
Механизм индексирования ч.1- https://habrahabr.ru/company/postgrespro/blog/326096/
Интерфейс методов доступа ч.2 - https://habrahabr.ru/company/postgrespro/blog/326106/
Hash ч.3 - https://habrahabr.ru/company/postgrespro/blog/328280/
Btree ч.4 - https://habrahabr.ru/company/postgrespro/blog/330544/
GiST ч.5 - https://habrahabr.ru/company/postgrespro/blog/333878/
SP-GiST ч.6 - https://habrahabr.ru/company/postgrespro/blog/337502/
GIN ч.7 - https://habrahabr.ru/company/postgrespro/blog/340978/
RUM ч.8 - https://habrahabr.ru/company/postgrespro/blog/343488/
BRIN ч.9 - https://habrahabr.ru/company/postgrespro/blog/346460/ (цикл статей продолжается)
[[Категория:Работа]]
[[Категория:Postgresql]]
[[Категория:FreeBSD]]

Текущая версия на 07:01, 18 января 2018

Категория:Работа

Создать пользователя

createuser -P -U pgsql base_user # FreeBSD user postgres
createuser -P -U postgres base_user # Ubuntu user pgsql

при этом система попросит ввести пароль нового пользователя

Создать базу данных

createdb base_name -e -U pgsql -O base_user --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 -T template0 # FreeBSD user postgres
createdb base_name -e -U postgres -O base_user --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 -T template0 # Ubuntu user pgsql

где base_name - имя создаваемой БД, base_user - имя владельца базы данных.

Ускорение некоторых операций

  1. Не распаковывая gzip выполнить восстановление дампа
    zcat  /data/base.sql.gz | psql base_name
    
  2. Сразу формировать дамп в gzip
    /usr/local/bin/pg_dump -U pgsql -p 5432 base_name | gzip > base_name.sql.gz # FreeBSD user postgres
    /usr/local/bin/pg_dump -U postgres -p 5432 base_name | gzip > base_name.sql.gz # Ubuntu user pgsql
    

pgcrypto

Поставить нужную версию пакета postgresql-contrib-9.Х

например:

apt-get install postgresql-contrib-9.5

От пользователя pgsql (FreeBSD) или postgres (Ubuntu) в psql запустить:

create extension pgcrypto;

после этого будет работать функция digest и другие.

Статьи по индексам (habr/Postgres Professional)

Механизм индексирования ч.1- https://habrahabr.ru/company/postgrespro/blog/326096/

Интерфейс методов доступа ч.2 - https://habrahabr.ru/company/postgrespro/blog/326106/

Hash ч.3 - https://habrahabr.ru/company/postgrespro/blog/328280/

Btree ч.4 - https://habrahabr.ru/company/postgrespro/blog/330544/

GiST ч.5 - https://habrahabr.ru/company/postgrespro/blog/333878/

SP-GiST ч.6 - https://habrahabr.ru/company/postgrespro/blog/337502/

GIN ч.7 - https://habrahabr.ru/company/postgrespro/blog/340978/

RUM ч.8 - https://habrahabr.ru/company/postgrespro/blog/343488/

BRIN ч.9 - https://habrahabr.ru/company/postgrespro/blog/346460/ (цикл статей продолжается)