Как запустить pgadmin 4 в браузере

Обновлено: 06.07.2024

pgAdmin — это платформа с открытым исходным кодом для администрирования и разработки для PostgreSQL и связанных с ней систем управления базами данных. Платформа написана на Python и jQuery и поддерживает все функции PostgreSQL. Вы можете использовать pgAdmin для любых операций, начиная с записи базовых SQL-запросов и заканчивая осуществлением мониторинга ваших баз данных и настройки продвинутых архитектур баз данных.

В этом руководстве мы обсудим процесс установки и настройки последней версии pgAdmin на сервере Ubuntu 18.04, получим доступ к pgAdmin через браузер и подключим платформу к базе данных PostgreSQL на вашем сервере.

Предварительные требования

Для данного курса обучения вам потребуется следующее:

  • Сервер на Ubuntu 18.04. Этот сервер должен иметь пользователя без прав root с привилегиями sudo, а также брандмауэр с ufw . Ознакомьтесь с нашим руководством по первоначальной настройке сервера для Ubuntu 18.04 для получения дополнительных сведений.
  • Веб-сервер Apache, установленный на вашем сервере. Для настройки веб-сервера воспользуйтесь нашим руководством по установке веб-сервера Apache на Ubuntu 18.04.
  • PostgreSQL, установленная на сервере. Вы можете воспользоваться нашим руководством по установке и использованию PostgreSQL на Ubuntu 18.04 для выполнения установки. Перед выполнением инструкций данного руководства создайте новую роль и базу данных, потому что они потребуются вам при подключении pgAdmin к экземпляру PostgreSQL.
  • Python 3 и venv , установленные на сервере. Следуйте указаниям руководства Установка Python 3 и настройка среды для разработки на сервере Ubuntu 18.04, чтобы установить эти инструменты и настроить виртуальную среду.

Шаг 1 — Установка pgAdmin и необходимых зависимостей

На момент написания самой последней версией pgAdmin является pgAdmin 4, хотя самая последняя версия, доступная в репозитории Ubuntu, — это pgAdmin 3. pgAdmin 3 уже не поддерживается, и сопровождающие проект специалисты рекомендуют устанавливать pgAdmin 4. В данном руководстве мы будем рассматривать процесс установки последней версии pgAdmin 4 в виртуальной среде (согласно рекомендациям команды разработки проекта) и установки ее зависимостей с помощью apt .

Для начала обновите индекс пакетов вашего сервера, если вы не делали этого последнее время.

Затем установите следующие зависимости. Список зависимостей включает libgmp3-dev , библиотеку арифметических операций с многократно увеличенной точностью; libpq-dev с файлами заголовков и статической библиотекой, которая помогает осуществлять коммуникации с бекэндом PostgreSQL; и libapache2-mod-wsgi-py3 , модуль Apache, который позволяет вам размещать внутри Apache веб-приложения на Python:

После этого создайте несколько директорий, где pgAdmin будет хранить данные сессий, данные хранилища и журналы:

Затем измените владельца этих директорий на вашего пользователя без прав root и группу. Это необходимо, потому что первоначально они принадлежат вашему root-пользователю, но мы будем устанавливать pgAdmin из виртуальной среды, принадлежащей вашему пользователю без прав root, а процесс установки подразумевает создание ряда файлов внутри этих директорий. После завершения установки мы изменим владельца на пользователя www-data и группу, чтобы директорию можно было использовать через сеть:

Затем откройте вашу виртуальную среду. Перейдите в директорию, в которой находится ваша среда программирования, и активируйте ее. Согласно соглашениям о наименованиях из обязательного руководства Python 3, мы перейдем в директорию environments и активируем среду my_env :

Далее установите пакет wheel , базовую реализацию стандарта пакетов wheel. Будучи библиотекой Python, данный пакет служит расширением для сборки пакетов wheel и содержит инструмент для работы с командной строкой, который позволяет выполнять различные действия с файлами .whl :

Затем установите пакет pgAdmin 4 с помощью следующей команды:

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

Шаг 2 — Настройка pgAdmin 4

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

Основной файл конфигурации pgAdmin с именем config.py считывается перед любым другим файлом конфигурации. Его содержание можно использовать в качестве отправной точки для последующих настроек конфигурации, которые можно указать в других файлах конфигурации pgAdmin, но чтобы избежать непредвиденных ошибок, вы не должны редактировать файл config.py самостоятельно. Мы внесем некоторые изменения конфигурации в новый файл с именем config_local.py , который будет считываться непосредственно после основного файла.

Создайте этот файл сейчас, используя текстовый редактор. Мы будем использовать nano :

В вашем редакторе добавьте следующее содержание:

environments/my_env/lib/python3.6/site-packages/pgadmin4/config_local.py

Вот что делают эти пять директив:

  • LOG_FILE : данная директива определяет файл, в котором будут храниться журналы pgAdmin.
  • SQLITE_PATH : pgAdmin хранит данные о пользователях в базе данных SQLite, и эта директива указывает программному обеспечению PgAdmin на базу данных конфигурации. Поскольку этот файл находится в постоянной директории /var/lib/pgadmin4 , ваши пользовательские данные после обновления не будут потеряны.
  • SESSION_DB_PATH : указывает, какая директория будет использоваться для хранения данных сеанса.
  • STORAGE_DIR : определяет, где pgAdmin будет хранить другие данные, например резервные копии и сертификаты безопасности.
  • SERVER_MODE : установка значения True для этой директивы говорит о том, что pgAdmin должен запускаться в режиме сервера, а не в режиме настольного компьютера.

Обратите внимание, что каждый из этих путей файла указывает на директории, созданные на шаге 1.

После добавления этих строк сохраните и закройте файл (нажмите CTRL + X , а затем нажмите Y и ENTER ). После внесения этих изменений запустите скрипт установки pgAdmin, чтобы задать учетные данные для входа:

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

После этого необходимо деактивировать вашу виртуальную среду:

Воспользуйтесь путями файла, которые вы указали в файле config_local.py . Эти файлы хранятся в директориях, созданных на шаге 1, которые в настоящее время принадлежат вашему пользователю без прав root. Однако они должны быть доступны для пользователя и группы, которые запускают ваш веб-сервер. По умолчанию в Ubuntu 18.04 это пользователь и группа www-data, поэтому необходимо обновить разрешения для следующих директорий, чтобы предоставить www-data нужные права владения:

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

Шаг 3 — Настройка Apache

Веб-сервер Apache использует виртуальные хосты для инкапсуляции данных конфигурации и размещения сразу нескольких доменов на одном сервере. Если вы выполнили указания предварительного руководства для Apache, у вас уже может быть настроен пример виртуального хоста с именем your_domain.conf , но на этом шаге мы создадим новый хост, откуда мы сможем обслуживать веб-интерфейс pgAdmin.

Сначала убедитесь, что вы находитесь в директории root:

Затем создайте новый файл в вашей директории /sites-available/ с именем pgadmin4.conf . Это будет файл виртуального хоста вашего сервера:

Добавьте следующее содержимое в файл, заменив выделенные части в соответствии с вашей собственной конфигурацией:

Сохраните и закройте файл виртуального хоста. Затем воспользуйтесь скриптом a2dissite для отключения файла виртуального хоста по умолчанию, 000-default.conf :

Примечание: если вы выполнили требования предварительного руководства Apache, вы должны были отключить 000-default.conf и настроить пример файла конфигурации виртуального хоста (с именем your_domain.conf согласно требованиям). В этом случае вам нужно будет отключить файл виртуального хоста your_domain.conf с помощью следующей команды:

Затем воспользуйтесь скриптом a2ensite , чтобы активировать ваш файл виртуального хоста pgadmin4.conf . В результате будет создана символьная ссылка из файла виртуального хоста в директории /sites-available/ в директорию /sites-enabled/ :

После этого проверьте на правильность синтаксис вашего файла конфигурации:

После появления вывода Syntax OK перезапустите службу Apache, чтобы она смогла прочитать ваш новый файл виртуального хоста:

pgAdmin теперь полностью установлен и настроен. Теперь мы перейдем к тому, как организовать доступ к pgAdmin из браузера, прежде чем подключать его к базе данных PostgreSQL.

Шаг 4 — Доступ к pgAdmin

На вашем локальном компьютере откройте предпочитаемый браузер и откройте IP-адрес вашего сервера:

После этого вы увидите экран входа, аналогичный следующему экрану:

Экран входа pgAdmin

Введите учетные данные для входа, заданные на шаге 2, после чего вы попадете на приветственный экран pgAdmin:

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

Шаг 5 — Настройка вашего пользователя PostgreSQL

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

По умолчанию в PostgreSQL вы выполняете аутентификацию пользователей базы данных с помощью “протокола идентификации” (или ident), т. е. метода аутентификации. В рамках этого процесса PostgreSQL берет имя пользователя клиента Ubuntu и использует его в качестве разрешенного пользователя базы данных. Это позволяет обеспечить более высокий уровень безопасности во многих случаях, но также может стать причиной проблем в случаях, когда вам может потребоваться подключить внешнюю программу, например, pgAdmin, к вашей базе данных. Для устранения этой проблемы мы зададим пароль для данной роли PostgreSQL, который позволит pgAdmin подключиться к вашей базе данных.

В вашем терминале откройте командную строку PostgreSQL с помощью вашего суперпользователя:

Из командной строки PostgreSQL обновите профиль пользователя, чтобы задать более надежный пароль:

Закройте командную строку PostgreSQL:

Теперь вернитесь в интерфейс pgAdmin 4 в вашем браузере и найдите меню Browser (Браузер) с левой стороны. Нажмите правой кнопкой мыши на пункт Servers (Серверы), чтобы открыть контекстное меню, наведите курсор мыши на пункт Create (Создать) и нажмите Server… (Сервер…).

Контекстное меню создания сервера

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

На вкладке General (Общее) введите имя этого сервера. Это может быть любое имя по вашему желанию, но вы можете использовать описательное имя. В нашем примере сервер называется Sammy-server-1 .

Создание сервера — вкладка General

Затем нажмите на вкладку Connection (Подключение). В поле Host name/address (Имя хоста/адрес) введите localhost . В поле Port (Порт) необходимо задать значение 5432 по умолчанию, которое будет работать для этой настройки, поскольку это порт, используемый для PostgreSQL по умолчанию.

В поле Maintenance database (Поддержание базы данных) введите имя базы данных, к которой вы хотите подключиться. Обратите внимание, что эта база данных должна быть уже создана на вашем сервере. Затем введите имя пользователя и пароль PostgreSQL, которые вы настроили ранее в полях Username (Имя пользователя) и Password (Пароль).

Создание сервера — вкладка Connection

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

Шаг 6 — Создание таблицы в панели pgAdmin

В панели управления pgAdmin найдите меню Browser (Браузер) с левой стороны окна. Нажмите на значок плюс (+) рядом с пунктом Servers (Серверы), чтобы развернуть дерево меню внутри. Далее нажмите значок плюс слева от сервера, добавленного на предыдущем шаге (Sammy-server-1 в нашем примере), затем разверните пункт Databases (Базы данных), имя базы данных, добавленной вами (sammy в нашем примере), а затем Schemas (1) (Схемы (1)). Вы должны увидеть следующее дерево меню:

Развернутое дерево меню Browser

Нажмите правой кнопкой на пункт списка Tables (Таблицы), затем наведите курсор на пункт Create (Создать) и нажмите Table…(Таблица…).

Контекстное меню создания таблицы

В результате будет открыто окно Create-Table (Создать - Таблица). На вкладке General (Общее) этого окна введите имя таблицы. Это может быть любое имя, но чтобы не усложнять, мы назовем ее table-01.

Создание таблицы — вкладка General

Перейдите на вкладку Columns (Столбцы) и нажмите знак + в правом верхнем углу окна, чтобы добавить столбцы. При добавлении столбца вам нужно указать его Name (Имя) и Data type (Тип данных), после чего вам может потребоваться указать параметр Length (Длина), если это требуется для типа данных, который вы выбрали.

Кроме того, в официальной документации PostgreSQL указано, что добавление главного ключа в таблицу является рекомендованной практикой. Главный ключ — это препятствие, указывающее конкретный столбец или набор столбцов, которые можно использовать в качестве специального идентификатора для строк в таблице. Это не обязательное требование, но если вы хотите задать один или несколько столбцов в качестве главного ключа, переведите переключатель с правого края из положения No (Нет) в положение Yes (Да).

Создание таблицы — вкладка столбцов с включенным главным ключом

К этому моменту вы создали таблицу и добавили несколько столбцов. Однако столбцы не содержат данных. Для добавления данных в вашу новую таблицу нажмите правой кнопкой мыши на имя таблицы в меню Browser (Браузер), наведите курсор на пункт Scripts (Скрипты) и нажмите INSERT Script (ВСТАВИТЬ скрипт).

Контекстное меню INSERT Script

В результате будет открыта новая панель на панели управления. В самом верху вы увидите частично выполненная конструкция INSERT (ВСТАВКА) с соответствующими названиями таблицы и столбцов. Теперь необходимо заменить знаки вопроса (?) на любые данные, убедившись, что данные, которые вы добавляете, соответствуют типам данных, которые вы выбрали для каждого столбца. Обратите внимание, что вы можете добавить несколько строк данных, помещая каждую строку внутри набора скобок и разделяя скобки запятыми, как показано в следующем примере.

При желании вы можете заменить частично выполненный скрипт INSERT на следующий пример конструкции INSERT :

Пример конструкции INSERT

Нажмите значок молнии (⚡) для запуска выполнения конструкции INSERT . Чтобы просмотреть таблицу и все данные внутри ее, снова нажмите правой кнопкой мыши на имени таблицы в меню Browser (Браузер), наведите курсор на View/Edit Data (Просмотр/редактирование данных) и выберите All Rows​​​ (Все ряды).

Контекстное меню просмотра/редактирования данных, все ряды

В результате будет открыта новая панель, ниже которой, на вкладке Data Output (Вывод данных) нижней панели вы можете просмотреть все данные, хранящиеся в таблице.

Просмотр данных - пример вывода данных

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

Заключение

В этом руководстве вы научились устанавливать pgAdmin 4 из виртуальной среды Python, настраивать эту платформу, выполнять подключение к веб-серверу Apache и узнали, как подключить ее к базе данных PostgreSQL. Кроме того, в этом руководстве описан один метод, который можно использовать для создания и заполнения таблицы, но pgAdmin можно использовать далеко не только для создания и редактирования таблиц.

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

В новых версиях Chrome можно запускать pgAdmin 4 как «родное» настольное приложение. Во время работы веб-сервера pgAdmin v4 щелкните правой кнопкой мыши значок в системном трее Windows и выберите Настроить . . В поле ввода Команда браузера добавьте следующее:

"C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" --app =% URL%

Обратите внимание, что если у вас установлен Google Chrome в другом месте, вам необходимо соответствующим образом обновить приведенный выше ярлык chrome.exe.

 введите описание изображения здесь

Теперь, когда вы запускаете pgAdmin 4, у него есть собственное окно, к которому вы можете прикрепить панель задач /вкладку и так далее. Как и раньше.

В примечаниях к выпуску говорится, что теперь он использует браузер для исправления ошибок в QtWebKit /QtWebEngine:

Среда рабочего стола теперь работает как приложение в системном трее и использует браузер в системе для отображения pgAdmin. Это устраняет многочисленные ошибки и проблемы, вызванные QtWebKit /QtWebEngine.

Как упомянул @Andrej, настройка опции pgAdmin 4 Browser Command в pgAdmin 4 дает вам больше контроля над тем, как он открывается, а некоторые браузеры допускают аргументы командной строки, которые могут разделять профили, данные и значки док-станции. Несколько примеров:

Chrome имеет параметр --profile-directory , в котором будет использоваться определенный «человек» или профиль в Chrome. Если вы хотите, чтобы Chrome отображался в доке только один раз и переключал профиль /пользователя в Chrome, щелкая значок профиля или изменяя профиль /пользователя в доке, вы можете просто использовать это.

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

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

Если вы действительно хотите, чтобы pgAdmin работал в доке, более похожем на обычное приложение для настольного компьютера, вместо того, чтобы использовать его, вы можете найти приложение-обертка для рабочего стола и попробуйте один из них (например, Applicationize, Fluid и т. Д.).


Данная статья относится к циклу статей, посвященных PostgreSQL. В предыдущей статье мы узнали о том, как установить PostgreSQL для изучения и практики в вашей локальной системе. Теперь мы покажем вам, как подключиться к серверу баз данных PostgreSQL.

После того как вы установили сервер базы данных PostgreSQL, установщик также установил некоторые полезные инструменты для работы с сервером баз данных PostgreSQL. Вы можете подключиться к серверу с помощью терминальной программы psql или инструмента pgAdmin.

psql — это интерактивная терминальная программа, предоставляемая PostgreSQL. Она позволяет вам взаимодействовать с сервером баз данных PostgreSQL, например, выполнять операторы SQL и управлять объектами баз данных.

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

Во-первых, запустите программу psql и подключитесь к PostgreSQL Database Server с помощью пользователя postgres, нажав на иконку psql, как показано ниже:


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


В-третьих, попробуйте повзаимодействовать с сервером баз данных PostgreSQL при помощи операторов SQL. Для этого вы можете воспользоваться следующим оператором:


Пожалуйста, не забудьте завершить команду точкой с запятой (;). После нажатия Enter, psql вернёт текущую версию PostgreSQL, установленную в вашей системе.

Вторым способом подключения к базе данных является использование приложения pgAdmin, благодаря которому вы можете взаимодействовать с сервером баз данных PostgreSQL через интуитивно понятный пользовательский интерфейс.

Далее мы покажем, как подключиться к базе данных, используя приложение с графическим интерфейсом pgAdmin.

Во-первых, запустите приложение pgAdmin.


Приложение pgAdmin 4 будет запущено в веб-браузере, как показано на картинке ниже:


Во-вторых, для создания сервера, щёлкните правой кнопкой мыши по узлу Servers и выберите меню Create > Server…


В-третьих, введите имя сервера, например, PostgreSQL и нажмите на вкладку Connection:


В-четвёртых, введите имя хоста и пароль для пользователя postgres, после чего щёлкните по кнопке Save:


В-пятых, щёлкните по узлу Servers, чтобы открыть иерархию сервера. Изначально, PostgreSQL содержит базу данных, которая называется postgres, как показано ниже:


В-шестых, откройте инструмент запросов, выбрав пункт меню Tool > Query Tool или нажав на иконку молнии.


В-седьмых, введите запрос в Query Editor, затем нажмите на кнопку Execute, после чего вы увидите результат запроса, отображающийся во вкладке DataOutput:


Любое приложение, поддерживающее ODBC или JDBC, может подключиться к серверу баз данных PostgreSQL. К тому же, если вы разрабатываете приложение, которое использует соответствующий драйвер, оно также сможет подключиться к серверу баз данных PostgreSQL.

Замечательно! Вы научились подключаться к серверу баз данных PostgreSQL, используя различные клиентские инструменты, такие как psql и pgADMIN. Следующим шагом мы ознакомимся с примером базы данных PostgreSQL, которую вы сможете использовать для изучения и практики.

С новой версии Chrome можно запустить pgAdmin попробуйте 4 как "родной" в настольных приложениях. В то время как веб-pgAdmin попробуйте В4 сервер запущен, щелкните правой кнопкой мыши на значок в системной области панели задач Windows и выберите Настройка. В команда браузера вход добавить следующее:

"Мои файлы C:\Program (для x86)\Гугл\Хром\приложения\хром.ехе на" --Приложение=%URL-адрес%

Обратите внимание, что если у вас есть Google Chrome установлен в другом месте, вам нужно будет обновить chrome.exe ярлык выше соответственно.

Введите описание изображения здесь

Теперь при запуске pgAdmin попробуйте 4 имеет собственное окно, которое можно закрепить на вкладку Панель задач и так далее. Как и раньше.

Заметки о выпуске говорят, он теперь использует браузер для исправления ошибок в QtWebKit/QtWebEngine:

среды рабочего стола теперь работает как приложение в системном лотке и использует браузер в системе для отображения pgAdmin попробуйте. Это устраняет множество ошибок и проблем, вызванных QtWebKit/QtWebEngine.

Как @Андрей упомянул, настройка параметра командной pgAdmin попробуйте 4 браузер pgAdmin попробуйте 4 дает вам больше контроля над тем, как он будет открыт, и некоторые браузеры позволяют аргументов командной строки, которые могут держать профилей, сведения и док иконки отдельно. Некоторые примеры:

В Chrome `--профиль-каталога опция будет использовать конкретный "в лицо" или профиль в Chrome. Если вы хотите Chrome показывает только один раз в доке и переключения профилей/чел в Chrome, нажав на значок профилей или изменять профиль/человек на скамье подсудимых, тогда вы могли бы просто использовать это.

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

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

Читайте также: