PostgreSQL: различия между версиями
м (+кат) |
|||
Строка 1: | Строка 1: | ||
Особенности работы с [http://www.postgresql.org PostgreSQL] в Альт | Особенности работы с [http://www.postgresql.org PostgreSQL] в Альт. | ||
= Установка и начальный запуск = | = Установка и начальный запуск = | ||
Строка 91: | Строка 91: | ||
[[Категория:СУБД]] | [[Категория:СУБД]] | ||
[[Категория:Миграция]] | |||
{{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=HOWTO|category=HOWTO|sortkey={{SUBPAGENAME}}}} |
Версия от 14:36, 30 марта 2017
Особенности работы с PostgreSQL в Альт.
Установка и начальный запуск
Вы можете выбрать сервер PostgreSQL определённой версии как обычный, так и предназначенный для работы 1С:Предприятие (содержит в имени 1C):
postgresql9.1-server postgresql9.3-1C-server postgresql9.3-server postgresql9.4-1C-server postgresql9.4-server
apt-get update apt-get install postgresql9.4-server
Внимание! Перед запуском службы необходимо создать системные базы данных:
/etc/init.d/postgresql initdb(через systemctl postgresql initdb не работает)
Запуск службы:
service postgresql start
Включение службы по умолчанию:
chkconfig postgresql on
Место расположения параметров настройки
PostgreSQL запускается в изолированном окружении (chroot, чрут): /var/lib/pgsql
Доступ по сети
По умолчанию доступ по сети выключен. Для того, чтобы включить, выполните:
echo "listen_addresses = 'localhost'" >> /var/lib/pgsql/data/postgresql.conf
Примечание: Обратите внимание, что доступ открыт только на localhost. Если хотите открыть на внешнем интерйесе, указывайте реальный адрес IP или имя узла.
Управление доступом
Для управления доступом, правьте файл /var/lib/pgsql/data/pg_hba.conf:
echo "host ПОЛЬЗОВАТЕЛЬ БАЗА 127.0.0.1/32 md5" >> /var/lib/pgsql/data/pg_hba.conf
не забудьте после всего этого перезапустить службу:
service postgresql restart
Работа под администратором
Для заведения пользователей и создания баз данных, переключитесь в учётную запись postgres:
su - postgres -s /bin/sh -c psql
# su - postgres -s /bin/sh -c psql psql (9.4.5) Введите "help", чтобы получить справку. postgres=#
Примечание: Выход по Ctrl+D или командой quit
Создание пользователя
su - postgres -s /bin/sh -c 'createuser --no-superuser --no-createdb --no-createrole --encrypted --pwprompt ПОЛЬЗОВАТЕЛЬ'
Создание базы данных
su - postgres -s /bin/sh -c 'createdb -O ПОЛЬЗОВАТЕЛЬ БАЗА'
Просмотр доступных баз данных
# su - postgres -s /bin/sh -c 'psql -c "\l+"' Список баз данных
Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа | Размер | Табл. пространство | Описание
------------+------------+-----------+-------------+-------------+-----------------------+---------+--------------------+--------------------------------------------
postfactor | postfactor | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | | 12 MB | pg_default |
postgres | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | | 6724 kB | pg_default | default administrative connection database
sogo | sogo | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =Tc/sogo +| 7572 kB | pg_default |
| | | | | sogo=CTc/sogo | | |
template0 | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres +| 6601 kB | pg_default | unmodifiable empty database
| | | | | postgres=CTc/postgres | | |
template1 | postgres | UTF8 | ru_RU.UTF-8 | ru_RU.UTF-8 | =c/postgres +| 6724 kB | pg_default | default template for new databases
| | | | | postgres=CTc/postgres | | |
(5 строк)
Имена баз в первом столбце.
Резервная копия всех баз данных
su - postgres -s /bin/sh -c 'pg_dumpall -f /tmp/posgresql'
Резервная копия будет в файле /tmp/posgresql.
Восстановление из резервной копии
Документация: https://www.postgresql.org/docs/9.0/static/migration.html
mv /var/lib/pgsql/data{,.old}
/etc/init.d/postgresql initdb
service postgresql start
su - postgres -s /bin/sh -c 'psql -f /tmp/posgresql postgres'