Как подключиться к postgresql в windows

Обновлено: 07.07.2024

Запуск программы интерактивного терминала PostgreSQL, называемой psql, которая позволяет в интерактивном режиме вводить, редактировать и выполнять команды SQL. Во время установки postgres в вашей операционной системе он создает «начальную БД» и запускает домен сервера postgres. Обычно initdb создает таблицу с именем «postgres», принадлежащую пользователю «текущий пользователь, вошедший в систему»

В командной строке вашей операционной системы введите следующую команду.

Системы на основе Debian, такие как Ubuntu:
Подключиться / войти как root -

Системы на основе Redhat, такие как Centos / Fedora:
Подключиться / войти как root -

Windows:
В Windows текущий пользователь не имеет значения

Получив доступ к базе данных PostgreSQL, вы можете запускать SQL-запросы и многое другое. Вот некоторые распространенные команды PSQL

  • Чтобы просмотреть справку по командам psql , введите / ?.
  • Чтобы просмотреть справку по командам SQL, введите / h.
  • Чтобы просмотреть информацию о текущем соединении с базой данных, введите / conninfo.
  • Чтобы составить список таблиц базы данных и их соответствующих владельцев, введите / dt.
  • Чтобы получить список всех таблиц, представлений и последовательностей в базе данных, введите / z.
  • Чтобы выйти из программы psql , введите / q.

psql - это основанный на терминале интерфейс PostgreSQL. Это позволяет вводить запросы в интерактивном режиме, отправлять их в PostgreSQL и просматривать результаты запроса.

вариант Описание
-a
--echo-все
Выведите все непустые строки ввода на стандартный вывод, когда они прочитаны. Это эквивалентно установке переменной ECHO для всех.

--no-Align
Переключение в режим невыровненного выхода.
-c команда
--command = команда
Указывает, что psql должен выполнить одну командную строку, команду и затем выйти. Это полезно в сценариях оболочки. Файлы запуска (psqlrc и

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

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

«PostgreSQL

При нажатии на pgAdmin III появится следующий экран:

«PostgreSQL

Теперь дважды щелкните PostgreSQL 9.4 в разделе «Группы серверов». pgAdmin попросит вас ввести пароль. Вы должны предоставить пароль для пользователя postgres для аутентификации.

«PostgreSQL-pgadminIII

В разделе «База данных» на этом разделе сервера найдите нужную базу данных и выполните запросы SQL:

date

25.10.2019

directory

Windows 10, Windows Server 2016, Вопросы и ответы

comments

Один комментарий

Установка PostgreSQL 11 в Windows 10

где скачать PostgreSQL 11 для windows 10 x64

В процессе установки установите галочки на пунктах:

  • PostgreSQL Server – сам сервер СУБД
  • PgAdmin 4 – визуальный редактор SQL
  • Stack Builder – дополнительные инструменты для разработки (возможно вам они понадобятся в будущем)
  • Command Line Tools – инструменты командной строки

установка PostgreSQL 11 и дополнительных компонентов

Установите пароль для пользователя postgres (он создается по умолчанию и имеет права суперпользователя).

PostgreSQL - задать пароль пользователю postgres

По умолчание СУБД слушает на порту 5432, который нужно будет добавить в исключения в правилах фаерволла.

5432 - порт PostgreSQL по-умолчанию

Нажимаете Далее, Далее, на этом установка PostgreSQL завершена.

Доступ к PostgreSQL по сети, правила файерволла

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

Запустите командную строку от имени администратора. Введите команду:

netsh advfirewall firewall add rule name="Postgre Port" dir=in action=allow protocol=TCP localport=5432

  • Где rule name – имя правила
  • Localport – разрешенный порт

Либо вы можете создать правило, разрешающее TCP/IP доступ к экземпляру PostgreSQL на порту 5432 с помощью PowerShell:

New-NetFirewallRule -Name 'POSTGRESQL-In-TCP' -DisplayName 'PostgreSQL (TCP-In)' -Direction Inbound -Enabled True -Protocol TCP -LocalPort 5432

После применения команды в брандмауэре Windows появится новое разрешающее правило для порта Postgres.

правила бранжмауэра для доступа к PostgreSQL по сети

Совет. Для изменения порта в установленной PostgreSQL отредактируйте файл postgresql.conf по пути C:\Program Files\PostgreSQL\11\data.

Измените значение в пункте port = 5432 . Перезапустите службу сервера postgresql-x64-11 после изменений. Можно перезапустить службу с помощью PowerShell:

Restart-Service -Name postgresql-x64-11

служба postgresql-x64-11

Более подробно о настройке параметров в конфигурационном файле postgresql.conf с помощью тюнеров смотрите в статье.

Утилиты управления PostgreSQL через командную строку

Рассмотрим управление и основные операции, которые можно выполнять с PostgreSQL через командную строку с помощью нескольких утилит. Основные инструменты управления PostgreSQL находятся в папке bin, потому все команды будем выполнять из данного каталога.

    Запустите командную строку.

Совет. Перед запуском СУБД, смените кодировку для нормального отображения в русской Windows 10. В командной строке выполните: chcp 1251

утилиты управления postgresql - C:\Program Files\PostgreSQL\11\bin

Основные команды PostgreSQL:

  • Проверка установленной версии СУБД: psql –V
  • Для создания новой базы данных воспользуйтесь утилитой createdb: createdb -U postgres testdb (где postgres суперпользователь, testdb новая база данных)Введите пароль суперпользователя.
  • Проверить список активных баз: Psql -U postgres –l (пароль)
  • С помощью инструмента createuser cоздадим нового пользователя: createuser –U postgres operator (где operator -имя нового пользователя)
  • Предоставим пользователю привилегии суперпользователя (на практике этого делать не надо). Запустите интерактивную командную оболочку управления PostgreSQL (shell): psql –U postgres . С помощью SQL команды ALTER ROLE предоставим нужные права нашему пользователю: ALTER ROLE operator SUPERUSER CREATEROLE CREATEDB; . Мы предоставили пользователю права суперпользователя, права на создание ролей и баз данных.
  • Для выводы списка пользователей и ролей в СУБД выполните команду: \du

PostgreSQL (shell): psql командная строка

PgAdmin: Визуальный редактор для PostgresSQL

Редактор PgAdmin служит для упрощения управления базой данных PostgresSQL в понятном визуальном режиме.

  • Для запуска редактора запустите PgAdmin 4 в меню Пуск
  • Для доступа нужно ввести пароль суперпользователя postgres
  • В панели Servers вы можете раскрыть список активных БД.
  • В панели управления возможно быстро создать нового пользователя и группу, предоставить ему права. Для этого Откройте меню Object -> Create -> Create Login/Group.
  • Для создания новой базы данных достаточно выбрать: Database в меню Object -> Create. В новом поле указать имя базы и владельца.

По умолчанию все созданные базы хранятся в каталоге base по пути C:\Program Files\PostgreSQL\11\data\base.

Для каждой БД существует подкаталог внутри PGDATA/base, названный по OID базы данных в pg_database. Этот подкаталог по умолчанию является местом хранения файлов базы данных; в частности, там хранятся её системные каталоги. Каждая таблица и индекс хранятся в отдельном файле.

Для резервного копирования и восстановления лучше использовать инструмент Backup в панели инструментов Tools. Для автоматизации бэкапа PostgreSQL из командной строки используйте утилиту pg_dump.exe.

Query Tool: использование SQL запросов в PostgreSQL

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

  • Выберите базу данных, в панели Tools откройте Query Tool
  • Создадим таблицу сотрудников:

CREATE TABLE employee
(
Id SERIAL PRIMARY KEY,
FirstName CHARACTER VARYING(30),
LastName CHARACTER VARYING(30),
Email CHARACTER VARYING(30),
Age INTEGER
);

Query Tool: использование SQL запросов в PostgreSQL

После того, как написали код SQL запроса в Query Tool, нажмите клавишу F5 и в базе будет создана новая таблица employee.

Для заполнения полей в свойствах таблицы выберите таблицу employee в разделе Schemas -> Tables. Откройте меню Object инструмент View/Edit Data.

Здесь вы можете заполнить данные в таблице.

редактор таблица в pgadmin

После заполнения данных выполним инструментом Query простой запрос на выборку:
select Age from employee;

В этом разделе показано, как подключаться к источникам данных PostgreSQL со страницы Выбор источника данных или Выбор назначения в мастере импорта и экспорта SQL Server.

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

Получение драйвера ODBC для PostgreSQL

Установка драйвера ODBC с помощью построителя стека

Запустите построитель стека, чтобы добавить драйвер ODBC для PostgreSQL (psqlODBC) в вашу установку PostgreSQL.

Установка ODBC для PostgreSQL с помощью построителя стека

Скачивание последней версии драйвера ODBC

Подключение к PostgreSQL с помощью драйвера ODBC для PostgreSQL (psqlODBC)

Подключение к PostgreSQL с помощью ODBC ранее

Указываемые параметры (драйвер ODBC для PostgreSQL)

Параметры подключения для этого поставщика данных и драйвера ODBC одинаковы независимо от того, является ли PostgreSQL источником или назначением. Таким образом, на страницах Выбор источника данных и Выбор назначения мастера отображаются одинаковые параметры.

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

Вы можете получить помощь в построении строки подключения. Кроме того, вместо указания строки подключения вы можете предоставить существующее имя DSN (имя источника данных) или создать новое. Дополнительные сведения об этих возможностях см. в разделе Подключение к источнику данных ODBC.

Драйвер
Имя драйвера ODBC — PostgreSQL ODBC Driver(UNICODE) или PostgreSQL ODBC Driver(ANSI).

Server
Имя сервера PostgreSQL.

порт.
Порт, используемый для подключения к серверу PostgreSQL.

База данных
Имя базы данных PostgreSQL.

Uid и Pwd
Uid (идентификатор пользователя) и Pwd (пароль) для подключения.

Формат строки подключения

Ниже приведен формат типичной строки подключения.

Ввод строки подключения

Введите строку подключения в поле ConnectionString либо введите имя DSN в поле Dsn на странице Выбор источника данных или Выбор назначения. После того как вы введете строку подключения, мастер проанализирует ее и отобразит отдельные свойства и их значения в списке.

В приведенном ниже примере используется следующая строка подключения:

Ниже показан экран, который появляется после ввода строки подключения.

Подключение к PostgreSQL с помощью ODBC

Другие поставщики данных и дополнительные сведения

Сведения о подключении к PostgreSQL с помощью поставщика данных, не представленного в этом списке, см. в разделе Строки подключения PostgreSQL. Этот сторонний сайт также содержит дополнительные сведения о поставщиках данных и параметрах подключения, описанных на этой странице.

Настройка удаленного подключения к БД PostgreSQL 13 на сервере Ubuntu 18 LTS из ОС Windows 10 утилиты pgAdmin 4, двумя способами: подключение с помощью SSH туннеля и прямое подключение к серверу PostgreSQL.

💡 Я рекомендую использовать подключение через SSH туннель, простое в настройке и безопасное. При использовании SSH туннеля, порт PostgreSQL не открывается для внешних подключений.

Узнать расположение файлов конфигурации PostgreSQL: postgresql.conf, pg_hba.conf.

Узнать порт PostgreSQL командой:

Получить конфигурацию PostgreSQL

В примере, файл конфигурации PostgreSQL располагается по пути /etc/postgresql/13/main/postgresql.conf, порт подключения 5432.

Содержание

SSH туннель к PostgreSQL

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

Настройка pgAdmin на Windows 10:

  1. Запускаем pgAdmin
  2. Создаем новое подключение к серверу: Object -> Create -> Server;
  3. Вкладка General:
    1. Name: название сервера (произвольное);
    1. Host Name: localhost;
    2. Port: 5432;
    3. Maintenance database: mybase;
    4. Username: postgres;
    1. Use SSH tunneling: Yes;
    2. Tunnel host: myserver-IP;
    3. Tunnel port: 58222;
    4. Username: root;
    5. Authentication: Identity file;
    6. Identity file: path_key.

    💡 В качестве ключа указываем приватный ключ id_rsa из Настройка SSH сертификатов на сервере. Как изменить порт SSH в Частые вопросы.

    Подключение к базе данных PostgreSQL через SSH туннель

    Прямое подключение к PostgreSQL

    Для настройки прямого подключения к PostgreSQL вносим изменения в файлы конфигурации postgresql.conf и pg_hba.conf

    Настройка PostgreSQL

    postgresql.conf

    Файл postgresql.conf находится в папке установки PostgreSQL.

    Раскомментируем или добавим строку:

    Мы разрешили прослушивание запросов от всех IP-адресов.

    Настройка файла postgresql.conf

    💡 Возможные варианты:
    listen_addresses = '0.0.0.0' чтобы слушать все IPv4;
    listen_addresses = '::' чтобы слушать все IPv6;
    listen_addresses = 'your.host.ip.adress' определенный адрес или список адресов через запятую.

    pg_hba.conf

    Файл pg_hba.conf находится в папке установки PostgreSQL.

    Открываем на редактирование:

    Запись разрешает подключение к БД mybd пользователю postgres с IP адресом 41.223.232.15, используя пароль.

    Настройка pg_hba.conf

    После изменения файлов конфигурации, перезапустите службу PostgreSQL.

    Настройка pgAdmin

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

    1. Запустите pgAdmin
    2. Создаем новое подключение к серверу: Object -> Create -> Server;
    3. Вкладка General:
      1. Name: название сервера (произвольное);
      1. Host Name: RemoteServerIP;
      2. Port: 5432;
      3. Maintenance database: mybase;
      4. Username: postgres.

      Частые вопросы

      PostgreSQL как узнать расположение файлов конфигурации? SSH как узнать или изменить порт подключения?

      Файл /etc/ssh/sshd_config , строка port.

      Как настроить удаленное подключение к БД PostgreSQL из Windows обсуждалось в этой статье. Я надеюсь, что теперь вы сможете настроить pgAdmin для подключения к PostgreSQL (прямое подключение или используя SSH туннель). Однако, если вы столкнетесь с каким-то проблемами при настройке сервера или pgAdmin, не стесняйтесь написать в комментариях. Я постараюсь помочь.

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