pgAdmin 4 (Windows)
Maintainer: pgAdmin Development Team
pgAdmin is available for 64 bit Windows™ 7 SP1 (desktop) or 2008R2 (server) and above, up to v4.30.
v5.0 and later are supported on Windows 8 (desktop) or 2012 (server) and above.
v7.0 and later are supported on Windows 10 (desktop) or 2016 (server) and above.
32 bit Windows support is available for versions up to v4.29.
The packages below include both the Desktop Runtime and Web Application:
- pgAdmin 4 v7.7 (released Sept. 21, 2023)
- pgAdmin 4 v7.6 (released Aug. 24, 2023)
- pgAdmin 4 v6.21 (released March 9, 2023)
Info
Nightly snapshot builds generated from the head of the master branch are available here.
To install these packages, simply download and run the installer.
The Windows installers are signed with a Microsoft-issued digital signing key.
Alternative Distributions
Вариант использования в качестве сервера баз данных PostgreSQL на windows платформе не очень популярен, но имеет место быть как правило, когда необходимо хоть как-то сэкономить на продуктах от MS. Так же существуют специализированные приложения, которые наилучшим образом работают с PostgreSQL. Для 1с существует модифицированная сборка PostgreSQL дающая как уверяют разработчики сопоставимый с MSSQL уровень производительности и отказоустойчивости. Так ли это на самом деле, проверим на практике ?
Установка
Установка PostgreSQL
Качаем с сайта 1с последнюю сборку PostgreSQL 64-bit 9.1.2-1.1C (актуально и до 9.4), распаковываем архив, запускаем msi-пакет, тот что без int, имеет не большой размер файла.
Нажимаем Start.
Опции установки оставляем по умолчанию.
Задаем пароль пользователю postgres от которого будет стартовать сервис. Нажимаем Далее. Если установка PostgreSQL производится впервые, то мастер предложит создать пользователя postgres.
На этапе инициализации БД, выбираем кодировку UTF8. Задаем логин и пароль внутреннему пользователю postgres. Внимание! Пароли пользователя сервиса PostgreSQL и пароль внутреннего пользователя БД PostgreSQL не должны совпадать. Пароль должен состоять как минимум из четырех символов. Если сервер 1C и PostgreSQL планируется запускать на разных машинах, то необходимо поставить галочку «Поддерживать соединения с любых IP, а не только с localhost». Нажимаем Далее и еще раз Далее. ?
Нажимаем еще два раза Далее и дожидаемся окончания установки.
Затем идем в StartAll ProgramsPostgreSQL 9.1.2-1.1C(x64). Запускаем утилиту администрирования pgAdmin III. Пробуем подключится к БД. Вводим пароль, который указывали во время установки.
И получаем следующую ошибку: Error connecting to the server: FATAL: password authentication failed for user «postgres».
Довольно неожиданно, с учетом того, что пароль был набран верно. Решил поковырять pg_hba.conf, но на первый взгляд там все хорошо.
Решил, поменять метод авторизации с md5 на trust. Перезапускаю сервис и снова пробую подключится к БД. На этот раз получаю такое сообщение.
Действительно на сайте pgAdmin доступна уже более новая версия. После чего подключение к БД завершается успехом!!?!! Помнится, ранее md5 не вызывал подобных проблем, видимо данный глюк действительно связан со старой версией pgAdmin’a.
Теперь можем создать базу для нужд 1С, либо сделать это при помощи самой 1С ?
Установка, настройка 1с
Для установки отметим, следующие компоненты: 1С:Предприятие, Сервер 1С:Предприятия, Модули расширения веб-сервера, Администрирование сервера 1С:Предприятия.
На этапе, установки «Установить 1С Предприятие как сервис», задаем пароль пользователю USR1C82.
Нажимаем далее, следим за ходом установки ? Пользователю USR1CV82 при установке должны быть назначены следующие права:
Вход в систему как сервис (Log on as a service), Вход в систему как пакетное задание (Log on as a batch job). Посмотреть можно в Local Computer PolicyComputer ConfigurationWindows SetingsSecurity SetingsLocal PoliciesUser Right Assigments. Запускаем оснастку Администрирование серверов 1С Предприятие, смотрим что кластер поднялся, и висит на 1541 порту. На вкладке «Рабочие серверы» так же присутствует наш сервер.
Создание Базы на сервере 1с и в SQL
Теперь, можно добавить базу на сервер 1С. Для этого переходим на вкладку «Информационные базы» щелкаемся правой кнопкой и выбираем New — Информационная база. Задаем необходимые параметры для подключения к серверу PostgreSQL. Нажимаем ОК.
Запускаем 1С: Предприятие. Выбираем, добавить существующую информационную базу на сервере.
Далее, задаем параметры для подключения. Нажимаем «Далее» и наконец «Готово».
Операцию по созданию базы, можно проделать напрямую из 1С: Предприятия. Для этого при запуске, выбираем пункт «Создание новой информационной базы».
Для подключения клиентов 1С к серверу извне и работы сервера баз данных, на файрволе, должны быть открыты следующие порты:
Агент сервера (ragent) — tcp:1540 Главный менеджер кластера (rmngr) — tcp:1541 Диапазон сетевых портов, для динамического распределения рабочих процессов — tcp:1560-1591, tcp:5432 — Postgresql. Создадим правило через стандартный интерфейс, либо с помощью команды:
Теперь с другого компьютера мы спокойно запускаем клиент 1С:Предприятия, добавляем существующую информационную базу newdb. Не забываем про лицензии, программной / аппаратной защиты. Теперь, можем загрузить тест Гилева и померить производительность нашей системы.
На VirtualBox с 1Гб памяти, Dual-Core 2.6 GHz, 319-релиз 1с, тест Гилева выдает — 11.42 баллов, примерно так же как на CentOS. На 16.362 чуть больше 11.60 баллов. Оптимизация настроек при помощи EnterpriseDB Tuning Wizard ощутимого прироста (11.66 и 11.62) не дала, хотя возможно в целом польза от него имеется. ?
Бекапы (резервное копирование) БД Postgree
Запускаем утилиту администрирования pgAdmin III, щелкаемся правой кнопкой по нужной базе данных. Выбираем »Резервное копирование».
Выбираем формат (Настраиваемый (степень сжатия от 0 до 9), Tar, Простой, Каталог). По степени сжатия, лучше всего сжимает «настраиваемый формат» любой степени сжатия, затем «каталог», потом «простой» и наконец «tar». Кодировку указываем UTF8, имя роли postgresql. Все дополнительные опции оставляем по умолчанию. Нажимаем кнопку «Резервная копия». В поле «Сообщения» отображается список всех произведенных операций с кодом завершения. Если 0, то успех. Здесь же можно подсмотреть, как запустить подобную операцию из командной строки.
Соответственно, скрипт автоматического резервного копирования, который мы добавим в планировщик может выглядеть примерно следующим образом:
«C:\Program Files\PostgreSQL\9.4.2-1.1C\bin\pg_dump.exe» —host localhost —port 5432 —username «user» —no-password —role «role» —format custom —blobs —compress 7 —encoding UTF8 —verbose —file «D:\BackUps\BaseName.bkp» «BaseName«
Внимание! Вставив такую команду в командную строку, pg_dump спросит у вас пароль для доступа, а это не удобно, если вы хотите запускать эту команду планировщиком. Для того чтобы пароль не запрашивался надо подложить текстовый файл pgpass.conf тому пользователю, под которым бекап делается. Если system, то сюда: C:\Documents and Settings\Default User\Application Data\postgresql\pgpass.conf А в файле написать:
localhost:5432:*:user:password
Восстановление БД Postgree
Для восстановления, выбираем базу, в которую хотим восстановить данные из резервной копии, желательно в пустую. Щелкаемся правой кнопкой и выбираем «Восстановление». Задаем файл бэкапа, имя роли: postgres, нажимаем «Восстановить»С помощью командной строки:
где, testdb — пустая база, в которую восстанавливается архив резервной копии.
Обслуживание БД Postgree
Команда VACUUM (Сжатие):
Последовательно чистит все таблицы базы данных, подключенной в настоящий момент, удаляет временные данные и освобождает место на диске. Чаще всего команда VACUUM выполняется именно для получения максимального объема свободного дискового пространства на диске и увеличения скорости доступа к данным.
VACUUM — помечает место, занимаемое старыми версиями записей, как свободное. Использование этого варианта команды, как правило, не уменьшает размер файла, содержащего таблицу, но позволяет не дать ему бесконтрольно расти, зафиксировав на некотором приемлемом уровне. При работе VACUUM возможен параллельный доступ к обрабатываемой таблице. Существует несколько дополнительных опций использования VACUUM : VACUUM FULL, VACUUM FREEZE, VACUUM ANALYZE.
VACUUM FULL — пытается удалить все старые версии записей и, соответственно, уменьшить размер файла, содержащего таблицу. Этот вариант команды полностью блокирует обрабатываемую таблицу.
VACUUM FREEZE — Если VACUUM FULL удаляет «мусор» из таблиц и перемещает записи так, чтобы таблицы располагались на диске компактно и состояли из наименьшего числа фрагментов, при этом сжатие выполняется долго и блокирует записи, то VACUUM FREEZE просто удаляет «мусор» из таблиц, но сами записи не перемещает, поэтому выполняется быстрее и не блокирует записи. В настоящий момент эту опцию заменяет autovacuum — автоматическая сборка мусора в postgresql.conf плюс несколько дополнительных опций расширяющих функциональность.
VACUUM ANALYZE — Если в базе есть таблицы, данные в которых не изменяются и не удаляются, а лишь добавляются, то для таких таблиц можно использовать отдельную команду ANALYZE. Также стоит использовать эту команду для отдельной таблицы после добавления в неё большого количества записей.
Команда ANALYZE (Анализ):
Служит для обновления информации о распределении данных в таблице. Эта информация используется оптимизатором для выбора наиболее быстрого плана выполнения запроса. Обычно команда используется в связке с VACUUM ANALYZE.
Команда REINDEX (переиндексация):
Используется для перестройки существующих индексов. Использовать её имеет смысл в случае
— порчи индекса;
— постоянного увеличения его размера.
Второй случай требует пояснений. Индекс, как и таблица, содержит блоки со старыми версиями записей. PostgreSQL не всегда может заново использовать эти блоки , и поэтому файл с индексом постепенно увеличивается в размерах. Если данные в таблице часто меняются, то расти он может весьма быстро. Если вы заметили подобное поведение какого-то индекса, то стоит настроить для него периодическое выполнение команды REINDEX. Учтите: команда REINDEX, как и VACUUM FULL, полностью блокирует таблицу, поэтому выполнять её надо тогда, когда загрузка сервера минимальна.
Join @AdmNtsRu on Telegram
Смотрите также:
Вариант использования в качестве сервера баз данных PostgreSQL на windows платформе не очень популярен, но имеет место быть как правило, когда необходимо хоть как-то сэкономить на продуктах от MS. Так же существуют специализированные приложения, которые наилучшим образом работают с PostgreSQL. Для 1с существует модифицированная сборка PostgreSQL дающая как уверяют разработчики сопоставимый с MSSQL уровень производительности и отказоустойчивости. Так ли это на самом деле, проверим на практике
1. Установка PostgreSQL
Качаем с сайта 1с последнюю сборку PostgreSQL 64-bit 9.1.2-1.1C, распаковываем архив, запускаем msi-пакет, тот что без int, имеет не большой размер файла.
Нажимаем Start.
Опции установки оставляем по умолчанию.
Задаем пароль пользователю postgres от которого будет стартовать сервис. Нажимаем Далее. Если установка PostgreSQL производится впервые, то мастер предложит создать пользователя postgres.
На этапе инициализации БД, выбираем кодировку UTF8. Задаем логин и пароль внутреннему пользователю postgres. Внимание! Пароли пользователя сервиса PostgreSQL и пароль внутреннего пользователя БД PostgreSQL не должны совпадать. Пароль должен состоять как минимум из четырех символов. Если сервер 1C и PostgreSQL планируется запускать на разных машинах, то необходимо поставить галочку «Поддерживать соединения с любых IP, а не только с localhost». Нажимаем Далее и еще раз Далее.
Нажимаем еще два раза Далее и дожидаемся окончания установки.
Затем идем в StartAll ProgramsPostgreSQL 9.1.2-1.1C(x64). Запускаем утилиту администрирования pgAdmin III. Пробуем подключится к БД. Вводим пароль, который указывали во время установки.
И получаем следующую ошибку: Error connecting to the server: FATAL: password authentication failed for user «postgres».
Довольно неожиданно, с учетом того, что пароль был набран верно. Решил поковырять pg_hba.conf, но на первый взгляд там все хорошо.
# TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all postgres ::1/128 md5 host all postgres 127.0.0.1/32 md5 host all postgres 192.168.1.0/24 md5
Решил, поменять метод авторизации с md5 на trust. Перезапускаю сервис и снова пробую подключится к БД. На этот раз получаю такое сообщение.
Действительно на сайте pgAdmin доступна уже более новая версия. После чего подключение к БД завершается успехом!!?!! Помнится, ранее md5 не вызывал подобных проблем, видимо данный глюк действительно связан со старой версией pgAdmin’a.
Теперь можем создать базу для нужд 1С, либо сделать это при помощи самой 1С
2. Установка 1C предприятие 8.2.
Для установки отметим, следующие компоненты: 1С:Предприятие, Сервер 1С:Предприятия, Модули расширения веб-сервера, Администрирование сервера 1С:Предприятия.
На этапе, установки «Установить 1С Предприятие как сервис», задаем пароль пользователю USR1C82.
Нажимаем далее, следим за ходом установки Пользователю USR1CV82 при установке должны быть назначены следующие права:
Вход в систему как сервис (Log on as a service), Вход в систему как пакетное задание (Log on as a batch job). Посмотреть можно в Local Computer PolicyComputer ConfigurationWindows SetingsSecurity SetingsLocal PoliciesUser Right Assigments.
Переходим в оснастку Администрирование серверов 1С Предприятие, смотрим что кластер поднялся, и висит на 1541 порту. На вкладке «Рабочие серверы» так же присутствует наш сервер.
Теперь, можно добавить базу на сервер 1С. Для этого переходим на вкладку «Информационные базы» щелкаемся правой кнопкой и выбираем New — Информационная база. Задаем необходимые параметры для подключения к серверу PostgreSQL. Нажимаем ОК.
Запускаем 1С: Предприятие. Выбираем, добавить существующую информационную базу на сервере.
Далее, задаем параметры для подключения. Нажимаем «Далее» и наконец «Готово».
Операцию по созданию базы, можно проделать напрямую из 1С: Предприятия. Для этого при запуске, выбираем пункт «Создание новой информационной базы».
Для подключения клиентов 1С к серверу извне и работы сервера баз данных, на файрволе, должны быть открыты следующие порты:
Агент сервера (ragent) — tcp:1540 Главный менеджер кластера (rmngr) — tcp:1541 Диапазон сетевых портов, для динамического распределения рабочих процессов — tcp:1560-1591, tcp:5432 — Postgresql. Создадим правило через стандартный интерфейс, либо с помощью команды:
netsh advfirewall firewall add rule name="1Cv8-Server" dir=in action=allow protocol=TCP localport=1540,1541,5432,1560-1590 enable=yes profile=ANY remoteip=ANY interfacetype=LAN
Теперь с другого компьютера мы спокойно запускаем клиент 1С:Предприятия, добавляем существующую информационную базу newdb. Не забываем про лицензии, программной / аппаратной защиты. Теперь, можем загрузить тест Гилева и померить производительность нашей системы.
На VirtualBox с 1Гб памяти, Dual-Core 2.6 GHz, 319-релиз 1с, тест Гилева выдает — 11.42 баллов, примерно так же как на CentOS. На 16.362 чуть больше 11.60 баллов. Оптимизация настроек при помощи EnterpriseDB Tuning Wizard ощутимого прироста (11.66 и 11.62) не дала, хотя возможно в целом польза от него имеется.
3. Регламентные работы на сервере PostgreSQL.
Резервное копирование.
Запускаем утилиту администрирования pgAdmin III, щелкаемся правой кнопкой по нужной базе данных. Выбираем »Резервное копирование».
Выбираем формат (Настраиваемый (степень сжатия от 0 до 9), Tar, Простой, Каталог). По степени сжатия, лучше всего сжимает «настраиваемый формат» любой степени сжатия, затем «каталог», потом «простой» и наконец «tar». Кодировку указываем UTF8, имя роли postgresql. Все дополнительные опции оставляем по умолчанию. Нажимаем кнопку «Резервная копия». В поле «Сообщения» отображается список всех произведенных операций с кодом завершения. Если 0, то успех. Здесь же можно подсмотреть, как запустить подобную операцию из командной строки.
C:Program Files (x86)pgAdmin III1.16pg_dump.exe" --host 192.168.1.200 --port 5432 --username "postgres" --role "postgres" --no-password --format custom --blobs --compress 9 --encoding UTF8 --verbose --file "G:Backupsgilev_dump.backup" "newdb"
Соответственно, скрипт автоматического резервного копирования, который мы добавим в планировщик может выглядеть примерно следующим образом:
"C:Program Files (x86)pgAdmin III1.16pg_dump.exe" --host 192.168.1.200 --port 5432 --username "postgres" --role "postgres" --no-password --format custom --blobs --compress 9 --encoding UTF8 --verbose --file "G:Backupsgilev_dump_%date:~0,2%_%date:~3,2%_%date:~6,4%.backup" "newdb"
Восстановление.
Для восстановления, выбираем базу, в которую хотим восстановить данные из резервной копии, желательно в пустую. Щелкаемся правой кнопкой и выбираем «Восстановление». Задаем файл бэкапа, имя роли: postgres, нажимаем «Восстановить»
С помощью командной строки:
"C:Program Files (x86)pgAdmin III1.16pg_restore.exe" --host 192.168.1.200 --port 5432 --username "postgres" --dbname "testdb" --role "postgres" --no-password --verbose "G:Backupsgilev_dump_26_09_2012.backup"
где, testdb — пустая база, в которую восстанавливается архив резервной копии.
Операции по обслуживанию:
Команда VACUUM (Сжатие):
Последовательно чистит все таблицы базы данных, подключенной в настоящий момент, удаляет временные данные и освобождает место на диске. Чаще всего команда VACUUM выполняется именно для получения максимального объема свободного дискового пространства на диске и увеличения скорости доступа к данным.
VACUUM — помечает место, занимаемое старыми версиями записей, как свободное. Использование этого варианта команды, как правило, не уменьшает размер файла, содержащего таблицу, но позволяет не дать ему бесконтрольно расти, зафиксировав на некотором приемлемом уровне. При работе VACUUM возможен параллельный доступ к обрабатываемой таблице. Существует несколько дополнительных опций использования VACUUM : VACUUM FULL, VACUUM FREEZE, VACUUM ANALYZE.
VACUUM FULL — пытается удалить все старые версии записей и, соответственно, уменьшить размер файла, содержащего таблицу. Этот вариант команды полностью блокирует обрабатываемую таблицу.
VACUUM FREEZE — Если VACUUM FULL удаляет «мусор» из таблиц и перемещает записи так, чтобы таблицы располагались на диске компактно и состояли из наименьшего числа фрагментов, при этом сжатие выполняется долго и блокирует записи, то VACUUM FREEZE просто удаляет «мусор» из таблиц, но сами записи не перемещает, поэтому выполняется быстрее и не блокирует записи. В настоящий момент эту опцию заменяет autovacuum — автоматическая сборка мусора в postgresql.conf плюс несколько дополнительных опций расширяющих функциональность:
autovacuum = on # Включает автоматическую сборку мусора.
log_autovacuum_min_duration = -1 # Установка равная нулю регистрирует все действия autovacuum. Минус один (по умолчанию) запрещает вывод в лог. Например, если вы установите значение равное 250 мс, то все действия autovacuum и analyzes, которые работают 250 мс и более, будут заноситься в журнал. Включение этого параметра может быть полезно для отслеживания autovacuum. Этот параметр может быть установлен только в файле postgresql.conf или в командной строке сервера.
autovacuum_naptime = 10min # Время в секундах через которое база данных проверяется на необходимость в сборке мусора. По умолчанию это происходит раз в минуту.
autovacuum_vacuum_threshold = 1800 # Порог на число удалённых и изменённых записей в любой таблице по превышению которого происходит сборка мусора (VACUUM).
autovacuum_analyze_threshold = 900 # Порог на число вставленных, удалённых и изменённых записей в любой таблице по превышению которого запускается процесс анализа (ANALYZE).
autovacuum_vacuum_scale_factor = 0.2 # Процент изменённых и удалённых записей по отношению к таблице по превышению которого запускается сборка мусора.
autovacuum_analyze_scale_factor = 0.1 # То же, что и предыдущая переменная, но по отношению к анализу.
VACUUM ANALYZE — Если в базе есть таблицы, данные в которых не изменяются и не удаляются, а лишь добавляются, то для таких таблиц можно использовать отдельную команду ANALYZE. Также стоит использовать эту команду для отдельной таблицы после добавления в неё большого количества записей.
Команда ANALYZE (Анализ):
Служит для обновления информации о распределении данных в таблице. Эта информация используется оптимизатором для выбора наиболее быстрого плана выполнения запроса. Обычно команда используется в связке с VACUUM ANALYZE.
Команда REINDEX (переиндексация):
Используется для перестройки существующих индексов. Использовать её имеет смысл в случае
— порчи индекса;
— постоянного увеличения его размера.
Второй случай требует пояснений. Индекс, как и таблица, содержит блоки со старыми версиями записей. PostgreSQL не всегда может заново использовать эти блоки, и поэтому файл с индексом постепенно увеличивается в размерах. Если данные в таблице часто меняются, то расти он может весьма быстро. Если вы заметили подобное поведение какого-то индекса, то стоит настроить для него периодическое выполнение команды REINDEX. Учтите: команда REINDEX, как и VACUUM FULL, полностью блокирует таблицу, поэтому выполнять её надо тогда, когда загрузка сервера минимальна.
Как только размер файловой базы данных 1С:Предприятие одного из наших клиентов достиг размера в 32Гб (да, 32Гб), в следствии чего всё постепенно начало тормозить, а потом и встало намертво, наши клиенты попросили нас решить эту проблемы. SSD Enterprise класса ненадолго подсластил пилюлю, но через некоторое время всё вернулось в исходную точку. Ну что ж, тут и к бабке не ходи – переходим на SQL версию БД.
Поскольку мы ярые пользователи Windows, доступно нам только два варианта СУБД – это MSSql и PostgreSQL. Первый хорош до безумия, но стоимость не порадовала. А ещё больше не порадовала новость о дополнительных лицензиях 1С для работы с MSSQL. Поэтому PostgreSQL.
Подробная инструкция с видео доступна здесь. В этой статье мы пройдёмся по ключевым моментам.
Не забываем про резервное копирование баз данных 1С!
Исходные данные:
- ОС Windows Server 2008R2,
- Intel Core i7-2600K 3.40GHz,
- 32Gb RAM,
- Intel SSD DC3700 100Gb (только под БД, ОС на отдельном SSD),
- от 10 до 20 пользователей в БД ежедневно,
- обмен с 5 узлами распределённой БД в фоне.
Зловеще, не правда ли? Приступим.
1. Установка PostgreSQL и pgAdmin.
Никаких откровений по поводу того, откуда качать PostgreSQL не будет — это наш любимый сайт https://releases.1c.ru, раздел «Технологические дистрибутивы». Скачиваем, ставим. Не забываем установить MICROSOFT VISUAL C++ 2010 RUNTIME LIBRARIES WITH SERVICE PACK 1, который идёт в архиве с дистрибутивом. Сами попались на это: не установили, испытали много боли.
Ставим всё на далее, далее, кроме следующих моментов. Устанавливаем, как сервис (галочка) и задаём параметры учётной записи Windows, не PostgreSQL.
Инициализируем кластер базы данных (галочка). А вот здесь задаём параметры учётной записи для PostgreSQL! Важно: у Вас должна быть запущена служба «Secondary Logon» (или на локализированных ОС: «Вторичный вход в систему»). Кодировка UTF8 — это тоже важно!
Дальше ничего интересного. Далее…
pgAdmin в этой сборке староват. Идём на https://www.postgresql.org/ftp/pgadmin3/release/. На момент написания статьи самая свежая версия 1.22.1. Качаем её, ставим. Заходим.
На процессе установки оснастки «Администрирование серверов 1С Предприятия» не будем останавливаться. Это совсем другая тема. Да и сложного там ничего нет.
Создаём SQL БД в этой оснастке, проверяем в pgAdmin — БД там появиться, если всё указано верно.
2. Тюнинг PostgreSQL 9.4.2.
Дальше вбиваем себе в голову следующее: перед любым сохранением новых настроек, делайте резервные копии файлов:
- pg_hba.conf
- postgresql.conf
- pgpass.conf
которые лежат здесь:
C:Program FilesPostgreSQL9.4.2-1.1Cdata |
Если Вы ошибётесь хоть в одной букве, после обновления конфигурации PostgreSQL не запуститься. Выяснить что же стало причиной будет сложно, даже смотря в журналы Windows. Поэтому не меняйте много параметров сразу и делайте резервные копии.
Для правки конфига есть удобный инструмент, доступный прямо из главного окна pgAdmin. Вот он:
Что мы здесь меняем:
- shared_buffers — Количество памяти, выделенной PgSQL для совместного кеша страниц. Эта память разделяется между всеми процессами PgSQL. Делим доступную ОЗУ на 4. В нашем случае это 8Gb.
- effective_cache_size — Оценка размера кэша файловой системы. Считается так: ОЗУ — shared_buffers. В нашем случае это 32Gb — 8Gb = 24Gb. Но лично я оставляю этот параметр ещё ниже, где-то 20Gb — всё-таки ОЗУ нужна не только для PostgreSQL.
- random_page_cost = 1.5 — 2.0 для RAID, 1.1 — 1.3 для SSD. Стоимость чтения рандомной страницы (по-умолчанию 4). Чем меньше seek time дисковой системы тем меньше (но > 1.0) должен быть этот параметр. Излишне большое значение параметра увеличивает склонность PgSQL к выбору планов с сканированием всей таблицы (PgSQL считает, что дешевле последовательно читать всю таблицу, чем рандомно индекс). И это плохо.
- temp_buffers = 256Mb. Максимальное количество страниц для временных таблиц. То есть это верхний лимит размера временных таблиц в каждой сессии.
- work_mem — Считается так: ОЗУ / 32..64 — в нашем случае получается 1Gb. Лимит памяти для обработки одного запроса. Эта память индивидуальна для каждой сессии. Теоретически, максимально потребная память равна max_connections * work_mem, на практике такого не встречается потому что большая часть сессий почти всегда висит в ожидании.
- bgwrite_delay — 20ms. Время сна между циклами записи на диск фонового процесса записи. Данный процесс ответственен за синхронизацию страниц, расположенных в shared_buffers с диском. Слишком большое значение этого параметра приведет к возрастанию нагрузки на checkpoint процесс и процессы, обслуживающие сессии (backend). Малое значение приведет к полной загрузке одного из ядер.
- synchronous_commit — off. ОПАСНО! Выключение синхронизации с диском в момент коммита. Создает риск потери последних нескольких транзакций (в течении 0.5-1 секунды), но гарантирует целостность базы данных, в цепочке коммитов гарантированно отсутствуют пропуски. Но значительно увеличивает производительность.
Это далеко не всё, что удалось узнать из Интернета и статей на https://its.1c.ru. НО! Даже этих настроек хватит, чтобы видимо ускорить работу 1С:Предприятие на PostgreSQL.
В этом конкретном случае после перехода на PostgreSQL пользователи стали жаловаться, что 1С начала тормозить ещё сильнее, чем в файловом варианте. Но после этого тюнинга база «полетела». Теперь все наслаждаются быстрой работой. Однако есть и свои минусы в виде блокировок. Останавливаться на это мы не планируем, будем копать дальше и выкладывать полезные изменения конфигурации PostgreSQL сюда.
PostgreSQL is a free object-relational database management system able to compete with proprietary databases, like Microsoft SQL Server or Oracle. PostgreSQL supports user data, functions, operations, domains, and indexes. In this article, we’ll walk through the installation and brief overview of PostgreSQL database management. We will install PostgreSQL on Windows 10 computer, create a new database, add tables, and grant user access permissions. Also, we will show how to manage PostgreSQL using SQL shell and the visual PgAdmin tool. I hope this article will be a good starting point to learn PostgreSQL and use it in development or test projects.
Contents:
- How to Install PostgreSQL on Windows 10?
- Enable Remote Access to PostgreSQL Database
- Managing PostgreSQL Database from the Command Prompt
- PgAdmin: Graphical PostgreSQL Editor
- Using PostgreSQL Query Tool
How to Install PostgreSQL on Windows 10?
To install PostgreSQL, go to https://www.postgresql.org and download the latest version of the distribution for Windows. Today it is PostgreSQL 14 (it supports 64-bit Windows versions only). Then run the installer.
Check the following options during the installation:
- PostgreSQL Server – a database server;
- PgAdmin 4 – visual SQL editor;
- Stack Builder – additional developer tools (you may need them later);
- Command Line Tools.
Set a password for postgres user (it is created by default and has superuser privileges).
By default, the PostgreSQL database instance listens on port TCP 5432. You must add it to the exceptions list in your firewall.
Click Next, Next, and the installation of PostgreSQL is over.
Enable Remote Access to PostgreSQL Database
To allow network access to your PostgreSQL instance from remote computers, you need to create firewall rules. You can create a rule using a command line or PowerShell.
Run the command prompt as administrator. Enter the command below:
netsh advfirewall firewall add rule name="PostgreSQL" dir=in action=allow protocol=TCP localport=5432
- where rule name is a rule name
- localport is the allowed port number
Or, you can create a firewall rule allowing access to your PostgreSQL instance on port 5432 using PowerShell:
New-NetFirewallRule -Name 'POSTGRESQL-In-TCP' -DisplayName 'PostgreSQL (TCP-In)' -Direction Inbound -Enabled True -Protocol TCP -LocalPort 5432
After the command is applied, a new inbound rule for PostgreSQL port will appear in the Microsoft Defender Firewall.
Tip. To change the port number for an installed PostgreSQL instance, edit postgresql.conf in C:Program FilesPostgreSQL14data.
Change the value in port = 5432
. Then restart your postgresql-x64-14 server service. You can restart the service using PowerShell:
Restart-Service -Name postgresql-x64-14
Learn more about how to configure PostgreSQL options in postgresql.conf using tuners.
Managing PostgreSQL Database from the Command Prompt
Let’s see how to manage PostgreSQL using the command prompt tools. The main PostgreSQL management tools are located in bin folder, so we will run all commands from this directory.
Run the command prompt and change to the bin directory:
CD "C:Program FilesPostgreSQL14bin"
Basic PostgreSQL commands:
- Check the PostrgreSQL version:
psql –V
- Use the createdb command to create a new database:
createdb -U postgres testdb
(where postgres is a super-user, testdb is a new database name). Enter the super-user password; - To view a list of active databases:
Psql -U postgres –l
(password) - Create a new user:
createuser –U postgres myuser1
(where myuser1 is a new user name); - Grant superuser privileges to the new user (don’t do this in a production deployment). Run the interactive PostgreSQL management shell:
psql –U postgres
. Grant the privileges:ALTER ROLE operator SUPERUSER CREATEROLE CREATEDB;
Now your user can create roles and databases; - To display a list of users and roles in PostgreSQL, run the command:
du
PgAdmin: Graphical PostgreSQL Editor
PgAdmin makes it easier to manage a PostgreSQL database in an intuitive visual mode.
To run the editor, click PgAdmin 4 in the Start menu and enter postgres (super-user) password.
Expand a list of active databases in the Servers pane.
You can quickly create a new user or group and grant them some privileges. To do it, open Object -> Create -> Create Login/Group.
To create a new database, just select Database in Object -> Create. Enter the database name and the owner.
By default, all PostrgeSQL databases are stored in base directory located in C:Program FilesPostgreSQL14database.
Each database has a sub-directory inside PGDATA/base named by the database OID in pg_database. By default, the database files are stored in the sub-directory. Each table and index are stored in a separate file.
To backup and restore the database, it is better to use the Backup option in the Tools menu. To backup PostgreSQL automatically, use the pg_dump.exe command prompt tool.
Using PostgreSQL Query Tool
To create SQL queries in the graphical editor, pgAdmin has the built Query Tool. For example, you want to create a new table in a database using Query Tool.
- Select a database and open Query Tool in the Tools menu.
- Create an employee table:
CREATE TABLE employee
(
Id SERIAL PRIMARY KEY,
FirstName CHARACTER VARYING(30),
LastName CHARACTER VARYING(30),
Email CHARACTER VARYING(30),
Age INTEGER
);Id
is the number of employee the SERIAL key is assigned to. This field contains a numerical value (1, 2, 3, etc.) that is increased by one with each new line. The next fields contain an employee’s first name and last name, their email address, and have a CHARACTER VARYING(30) type (30 characters max). TheAge
field contains an employee’s age and has an INTEGER type since it stores numbers. - After you have written the SQL query code in the Query Tool, press F5, and a new table (employee) will be created in the database;
- To fill in the fields in the table, select the employee table in Schemas -> Tables. Click View/Edit Data in the Object menu. Here you can fill in the data in the table;
- Then run a simple select SQL query using the Query Tool:
select Age from employee;
pgAdmin 4
pgAdmin 4 is a rewrite of the popular pgAdmin3 management tool for the
PostgreSQL (http://www.postgresql.org) database.
In the following documentation and examples, $PGADMIN4_SRC/ is used to denote
the top-level directory of a copy of the pgAdmin source tree, either from a
tarball or a git checkout.
Architecture
pgAdmin 4 is written as a web application in Python, using jQuery and Bootstrap
for the client side processing and UI. On the server side, Flask is being
utilised.
Although developed using web technologies, pgAdmin 4 can be deployed either on
a web server using a browser, or standalone on a workstation. The runtime/
subdirectory contains an NWjs based runtime application intended to allow this,
which will execute the Python server and display the UI.
Building the Runtime
To build the runtime, the following packages must be installed:
- NodeJS 12+
- Yarn
Change into the runtime directory, and run yarn install. This will install the
dependencies required.
In order to use the runtime in a development environment, you’ll need to copy
dev_config.json.in file to dev_config.json, and edit the paths to the Python
executable and pgAdmin.py file, otherwise the runtime will use the default
paths it would expect to find in the standard package for your platform.
You can then execute the runtime by running something like:
node_modules/nw/nwjs/nw .
or on macOS:
node_modules/nw/nwjs/nwjs.app/Contents/MacOS/nwjs .
Configuring the Python Environment
In order to run the Python code, a suitable runtime environment is required.
Python version 3.7 and later are currently supported. It is recommended that a
Python Virtual Environment is setup for this purpose, rather than using the
system Python environment. On Linux and Mac systems, the process is fairly
simple — adapt as required for your distribution:
-
Create a virtual environment in an appropriate directory. The last argument is
the name of the environment; that can be changed as desired: -
Now activate the virtual environment:
$ source venv/bin/activate
-
Some of the components used by pgAdmin require a very recent version of pip,
so update that to the latest:$ pip install --upgrade pip
-
Ensure that a PostgreSQL installation’s bin/ directory is in the path (so
pg_config can be found for building psycopg2), and install the required
packages:(venv) $ PATH=$PATH:/usr/local/pgsql/bin pip install -r $PGADMIN4_SRC/requirements.txt
If you are planning to run the regression tests, you also need to install
additional requirements from web/regression/requirements.txt:(venv) $ pip install -r $PGADMIN4_SRC/web/regression/requirements.txt
-
Create a local configuration file for pgAdmin. Edit
$PGADMIN4_SRC/web/config_local.py and add any desired configuration options
(use the config.py file as a reference — any settings duplicated in
config_local.py will override those in config.py). A typical development
configuration may look like:from config import * # Debug mode DEBUG = True # App mode SERVER_MODE = True # Enable the test module MODULE_BLACKLIST.remove('test') # Log CONSOLE_LOG_LEVEL = DEBUG FILE_LOG_LEVEL = DEBUG DEFAULT_SERVER = '127.0.0.1' UPGRADE_CHECK_ENABLED = True # Use a different config DB for each server mode. if SERVER_MODE == False: SQLITE_PATH = os.path.join( DATA_DIR, 'pgadmin4-desktop.db' ) else: SQLITE_PATH = os.path.join( DATA_DIR, 'pgadmin4-server.db' )
This configuration allows easy switching between server and desktop modes
for testing. -
The initial setup of the configuration database is interactive in server
mode, and non-interactive in desktop mode. You can run it either by
running:(venv) $ python3 $PGADMIN4_SRC/web/setup.py
or by starting pgAdmin 4:
(venv) $ python3 $PGADMIN4_SRC/web/pgAdmin4.py
Whilst it is possible to automatically run setup in desktop mode by running
the runtime, that will not work in server mode as the runtime doesn’t allow
command line interaction with the setup program.
At this point you will be able to run pgAdmin 4 from the command line in either
server or desktop mode, and access it from a web browser using the URL shown in
the terminal once pgAdmin has started up.
Setup of an environment on Windows is somewhat more complicated unfortunately,
please see pkg/win32/README.txt for complete details.
Building the Web Assets
pgAdmin is dependent on a number of third party Javascript libraries. These,
along with it’s own Javascript code, SCSS/CSS code and images must be
compiled into a «bundle» which is transferred to the browser for execution
and rendering. This is far more efficient than simply requesting each
asset as it’s needed by the client.
To create the bundle, you will need the ‘yarn’ package management tool to be
installed. Then, you can run the following commands on a *nix system to
download the required packages and build the bundle:
(venv) $ cd $PGADMIN4_SRC (venv) $ make install-node (venv) $ make bundle
On Windows systems (where «make» is not available), the following commands
can be used:
C:> cd $PGADMIN4_SRCweb
C:$PGADMIN4_SRCweb> yarn install
C:$PGADMIN4_SRCweb> yarn run bundle
Creating pgAdmin themes
To create a pgAdmin theme, you need to create a directory under
web/pgadmin/static/scss/resources.
Copy the sample file _theme.variables.scss.sample to the new directory and
rename it to _theme.variables.scss. Change the desired hexadecimal values of
the colors and bundle pgAdmin. You can also add a preview image in the theme
directory with the name as <dir name>_preview.png. It is recommended that the
preview image should not be larger in size as it may take time to load on slow
networks. Run the yarn run bundle and you’re good to go. No other changes are
required, pgAdmin bundle will read the directory and create other required
entries to make them available in preferences.
The name of the theme is derived from the directory name. Underscores (_) and
hyphens (-) will be replaced with spaces and the result will be camel cased.
Building the documentation
In order to build the docs, an additional Python package is required in the
virtual environment. This can be installed with the pip package manager:
$ source venv/bin/activate
(venv) $ pip install Sphinx
(venv) $ pip install sphinxcontrib-youtube
The docs can then be built using the Makefile in $PGADMIN4_SRC, e.g.
The output can be found in $PGADMIN4_SRC/docs/en_US/_build/html/index.html
Building packages
Most packages can be built using the Makefile in $PGADMIN4_SRC, provided all
the setup and configuration above has been completed.
To build a source tarball:
To build a PIP Wheel, activate either a Python 3 virtual environment, configured
with all the required packages, and then run:
To build the macOS AppBundle, please see pkg/mac/README.
To build the Windows installer, please see pkg/win32/README.txt.
Create Database Migrations
In order to make changes to the SQLite DB, navigate to the ‘web’ directory:
(venv) $ cd $PGADMIN4_SRC/web
Create a migration file with the following command:
(venv) $ FLASK_APP=pgAdmin4.py flask db revision
This will create a file in: $PGADMIN4_SRC/web/migrations/versions/ .
Add any changes to the ‘upgrade’ function.
Increment the SCHEMA_VERSION in $PGADMIN4_SRC/web/pgadmin/model/init.py file.
There is no need to increment the SETTINGS_SCHEMA_VERSION.
Support
See https://www.pgadmin.org/support/ for support options.
Security Issues
If you would like to report a security issue with pgAdmin, please email
security (at) pgadmin (dot) org.
Note that this address should only be used for reporting security issues
that you believe you’ve found in the design or code of pgAdmin, pgAgent,
and the pgAdmin website. It should not be used to ask security questions.
Project info
A GitHub project for pgAdmin 4 can be found at the address below:
https://github.com/pgadmin-org/pgadmin4
Please submit any changes as Pull Requests against the master branch of the
pgadmin-org/pgadmin4 repository.
If you wish to discuss pgAdmin 4, or contribute to the project, please use the
pgAdmin Hackers mailing list:
pgadmin-hackers@postgresql.org
Pgadmin — это бесплатное и мощное средство администрирования баз данных PostgreSQL. Установка и настройка данного инструмента на Windows Server 2008 может быть сложной задачей для некоторых пользователей. В этой статье мы рассмотрим подробное руководство по установке и настройке Pgadmin на Windows Server 2008.
Прежде чем приступить к установке Pgadmin, убедитесь, что ваш сервер удовлетворяет системным требованиям программного обеспечения. Они включают в себя наличие операционной системы Windows Server 2008 или Windows Server 2008 R2, установленного PostgreSQL и доступ к интернету.
Первым шагом является загрузка установочного файла Pgadmin с официального сайта. Рекомендуется скачивать последнюю версию программного обеспечения, так как она включает в себя последние исправления ошибок и улучшения. После загрузки выполните установку Pgadmin, следуя инструкциям на экране.
Примечание: при установке Pgadmin выберите компоненты, которые вы хотите установить, и установите необходимые параметры (например, путь установки).
После установки Pgadmin вам необходимо выполнить его первоначальную настройку. Запустите Pgadmin и введите данные для подключения к вашей базе данных PostgreSQL, такие как имя пользователя, пароль и хост. Затем нажмите кнопку «Соединиться» и дождитесь успешного подключения к базе данных.
Содержание
- Установка и настройка Pgadmin на Windows Server 2008
- Шаг 1: Подготовка к установке
- Шаг 2: Загрузка и установка Pgadmin
Установка и настройка Pgadmin на Windows Server 2008
Процесс установки и настройки Pgadmin на Windows Server 2008 несложен и состоит из нескольких шагов.
Шаг 1: Скачайте установочный файл Pgadmin с официального сайта разработчика. Обратите внимание на версию ПО и совместимость с вашей операционной системой.
Шаг 2: Запустите установочный файл и следуйте инструкциям мастера установки. Укажите путь для установки Pgadmin.
Шаг 3: После завершения установки, запустите Pgadmin. Вам будет предложено создать новое подключение к базе данных.
Шаг 4: Введите необходимую информацию о подключении: имя сервера, порт, имя пользователя и пароль. Нажмите кнопку «Подключиться».
Шаг 5: После успешного подключения, вы увидите структуру базы данных на слева в окне Pgadmin. Можете начать работать с вашей базой данных.
Шаг 6: В настройках Pgadmin вы можете настроить различные параметры, такие как кодировка, формат отображения данных, язык интерфейса и другие параметры.
Поздравляю, вы успешно установили и настроили Pgadmin на Windows Server 2008! Теперь вы можете удобно управлять вашей базой данных PostgreSQL.
Шаг 1: Подготовка к установке
Перед тем, как приступить к установке Pgadmin на Windows Server 2008, необходимо выполнить некоторые подготовительные шаги.
1. Убедитесь, что ваш сервер соответствует системным требованиям Pgadmin. Проверьте, что операционная система Windows Server 2008 установлена и активирована.
2. Убедитесь, что у вас есть права администратора на сервере. Для установки и настройки Pgadmin требуются права администратора.
3. Проверьте наличие актуальной версии .NET Framework на вашем сервере. Pgadmin требуется .NET Framework для работы. Если у вас нет актуальной версии .NET Framework, загрузите и установите ее с официального сайта Microsoft.
4. Загрузите инсталляционный файл Pgadmin на ваш сервер. Вы можете загрузить его с официальной веб-страницы Pgadmin.
5. Создайте резервную копию данных, необходимых для Pgadmin. Важно создать резервную копию данных на случай возникновения проблем в процессе установки и настройки.
6. Перед началом установки, закройте все запущенные приложения на сервере. Установка может требовать перезагрузки сервера, и открытые приложения могут мешать этому процессу.
После выполнения этих подготовительных шагов вы будете готовы к установке Pgadmin на Windows Server 2008.
Шаг 2: Загрузка и установка Pgadmin
1. Откройте веб-браузер и перейдите на официальный сайт Pgadmin.
2. На главной странице сайта найдите раздел «Скачать» или «Download» и нажмите на него.
3. В появившемся меню выберите версию Pgadmin, соответствующую вашей операционной системе (Windows).
4. Для загрузки Pgadmin нажмите на ссылку скачивания.
5. После завершения загрузки откройте установочный файл Pgadmin (обычно это файл с расширением .exe).
6. Установщик Pgadmin предложит выбрать язык установки — выберите язык, на котором вы хотите продолжить процесс установки.
7. Прочитайте и принимайте условия лицензии, нажав на соответствующую опцию. Затем нажмите «Далее» или «Next», чтобы продолжить.
8. Выберите путь для установки Pgadmin или оставьте значение по умолчанию. Затем нажмите «Далее» или «Next».
9. Выберите компоненты, которые вы хотите установить. Обычно выбор основных компонентов уже отмечен по умолчанию, поэтому, если вы не уверены, оставьте значения по умолчанию. Нажмите «Далее» или «Next».
10. Настройте дополнительные параметры установки, если это необходимо. Затем нажмите «Далее» или «Next».
11. Дождитесь завершения установки предлагаемых компонентов и нажмите «Завершить» или «Finish».
Теперь Pgadmin успешно установлен на вашем сервере Windows 2008. Продолжите чтение следующего раздела для настройки Pgadmin и подключения к серверу баз данных PostgreSQL.
Содержание
- pgadmin4: не удалось связаться с сервером приложений postgresql.
- 26 ответов
- Ошибка при запуске pgadmin the pgadmin 4 server could not be contacted, что делать?
- The pgAdmin 4 server could not be contacted: Fatal error
- 1 Answer 1
- pgadmin4: не удалось связаться с сервером приложений postgresql.
- The pgAdmin 4 server could not be contacted
- 1 Answer 1
pgadmin4: не удалось связаться с сервером приложений postgresql.
26 ответов
Я нашел ту же проблему при обновлении до pgAdmin 4 (v1.6). На Windows я обнаружил, что очистка C:Users%USERNAME%AppDataRoamingpgAdmin folder исправил проблему для меня. Я считаю, что он пытался использовать сеансы из предыдущей версии и терпел неудачу. Я знаю, что вопрос был отмечен как ответ, но понижение может быть не всегда вариантом.
Примечание: AppDataRoamingpgAdmin-скрытая папка.
У нас та же проблема. так что никаких изменений в файл. но запустите pgAdmin 4 с помощью администратора.
следующий шаг. 1. щелкните правой кнопкой мыши значок pgAdmin 4 2. выберите «Запуск от имени администратора»
то, что наконец сработало, было понижением до pgadminIII-v. 1.22:
Если вы используете Mac OS X, вот исправление: Откройте терминал и запустите эту команду
и для других ОС просто перезагрузите сервер Postgresql, он решит
затем запустите pgAdmin4, он начнется как обычно
Share или комментарий, если сохранен кто-то
У меня была такая же проблема в windows. У меня был v1.6 установлен, а также v2.0. Удаление v1.6 разрешил мне войти в систему.
У меня была такая же проблема в Windows 10, с новой установкой PostgreSQL 10.
Я решил это, включив путь C:PostgreSQL10bin (<ваш путь к postgresql>bin) для системных переменных среды.
для доступа к переменным среды: Панель управления > Система и безопасность > Система или щелкните правой кнопкой мыши на ПК, затем > предварительные настройки системы > переменные среды > системные переменные > путь > изменить.
У меня была та же проблема, но запуск ее в качестве администратора работал.
затем я запускаю pgAdmin4, и он работает.
Если ни один из методов не помогает проверить пути системы и пользовательских сред и переменные PYTHONPATH.
Я получал эту ошибку из-за того, что моя переменная PATH указывала на другую установку Python (которая происходит из ArcGIS Desktop).
после удаления пути к моей установке Python из переменной PATH и полного удаления переменной PYTHONPATH, я получил его работу!
имейте в виду, что python команда будет недоступна из командной строки, Если вы удалите его из пути.
У меня была эта проблема с pgadmin4 v2.1 на Linux fedora 27
решено путем установки отсутствующей зависимости: python3-фляга-babelex
однако при других обстоятельствах вы можете попробовать запустить приложение pgAdmin 4 в качестве администратора. Это должно исправить ошибку.
загружено pgadmin 4 v2.0 и установите его без проблем atm при установке force. попробовать его. для меня это было решением.
Мне нужно добавить это сюда, потому что у меня было несколько проблем с этим сообщением. Если вы недавно обновились до High Sierra, вы найдете последнюю версию (pgadmin 4.20), которая будет отображаться с сообщением «не удалось связаться с сервером приложений». На самом деле это означает, что python не смог настроить вашу среду в
в этом каталоге хранятся все вещи, которые вы устанавливаете и настраиваете, и даже журналы того, что было запущено при использовании копии пользователя pgAdmin попробуйте.
способ исправить эту проблему на High Sierra сводится к sqlite3. Если вы посмотрите в этом каталоге, вы увидите, что все хранится в файлах sqlite3.
когда была выпущена версия 4.20 pgadmin, она была отправлена с версией позже sqlite3.19 и проблема возникает потому, что High Sierra поставляется с sqlite3.19, поэтому, чтобы устранить эту проблему, вам нужно заменить старую версию sqlite3 на последнюю на вашем упаковщике.
теперь имейте в виду, MacosX+ все использовать sqlite для хранения сведений о большинстве приложений на вашем mac, так что вам нужно будет убедиться, что вы не просто стереть старую версию, но вы должны будете иметь обе версии сосуществуют вместе в гармонии, чтобы избежать чего-либо крупного происходит на вашем mac.
2) Обновление заваривать и обновить заваривать, чтобы убедиться, что это до современных
3) brew install sqlite3
4) mv / usr / bin / sqlite3 / usr/bin / sqlite3.os
5) в /usr/местные/погреб/SQLite в/3.21.0/Бен/и sqlite3 /usr/Бен/и sqlite3
6) / usr / bin/sqlite3-версия (проверить версию позже 3.19)
теперь вы можете открыть pgadmin как обычно
Если вы используете более старую версию postgresql, например 9.x и его службы запущены, PgAdmin 4 запутался, какой сервер является базой данных.
Так остановить службу старая версия или новая.Запустите PgAdmin 4 как администратор
Это сработало для меня
для моего случая в Windows 10 для версии postgresql 10 он работал путем изменения SERVER_MODE до False на config_distro.py помещенный в папку паутины, согласно этим установкам конфигурации:https://www.pgadmin.org/docs/pgadmin4/dev/desktop_deployment.html.
есть другие настройки, упомянутые в этом ответе (https://superuser.com/a/1131964) относительно python, но я только что изменил SERVER_MODE и это сработало.
Убейте его в Диспетчере задач Windows, а затем повторите попытку. Кажется, что есть какая-то проблема при доступе к серверу из различных приложений.
Это сработало для меня после установки python2.7 для pgAdmin 4 v2
Источник
Ошибка при запуске pgadmin the pgadmin 4 server could not be contacted, что делать?
Средний 1 комментарий
ShadowRial, при чём тут имя пользователя? Команда hostname возвращает имя компьютера, которое в соответствии со стандартом не может содержать кириллических символов
Hostnames are composed of series of labels concatenated with dots, as are all domain names. For example, «en.wikipedia.org» is a hostname. Each label must be between 1 and 63 characters long, and the entire hostname (including the delimiting dots but not a trailing dot) has a maximum of 253 ASCII characters.
The Internet standards for protocols mandate that component hostname labels may contain only the ASCII letters ‘a’ through ‘z’ (in a case-insensitive manner), the digits ‘0’ through ‘9’, and the hyphen (‘-‘). The original specification of hostnames in RFC 952, mandated that labels could not start with a digit or with a hyphen, and must not end with a hyphen. However, a subsequent specification (RFC 1123) permitted hostname labels to start with digits. No other symbols, punctuation characters, or white space are permitted.
Источник
I upgrade PostgreSQL from 13.3 to 13.4 and got a fatal error by pgAdmin 4. I found other similar question that try to fix the problem deleting the folder: «C:UsersmyusernameAppDataRoamingpgadminsessions» and running pgAdmin as admin but nothing happen. Also i completely remove postgres and reinstall it, and i installed pgAdmin with his separate installation, but nothing happen again. This is the error:
I don’t understand why a DNS Problem is raised, anyone has suggestion or fix? Thanks.
1 Answer 1
This is something that seem to have changed between pgAdmin4 5.1 and 5.7. I’ve seen this on a machine that had been connected to a WiFi mobile hotspot (but it could happen in other circumstances).
It has something to do with the way the dns library is used on Windows, so this could happen to other applications that use it in the same way.
Essentially, dns.Resolver scans the Windows registry for all network interfaces found under HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces
This occurred even when the WiFi network was turned off: those were the last settings that had been in use and dns.Resolver didn’t check whether the interface was enabled.
The latest version of pgAdmin seems to be an older version of dnspython (1.16.0), so I’m not sure whether this has been fixed in more recent versions. For now, there seems to be two options:
Delete or change the DhcpDomain subkey if you find it in on of the subkeys of HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces (there might even be a way to force that value through the Control Panel).
Connect to a different network that doesn’t set this value.
Источник
pgadmin4: не удалось связаться с сервером приложений postgresql.
Я установил PostgreSQL 9.6.2 на свою Windows 8.1. Но pgadmin4 не может связаться с локальным сервером. Я попробовал несколько решений, предложенных здесь в stackoverflow, попытался удалить и переустановить PostgreSQL 9.6.2, попытался изменить config.py, config_distro.py и удалить файлы в папке Roaming, я попробовал автономную установку pgadmin4, но безуспешно. Однако на моем локальном компьютере я могу получить доступ к серверу с помощью psql.exe и войти в систему как суперпользователь (пользователь postgres). Не могли бы вы предложить какие-либо возможные решения для запуска / запуска pgadmin4? Спасибо.
Я обнаружил ту же проблему при обновлении до pgAdmin 4 (v1.6). В Windows я обнаружил, что очистка C:Users%USERNAME%AppDataRoamingpgAdmin папки устранила проблему для меня. Я считаю, что он пытался использовать сеансы из предыдущей версии и терпел неудачу. Я знаю, что вопрос был отмечен как отвеченный, но переход на более раннюю версию не всегда возможен.
У нас такая же проблема. так что никаких изменений в файле. но запустите pgAdmin 4 с правами администратора.
Следующий шаг. 1. щелкните правой кнопкой мыши значок pgAdmin 4 2. выберите «Запуск от имени администратора»
У меня была такая же проблема в Windows 10 с новой установкой PostgreSQL 10.
Я решил это, включив путь C: PostgreSQL 10 bin ( <ваш путь к postgresql> bin) в системные переменные среды.
Чтобы получить доступ к переменным среды: Панель управления> Система и безопасность> Система или щелкните правой кнопкой мыши ПК, затем> Дополнительные системные настройки> Переменные среды> Системные переменные> Путь> Изменить.
Что наконец сработало, так это понижение до pgadminIII-v.1.22 :
если вы используете Mac OS X, вот исправление: откройте терминал и запустите эту команду
а для других ОС просто перезапустите сервер Postgresql, он решит
Затем запустите pgAdmin4, он запустится как обычно
Поделитесь или прокомментируйте, если кого-то спасли
Я занимаюсь этим некоторое время (разочарование). Настолько много, что на моем рабочем столе есть инструкции, объединяющие все эти идеи. Вот моя волшебная комбинация решения:
Вам не нужно делать это каждый раз, но когда он выходит из строя, попробуйте эти шаги.
У меня была такая же проблема с окнами. У меня была установлена v1.6, а также v2.0. Удаление v1.6 позволило мне войти в систему.
У меня была та же проблема, но запуск от имени администратора работал.
У C:Users%USERNAME%AppDataRoamingpgAdmin меня сработало удаление содержимого каталога!
Вы недавно установили новую версию pgAdmin?
Эта проблема (и вводящее в заблуждение сообщение) просто связана с тем, что старые версии pgAdmin не могут прочитать настройки, сохраненные более новой версией pgAdmin!
Убедитесь, что вы запускаете правильную версию pgAdmin (скорее всего, ваши ярлыки указывают на старую версию!) И / или удалите старую версию: мастер обновления не сделает этого за вас!
Я считаю, что эта проблема возникла на моем компьютере, потому что у меня есть несколько других служб, использующих веб-порты, такие как qBittorrent, IDEJetbrains и т. Д.
Чтобы настроить его, щелкните правой кнопкой мыши логотип pgAdmin рядом с часами.
Если вы используете более старую версию postgresql, например 9.x, и ее службы работают, PgAdmin 4 запутает, какой сервер является базовой базой данных.
Поэтому остановите старую версию сервиса или новую. Запустите PgAdmin 4 от имени администратора.
Это сработало для меня
Затем я запускаю pgAdmin4, и он работает.
У меня была эта проблема с pgadmin4 v2.1 на linux fedora 27
Решено установкой отсутствующей зависимости: python3-flask-babelex
C: Users % USERNAME% AppData Roaming pgAdmin
Если ни один из методов не помогает, попробуйте проверить переменные PATH и PYTHONPATH вашей системы и пользовательской среды.
Я получал эту ошибку из-за того, что моя переменная PATH указывала на другую установку Python (которая поступает из ArcGIS Desktop).
После удаления пути к моей установке Python из переменной PATH и полного удаления переменной PYTHONPATH у меня все заработало!
Имейте в виду, что команда python не будет доступна из командной строки, если вы удалите ее из PATH.
Просто щелкните значок pgadmin 4 и запустите его от имени администратора. Разрешите права доступа. Это начнется локально.
Однако при других обстоятельствах вы можете попробовать запустить приложение pgAdmin 4 от имени администратора. Это должно исправить ошибку.
скачал pgadmin 4 v2.0 и без проблем установил атм при принудительной установке. попытайся. это было решением для меня.
Мне нужно добавить это сюда, потому что у меня было несколько проблем с этим сообщением. Если вы недавно обновились до High Sierra, вы обнаружите, что последняя версия (pgadmin 4.20) будет продолжать появляться с сообщением «Не удалось связаться с сервером приложений». На самом деле на Mac это означает, что python не смог настроить вашу среду в
В этом каталоге хранятся все, что вы устанавливаете и настраиваете, и даже журналы того, что было запущено при использовании вашей пользовательской копии pgadmin.
Когда была выпущена версия 4.20 pgadmin, она поставлялась с версией более поздней, чем sqlite3.19, и проблема возникает из-за того, что High Sierra поставляется с sqlite3.19, поэтому для устранения этой проблемы вам необходимо заменить старую версию sqlite3 последней. на вашем упаковщике.
Теперь имейте в виду, что все MacosX + используют sqlite для хранения сведений о большинстве приложений на вашем Mac, поэтому вам нужно убедиться, что вы не просто стираете старую версию, но и обе версии должны сосуществовать вместе в гармония, чтобы избежать чего-либо серьезного на вашем Mac.
2) обновите варево и обновите варево, чтобы убедиться, что оно актуально
3) brew install sqlite3
4) мв / usr / bin / sqlite3 /usr/bin/sqlite3.os
Теперь вы можете перейти к открытию pgadmin как обычно
Источник
Whenever I install PostgreSQL, it stops working after about 6 months. This is the second time this happened! Last time this happened, I uninstalled and then installed version 4.29. How can I debug the PostgreSQL client or server and get a stack trace?
Splash screen opens and never closes unless I click on it.
I can’t show more of the top section of the log because the error dialog pops up. When closing the error, the system tray icon for PostgreSQL crashes and closes everything.
After further troubleshooting, I found 8 «PostgreSQL Server» tasks, 1 pg_ctl task, 1 pgAdmin 4 Desktop Runtime in the Task Manager. Killed them all and restarted this and restarted the service in Admin Tools > Services. Same behavior.
1 Answer 1
Found these. We’ll give it a shot.
Open Environment Variables (WINDOWS key + BREAK) Set environment variable «_NT_SYMBOL_PATH» for 4.2.
Got a new popup I’ve never seen before from Visual Studio!
Created new virtual environment based on Python 3.8.
Created a new Visual Studio Project using Python, not C++. I might need a newer version of Python based on this fix.
Since this new version does not show in the Base Interpreter, I created a new environment based on the zip file.
None of that worked. Then I stumbled upon the registry configuration for pgAdmin. I read that pgAdmin uses Python version 2.7. And the PythonPath variable was blank, so I set it to C:PythonPython27. So it must be using a value from somewhere else to get the path. It’s looking in sys.path in Python whatever that is.
Then I set ApplicationPath to C:Program FilespgAdmin 4v4web, to the folder where pgadmin4.py is located.
Here is the icon I’m clicking on each time. «C:Program FilespgAdmin 4v4runtimepgAdmin4.exe» «C:Program FilesPostgreSQL12pgAdmin 4binpgAdmin4.exe»
There are two pgAdmin folders. There are traces left over from the other pgAdmin uninstall.
FINALLY SOLVED IT! Flask within the Qt framework is NOT getting the port! I put some troubleshooting code into the source code.
C:Program FilespgAdmin 4v4webpgAdmin4.py
Источник