Установка, настройка и использование PostgreSQL на Ubuntu. Postgresql ubuntu установка и настройка


Установка, настройка и использование PostgreSQL на Ubuntu.

PostgreSQL напрямую "из коробки" применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблицу сразу. Если нужны блокировки на уровне записей, включаем в 1С режим управляемых блокировок и прописываем их в конфигурации ручками. Вывод: необходимо скачать специальный дистрибутив с сайта 1С или взять на диске ИТС.

Вы можете найти интуитивно понятные домашние страницы программирования. Вещи настолько малы, что им не нужно менять. Вы всегда должны стараться, чтобы ваша тестовая конфигурация была как можно ближе к условиям, которые выполнялись на «горячем» сервере, чтобы не возникало проблем с отправкой тестовых страниц.

С подобными вещами есть больше вещей, возможно, чтобы спросить друзей, у которых есть опыт. Также помните, что этот сайт может быть устаревшим и что-то не так. Это окно больше не работает. Корзины документов - это одна адресная книга. Корзина документов должна содержать все опубликованные файлы и скрипты.

Установка

Сама установка особых затруднений не вызывает, обратить внимание нужно на правильную инициализацию базы данных, а именно настройку локали, изменить потом это можно только повторной начальной инициализацией. Например, база 1С с украинскими региональными установками в СУБД с установленной русской локалью не загрузится. Да и проблемы с сортировкой потом не нужны. Поэтому делаем init в соответствии с нужным языком.

Вы можете указать, какой адрес будет корнем документов. Что означает эта директива, можно понять из комментариев и уведомлений. Будут выполнены. Во всяком случае, это исследование длинных зимних вечеров, выходящих за рамки этого текста. Но в первый момент не нужно ничего устанавливать. Незначительную проблему могут встретить те, кто подключается к модему по телефону. Когда он обнаруживает его, он больше не хочет смотреть на локальный хост.

Если вы знаете, где он будет установлен, попробуйте его найти. Важность отдельных директив очевидна из комментариев. Динамические библиотеки - самые интересные настройки - если вы хотите использовать некоторые другие базы данных или библиотеки программ, вы должны расшифровать строку, которая начинается. Этого достаточно, но для новичка это слишком тяжело.

Для русского языка

initdb --locale=ru_RU.UTF-8 --lc-collate=ru_RU.UTF-8 --lc-ctype=ru_RU.UTF-8 --encoding=UTF8 -D /db/postgresql

Для украинского языка

initdb --locale=uk_UA.UTF-8 --lc-collate=uk_UA.UTF-8 --lc-ctype=uk_UA.UTF-8 --encoding=UTF8 -D /db/postgresql

где /db/postgresql ваш каталог данных PostgreSQL. Кодировка, конечно же, UTF-8.

Подробный вариант пересоздания кластера

1.Необходимо выдать полные права на папку в которую мы установили PostgreSQL, обычно это C:\Program Files\PostgreSQL

Если вы чаще работаете с базами данных, вы очень быстро поймете принцип интерфейса. Есть ссылки на другие интересные источники. Большинство из них - только такие коварные моменты, как текст в темноте. Вы можете создать резервную копию своей базы данных с помощью метаданных.

В «Дата и время» вы узнаете, как установить формат времени по умолчанию. Возможно, вы будете готовы ко всем данным в базе данных, поэтому сначала вам нужно выполнить резервное копирование. В дополнение к способу установки пакетов и расположению файла конфигурации эта инструкция действительна для любого распространения. Учебник поможет вам шаг за шагом. Конечно, не исчерпывающий, пожалуйста, ознакомьтесь с документацией.

2.Из под админских прав запускаем cmd. Если это делаете в win7, то запускаем от Администратора.

3.Создаем папку где будет храниться кластер. Например d:\postgredata.

md d:\postgredata

4.Проводим инициализацию кластера вручную с указанием пути где он будет находиться.

“C:\Program Files\PostgreSQL\9.1.2-1.1C\bin\initdb.exe” -D d:\postgredata --locale=Russian_Russia --encoding=UTF8 -U postgres

А затем перезагрузите настройки с помощью команды. Если вы не используете какие-либо параметры при его запуске, он попытается подключиться к локальной базе данных в качестве пользователя, в который вы вошли. Операции над конкретными базами данных. Если вы хотите использовать этот инструмент для выполнения задач управления, ему не нужно его оставлять или разрешать доступ только с некоторых компьютеров. Вы увидите, что параметры, которые администратор базы данных должен знать и быть в состоянии настроить, не так много.

Для производственных операций он очень низок, и необходимо выделить немного больше ресурсов для базы данных. Размер выделенной памяти влияет на следующие пять параметров. Конкретные значения этих параметров можно определить по формуле. Он будет подключен не более чем к шестнадцати клиентам, которые могут вызвать сложные запросы с отличными результатами и потребуют большой рабочей памяти.

5.Удаляем службу PostgreSQL, которая была установлена в ходе установки.

sc delete pgsql-9.1.2-1.1C-x64

Где pgsql-9.1.2-1.1C-x64 – Это название службы. Если не знаете название точно, можно посмотреть свойствах службы “PostgreSQL Database Server…” (Пуск – Панель управления – Администрирование – Службы)

6.Создаем новый сервис с указанием нашего кластера

“C:\Program Files\PostgreSQL\9.1.2-1.1C\bin\pg_ctl” register -N pgsql -U postgresql -P пароль -D d:/postgredata

Соответствующий размер рабочей памяти напрямую зависит от типа запросов. Для общего веб-сервера с быстрыми и простыми запросами мы хотим настроить рабочую память для снижения значений, а число клиентов будет значительно выше. Всего пять параметров со значениями, аппроксимированными простой формулой. Нет необходимости устанавливать что-либо еще, другие параметры хорошо настроены для защиты данных по умолчанию, и нет необходимости изменять их в любом случае.

В будущем мы можем рассчитывать на автоматическую настройку этих параметров, как это делают современные коммерческие базы данных. Очень часто администратор увеличивает количество подключений, независимо от размера рабочей памяти. Следует помнить, что на практике может случиться так, что настроенный сервер после нескольких дней безотказной работы без явной причины «падает». Сервер базы данных просто исчерпал всю память, а выделение для следующего клиента больше не пройдет. Решение состоит в том, чтобы добавить дополнительную память на сервер или изменить конфигурацию на значимые значения.

7.Теперь заходим в службы.

comuedu.ru

Установка и настройка PostgreSQL и phpPgAdmin для Ubuntu/Debian

Сегодня понадобилось настроить PostgreSQL сервер на сервере с Ubuntu для работы в локальной сети. Выбрал для себя наиболее оптимальное решение и сейчас о нем попытаюсь подробно рассказать. Рассмотрим установку сервера баз данных PostgreSQL и веб-интерфейс под него — phpPgAdmin.

Примечание: все это хозяйство я устанавливал в Ubuntu 8.04, но данное руководство можно запросто применить для других версий Ubuntu и для других Debian-based дистрибутивов.

И так, приступим!

Для установки нужных нам пакетов пишем в командной строке:

$ sudo apt-get install postgresql postgresql-client postgresql-contrib

Этой командой мы установим сервер и клиент БД и некоторые дополнительные скрипты для работы с БД.

В отличии от привычного мне MySQL, Postres не спрашивает пароль для администратора при установке, поэтому его нужно задать вручную. Суперпользователь БД в PostgreSQL называется postgres. Следующими командами присвоим ему пароль:

$ sudo su postgres -c psql postgres postgres=# ALTER USER postgres WITH PASSWORD 'password'; postgres=# \q

Вместо password пишем свой пароль. Данными командами мы изменили пароль пользователю «postgres» в базе данных «postgres». Теперь нужно задать соответствующий пароль системному пользователю postgres. Для это пишем:

$ sudo passwd postgres

Задаем такой же пароль как и выше.

Далее настроим наш сервер для работы в сети. Для этого своим любимым редактором открываем файл /etc/postgresql/8.3/main/postgresql.conf например:

$ sudo nano /etc/postgresql/8.3/main/postgresql.conf

и в секции «Connections and Authentication» раскомментируем следующие строки:

listen_addresses = 'localhost'

и

password_encryption = on

вместо localhost через запятую пишем IP-адреса на которые хотим повесить PostgreSQL сервер. Например:

listen_addresses = '127.0.0.1, 192.168.1.1'

здесь я повесил сервер на внутренний айпишник, а так же оставил его на локалхосте (если не прописать, то не работает phpPgAdmin консольный клиент).

Если нужно что бы наш сервер был доступен на всех сетевых интерфейсах, вместо IP-адресов ставим ‘*’.

Теперь мы должны определить кто из пользователей сети должен иметь доступ к серверу. Для этого в конец файла /etc/postgresql/8.3/main/pg_hba.conf дописываем строчку:

host all all [ip адрес] [маска подсети] md5

вместо [ip адрес] пишем айпи клиента в нашей сети, вместо [маска подсети] нашу маску подсети, например:

host all all 192.168.1.2 255.255.255.0 md5

если нужно задать целую подсеть — 192.168.1.0

Перезапускаем сервер:

$ sudo /etc/init.d/postgresql-8.3 restart

На этом сервер должен нормально стартануть и работать как планировалось.

Установим теперь phpPgAdmin:

если Apache уже установлен:

$ sudo apt-get install php5-pgsql phppgadmin wwwconfig-common

если не установлен, устанавливаем и его:

$ sudo apt-get install apache2 php5 php5-pgsql phppgadmin wwwconfig-common

Подключаем файл конфигурации phpPgAdmin в Апач (в Ubuntu он сам не подключается, в Дебиане данное действие не требуется) и перезагружаем веб-сервер:

$ ln -s /etc/phppgadmin/apache.conf /etc/apache2/conf.d/phppgadmin $ /etc/init.d/apache2 restart

открываем браузер и пишем:

http://ip-адрес_сервера/phppgadmin

мы должны увидеть домашнюю страницу phpPgAdmin.

В целях безопасности вход в phpPgAdmin запрещен от имени пользователя postgres. Поэтому создаем нового пользователя ‘pgadmin’ с правами администратора, для администрирования нашего сервера через веб-интерфейс:

$ sudo -u postgres createuser pgadmin Shall the new role be a superuser? (y/n) Shall the new role be allowed to create databases? (y/n) Shall the new role be allowed to create more new roles? (y/n)

отвечаем на несколько вопросов, что бы наделить нашего пользователя соответствующими привилегиями (я своего сделал суперпользователем), а потом задаем ему пароль следующим образом:

$ sudo su postgres -c psql postgres postgres=# ALTER USER pgadmin WITH PASSWORD 'password'; postgres=# \q

Вместо password пишем пароль и пробуем залогиниться в phpPgAdmin. Сам веб-интерфейс интуитивно понятен и у меня даже на русском языке по умолчанию :) правда не такой функциональный как хотелось бы. Здесь вы можете создать базу данных или пользователя, удалять, импортировать, редактировать и т.п. в зависимости от ваших привилегий и потребностей.

Собственно все :)

Поделиться ссылкой:

hutpu4.org.ua

Установка, настройка и использование PostgreSQL на Ubuntu. PostgreSQL: установка, настройка, обслуживание.

параметр - значение - рекомендации
Настройка ресурсов
shared_buffers
Размер разделяемой между процессами PostgreSQL памяти, которая нужна для выполнения активных операций. Не следует указывать слишком большой объём, так как PostgreSQL использует также дисковый кэш.

Значения:

  • Средний объём данных и 256-512 МБ доступной памяти: 16-32 МБ
  • Большой объём данных и 1-4 ГБ доступной памяти: 64-256 МБ
temp_buffers
Буфер под временные объекты, в основном для временных таблиц. Можно установить порядка 16 МБ
max_prepared_transactions
Количество одновременно подготавливаемых транзакций. Для работы 1С этот параметр значения не имеет, PREPARE TRANSACTION там не используются. Можно оставить по дефолту - 5
work_mem
Специальная память, используется для сортировки и кэширования таблиц, для одного запроса. При задании этого параметра следует учитывать количество конкурентных запросов, выполняемых в один момент времени. При памяти 1-4Gb рекомендуется устанавливать 32-128MB
maintenance_work_mem
Память использующаяся для операций VACUUM, CREATE INDEX, ALTER TABLE и FOREGIN KEY. Следует устанавливать большее значение, чем для work_mem. Слишком большие значения приведут к использованию свопа. При памяти 1-4Gb рекомендуется устанавливать 128-512MB
max_stack_depth
Специальный стек для сервера, в идеале он должен совпадать с размером стека, выставленном в ядре ОС. Установка большего значения, чем в ядре, может привести к ошибкам. Рекомендуется устанавливать 2-4MB
max_fsm_relations
Максимальное количество таблиц, для которых будет отслеживаться свободное место в общей карте свободного пространства. Эти данные собираются VACUUM. Выставьте параметр в соответствии с количеством таблиц в вашей базе с запасом. (Применимо для версий до 8.4)
max_fsm_pages
Количество блоков, для которых будет хранится информация о свободном месте. Информация хранится в разделяемой памяти, для каждой записи требуется по 6 байт. Использование этого параметра позволяет избежать использования VACUUM FULL для базы, достаточно будет VACUUM. (Применимо для версий до 8.4) Этот параметр должен быть не меньше чем 16*max_fsm_relations Данный параметр задается автоматически при создании базы утилитой initdb Можно задать его и вручную: в качестве начального приближения можно взять половину от среднего количества записей, изменяемых (UPDATE или DELETE) между запусками команды VACUUM. Оценить это значение (база должна проработать уже какое-то время) можно выполнив: vacuum full analyze; NOTICE: number of page slots needed (196272) exceeds max_fsm_pages (153600) HINT: Consider increasing the configuration parameter "max_fsm_pages" to a value over 196272.
max_files_per_process
Максимальное количество файлов, открываемых процессом и его подпроцессами в один момент времени. Уменьшите данный параметр, если в процессе работы наблюдается сообщение "Too many open files".
Запись транзакционных логов на диск
commit_delay и commit_siblings
Значение commit_delay выражается в микросекундах (0 по умолчанию). Значение commit_siblings выражается в штуках (5 по умолчанию). commit_delay определяют задержку между попаданием записи в буфер журнала транзакций и сбросом её на диск. Если при успешном завершении транзакции активно не менее commit_siblings транзакций, то запись будет задержана на время commit_delay. Если за это время завершится другая транзакция, то их изменения будут сброшены на диск вместе, при помощи одного системного вызова. Эти параметры позволят ускорить работу, если параллельно выполняется много «мелких» транзакций.
fsync
Данный параметр отвечает за сброс данных из кэша на диск при завершении транзакций. Если установить его значение fsync=off то данные не будут записываться на дисковые накопители сразу после завершения операций. Это может существенно повысить скорость операций insert и update, но есть риск повредить базу, если произойдет сбой (неожиданное отключение питания, сбой ОС, сбой дисковой подсистемы).

Используйте эту возможность только если у вас имеются надежные ИБП и программное обеспечение, завершающее работу системы при низком заряде батарей.

В самом начале файла добавьте

В конце файла добавьте изменения, которые мы только что сделали в файлах лицензий, позволяют выложить эти лицензии. Выполните следующие шаги. Сохраните и закройте этот файл. Сообщение об ошибке выглядит следующим образом. Но вы можете получить следующее сообщение об ошибке.

Откроется окно «Свойства системы». Выберите вкладку «Дополнительно» и нажмите кнопку «Переменные среды». Откроется новое окно. В списке с надписью «Системные переменные» выберите «Путь». Затем нажмите кнопку «Изменить». И новое окно. Затем у вас есть доступ к списку уже используемых переменных.

Не следует отключать fsync при работе PostgreSQL на Windows платформе, из-за нестабильности системы

wal_sync_method
Метод, который используется для принудительной записи данных на диск. Если fsync=off, то этот параметр не используется. Возможные значения: open_datasync - запись данных методом open() с параметром O_DSYNC fdatasync - вызов метода fdatasync() после каждого commit fsync_writethrough - вызывать fsync() после каждого commit игнорирую паралельные процессы fsync - вызов fsync() после каждого commit open_sync - запись данных методом open() с параметром O_SYNC Не все методы доступны на определенных платформах. По умолчанию устанавливается первый, который доступен в системе.
full_page_writes
Установите данный параметр в off, есл

gikk.ru