- Дистрибутив PostgreSQL для Windows
- Лицензия
- Замечания по установке
- Поддерживаемые операционные системы
- Параметры установки
- Учетная запись сервиса в Windows
- Поддержка кириллицы
- Ярлыки программ
- Удаление сервера
- Сборка postgresql для windows
- 17.1.1. Требования
- Примечание
- Примечание
- 17.1.2. Специальные замечания для 64-битной Windows
- 17.1.3. Сборка
- 17.1.4. Очистка и установка
- 17.1.5. Запуск регрессионных тестов
Дистрибутив PostgreSQL для Windows
Компанией Постгрес Профессиональный подготовлены дистрибутивы PostgreSQL для Windows.
Для установки 32 разрядной версии требуется Windows XP SP3 и выше, для установки 64 разрядной — Windows Vista 64bit и выше.
Для установки PosgreSQL на компьютер скачайте и запустите один из следующих файлов (скачивая эти файлы, Вы выражаете согласие с лицензией PostgreSQL):
- PostgreSQL 13.2: 64-разрядная,
- PostgreSQL 12.6: 64-разрядная, 32-разрядная,
- PostgreSQL 11.11: 64-разрядная, 32-разрядная,
- PostgreSQL 10.16: 64-разрядная, 32-разрядная,
- PostgreSQL 9.6.21: 64-разрядная, 32-разрядная.
Некоторые отличия нашей сборки PostgreSQL:
- подбор параметров конфигурации сервера в зависимости от объема установленной памяти
- решены проблемы с кодировкой не латинских сообщений
- дополнительные ярлыки для управления сервером — стоп, старт, рестарт
- фиксы критических багов (включены дополнительные патчи, которые исправляют проблему с правами доступа и критический баг с остановкой Postgres)
Это предварительная версия нашей сборки PosgreSQL. Данное ПО поставляются «как есть», без какой-либо гарантии, явной или подразумеваемой.
Ваши замечания и предложения по нашим сборкам PostgreSQL и по программе установки присылайте по e-mail: info@postgrespro.ru
Лицензия
PostgreSQL распространяется по специальной лицензии PostgreSQL License, свободной open source лицензии, близкой к лицензиям BSD и MIT.
Portions Copyright (c) 1996-2017, The PostgreSQL Global Development Group
Portions Copyright (c) 1994, The Regents of the University of California
Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee, and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and the following two paragraphs appear in all copies.
IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN «AS IS» BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Замечания по установке
Поддерживаемые операционные системы
Данная версия PostgreSQL сервера может быть установлена на компьютеры с ОС Windows XP SP3 и выше. 64-разрядная версия PosgreSQL сервера может быть установлена только на 64 разрядную версию Windows.
Параметры установки
В начале предлагается задать параметры установки сервера. Можно выбрать компоненты, которые будут установлены.
Если обнаружено, что PostgreSQL сервер уже установлен, то предлагается остановить сервер и обновить его. При этом все соединения с сервером будут отключены. Для определения существования сервера используются данные о предыдущих установках из реестра, поэтому, если Вы ранее запускали сервер нестандартно, он может остаться не обнаруженным.
При установке Вы можете задать путь для установки исполняемых файлов севера и путь к каталогу, в котором будут храниться данные. Если по указанному пути уже находятся данные, то будут использоваться они, запрос параметров сервера и инициализации базы данных проводиться не будет.
В процессе установки предлагается ввести параметры сервера — номер порта, имя супер пользователя, пароль и другие. Рекомендуем вводить имя пользователя и пароль только латинскими буквами. Пароль можно оставить и пустым.
Также предлагается провести некоторую оптимизацию параметров сервера исходя из установленной оперативной памяти (если ее больше 1 Gb) . Параметры сохраняются в файл postgresql.conf, который находится в папке с данными. Оптимизируются 2 параметра: shared_buffers и work_mem. Потом Вы можете самостоятельно изменять эти и другие параметры в зависимости от условий эксплуатации сервера.
После установки, сервер запускается и становится готовым к работе. Перезагрузка компьютера не требуется.
Учетная запись сервиса в Windows
Для запуска сервера используется специальная встроенная учетная запись Windows: ‘NT AUTHORITY\NetworkService’. Запуск службы Postgresql-9.4 от другого пользователя можно настроить после установки, например, через программу «Управление компьютером» в Windows .
Поддержка кириллицы
- При запуске psql рекомендуем выполнять команду chcp 1251, которая настраивает правильное отображение русского языка.
- При запуске pgbench рекомендуем выполнять команду chcp 65001, которая настраивает правильное отображение русского языка.
Предупреждение: не следует запускать psql после команды chcp 65001, в противном случае 8-битовые (русские) символы могут отображаться некорректно.
Ярлыки программ
После установки для сервера создаются ярлыки, которыми можно воспользоваться с помощью кнопки Пуск (если она есть в Вашей ОС).
- SQL Shell (psql) — основное, «родное» консольное средство управления сервером и выполнения запросов.
- Reload Configuration — перезагрузить конфигурацию сервера из файлов конфигурации. Следует отметить, что для некоторых параметров требуется перезагрузка сервера.
- Restart Server — остановить и запустить сервер заново. Все активные соединения с сервером будут закрыты.
- Stop Server — остановить сервер. Все активные соединения с сервером будут закрыты.
- Start Server — запустить сервер.
Если Вы установили средство pgAdmin, то для него будут созданы свои ярлыки для запуска.
Удаление сервера
Для удаления сервера выберите ярлык Uninstall или можно использовать панель управления Windows. При удалении сервер останавливается, все активные соединения с сервером будут закрыты. Папка с данными не удаляется. Перезагрузка компьютера не требуется.
Сборка postgresql для windows
PostgreSQL может быть собран с помощью компилятора Visual C++ от Microsoft. Этот компилятор есть в пакетах Visual Studio , Visual Studio Express и в некоторых версиях Microsoft Windows SDK . Если у вас ещё не установлена среда Visual Studio , проще всего будет использовать компиляторы из Visual Studio 2019 или из Windows SDK 10 , которые Microsoft распространяет бесплатно.
С применением инструментария Microsoft Compiler возможна и 32-, и 64-битная сборка. 32-битную сборку PostgreSQL можно произвести с использованием Visual Studio 2013 — Visual Studio 2019 , а также отдельных выпусков Windows SDK версии с 8.1a по 10. Для 64-битных сборок также можно использовать Microsoft Windows SDK версии с 8.1a по 10 или Visual Studio 2013 и новее. При сборке с Visual Studio 2013 — Visual Studio 2019 поддерживаются системы, начиная с Windows 7 и Windows Server 2008 R2 SP1 .
Инструменты для компиляции с помощью Visual C++ или Platform SDK находятся в каталоге src/tools/msvc . При сборке убедитесь, что в системном пути PATH не подключаются инструменты из набора MinGW или Cygwin . Также убедитесь, что в пути PATH указаны каталоги всех необходимых инструментов Visual C++. Если вы используете Visual Studio , запустите Visual Studio Command Prompt . Если вы хотите собрать 64-битную версию, вы должны выбрать 64-битную версию данной оболочки, и наоборот. Начиная с Visual Studio 2017 , это можно сделать в командной строке, воспользовавшись скриптом VsDevCmd.bat . О его параметрах и их значениях по умолчанию можно узнать, запустив его с ключом -help . Вы можете выбрать целевую архитектуру процессора, тип сборки и целевую ОС в приглашении Visual Studio Command Prompt с помощью скрипта vcvarsall.bat . Например, выполнив vcvarsall.bat x64 10.0.10240.0 , вы подготовитесь к сборке выпускаемой 64-битной версии для Windows 10. О других параметрах vcvarsall.bat можно узнать, запустив его с ключом -help . Все эти скрипты должны запускаться из каталога src\tools\msvc .
До начала сборки может потребоваться отредактировать файл config.pl и изменить в нём желаемые параметры конфигурации или пути к сторонним библиотекам, которые будут использоваться. Для получения конфигурации сначала считывается и разбирается файл config_default.pl , а затем применяются все изменения из config.pl . Например, чтобы указать, куда установлен Python , следует добавить в config.pl :
Вам нужно задать только те параметры, которые отличаются от заданных в config_default.pl .
Если вам необходимо установить какие-либо другие переменные окружения, создайте файл с именем buildenv.pl и поместите в него требуемые команды. Например, чтобы добавить путь к bison, которого нет в PATH, создайте файл следующего содержания:
Передать дополнительные аргументы командной строки команде сборки Visual Studio (msbuild или vcbuild) можно так:
17.1.1. Требования
Для сборки PostgreSQL требуется следующее дополнительное ПО. Укажите каталоги, в которых находятся соответствующие библиотеки, в файле конфигурации config.pl .
Если с вашим инструментарием для разработки не поставляется поддерживаемая версия Microsoft Windows SDK , рекомендуется установить последнюю версию SDK (в настоящее время 10), которую можно загрузить с https://www.microsoft.com/download/.
Устанавливая SDK, вы всегда должны выбирать для установки пункт Windows Headers and Libraries (Заголовочные файлы и библиотеки Windows). Если вы установили Windows SDK , включая Visual C++ Compilers , Visual Studio для сборки вам не нужна. Обратите внимание, что с версии 8.0a в SDK для Windows не включается полное окружение для сборки в командной строке. ActiveState Perl
ActiveState Perl требуется для запуска скриптов, управляющих сборкой. Perl из MinGW или Cygwin работать не будет. ActiveState Perl также должен находиться по пути в PATH. Готовый двоичный пакет можно загрузить с https://www.activestate.com. Заметьте, что требуется версия 5.8.3 или выше, при этом достаточно бесплатного стандартного дистрибутива (Standard Distribution).
Следующее дополнительное ПО не требуется для базовой сборки, но требуется для сборки полного пакета. Укажите каталоги, в которых находятся соответствующие библиотеки, в файле конфигурации config.pl .
Требуется для компиляции PL/Tcl (Заметьте, что требуется версия 8.4 или выше, при этом достаточно бесплатного стандартного дистрибутива (Standard Distribution)). Bison и Flex
Для компиляции из Git требуются Bison и Flex , хотя они не нужны для компиляции из дистрибутивного пакета исходного кода. Bison должен быть версии 1.875 или 2.2, либо новее, а Flex — версии 2.5.31 или новее.
И Bison , и Flex входят в комплект утилит msys , который можно загрузить с http://www.mingw.org/wiki/MSYS в качестве компонента набора MinGW .
Вам потребуется добавить каталог, содержащий flex.exe и bison.exe , в путь, задаваемый переменной PATH, в buildenv.pl , если она его ещё не включает. В случае с MinGW, это будет подкаталог \msys\1.0\bin в каталоге вашей инсталляции MinGW.
Примечание
Bison, поставляемый в составе GnuWin32, может работать некорректно, когда он установлен в каталог с именем, содержащим пробелы, например, C:\Program Files\GnuWin32 (целевой каталог по умолчанию в англоязычной системе). В таком случае, возможно, стоит установить его в C:\GnuWin32 или задать в переменной окружения PATH короткий путь NTFS к GnuWin32 (например, C:\PROGRA
Примечание
Старые программы winflex , которые раньше размещались на FTP-сайте PostgreSQL и упоминались в старой документации, не будут работать в 64-битной Windows, выдавая ошибку « flex: fatal internal error, exec failed » . Используйте Flex из набора MSYS.
Diff требуется для запуска регрессионных тестов, его можно загрузить с http://gnuwin32.sourceforge.net. Gettext
Gettext требуется для сборки с поддержкой NLS, его можно загрузить с http://gnuwin32.sourceforge.net. Заметьте, что для сборки потребуются и исполняемые файлы, и зависимости, и файлы для разработки. MIT Kerberos
Требуется для поддержки проверки подлинности GSSAPI. MIT Kerberos можно загрузить с https://web.mit.edu/Kerberos/dist/index.html. libxml2 и libxslt
Требуется для поддержки XML. Двоичный пакет можно загрузить с https://zlatkovic.com/pub/libxml, а исходный код с http://xmlsoft.org. Учтите, что для libxml2 требуется iconv, который можно загрузить там же. OpenSSL
Требуется для поддержки SSL. Двоичные пакеты можно загрузить с https://www.slproweb.com/products/Win32OpenSSL.html, а исходный код с https://www.openssl.org. ossp-uuid
Требуется для поддержки UUID-OSSP (только для contrib). Исходный код можно загрузить с http://www.ossp.org/pkg/lib/uuid/. Python
Требуется для сборки PL/Python . Двоичные пакеты можно загрузить с https://www.python.org. zlib
Требуется для поддержки сжатия в pg_dump и pg_restore . Двоичные пакеты можно загрузить с https://www.zlib.net.
17.1.2. Специальные замечания для 64-битной Windows
PostgreSQL для архитектуры x64 можно собрать только в 64-битной Windows, процессоры Itanium не поддерживаются.
Совместная сборка 32- и 64-битных версий в одном дереве не поддерживается. Система сборки автоматически определит, в каком окружении (32- или 64-битном) она запущена, и соберёт соответствующий вариант PostgreSQL. Поэтому перед сборкой важно запустить требуемую версию командного интерпретатора.
Для использования на стороне сервера сторонних библиотек, таких как python или OpenSSL , эти библиотеки также должны быть 64-битными. 64-битный сервер не поддерживает загрузку 32-битных библиотек. Некоторые библиотеки сторонних разработчиков, предназначенные для PostgreSQL, могут быть доступны только в 32-битных версиях и в таком случае их нельзя будет использовать с 64-битной версией PostgreSQL.
17.1.3. Сборка
Чтобы собрать весь PostgreSQL в конфигурации выпуска (по умолчанию), запустите команду:
Чтобы собрать весь PostgreSQL в конфигурации отладки, запустите команду:
Для сборки отдельного проекта, например psql, выполните, соответственно:
Чтобы сменить конфигурацию по умолчанию на отладочную, поместите в файл buildenv.pl следующую строку:
Также возможна сборка из графической среды Visual Studio. В этом случае вам нужно запустить в командной строке:
и затем открыть в Visual Studio полученный pgsql.sln в корневом каталоге дерева исходных кодов.
17.1.4. Очистка и установка
В большинстве случаев за изменением файлов будет следить автоматическая система отслеживания зависимостей в Visual Studio. Но если изменений было слишком много, может понадобиться очистка установки. Чтобы её выполнить, просто запустите команду clean.bat , которая автоматически очистит все сгенерированные файлы. Вы также можете запустить эту команду с параметром dist , в этом случае она отработает подобно make distclean и удалит также выходные файлы flex/bison.
По умолчанию все файлы сохраняются в подкаталогах debug или release . Чтобы установить эти файлы стандартным образом, а также сгенерировать файлы, требуемые для инициализации и использования базы данных, запустите команду:
Если вы хотите установить только клиентские приложения и интерфейсные библиотеки, выполните команду:
17.1.5. Запуск регрессионных тестов
Чтобы запустить регрессионные тесты, важно сначала собрать все необходимые для них компоненты. Также убедитесь, что в системном пути могут быть найдены все DLL, требуемые для загрузки всех подсистем СУБД (например, DLL Perl и Python для процедурных языков). Если их каталоги в пути поиска отсутствуют, задайте их в файле buildenv.pl . Чтобы запустить тесты, выполните одну из следующих команд в каталоге src\tools\msvc :
Чтобы выбрать другой планировщик выполнения тестов (по умолчанию выбран параллельный), укажите его в командной строке, например:
За дополнительными сведениями о регрессионных тестах обратитесь к Главе 32.
Для запуска регрессионных тестов клиентских программ с применением команды vcregress bincheck или тестов восстановления, с применением vcregress recoverycheck , должен быть установлен дополнительный модуль Perl: