×

Могу ли я создать базу данных PostgreSQL на веб-хостинге?

Пакеты веб-хостинга, предлагаемые IPHost, не предоставляют возможность добавления баз данных PostgreSQL. Мы поддерживаем только базы данных MySQL. Так что самый простой и короткий ответ — НЕТ.

Что такое PostgreSQL?
PostgreSQL — это система управления базами данных с открытым исходным кодом, известная своей производительностью, безопасностью и расширяемостью. Она широко используется в веб-приложениях и совместима с такими языками программирования, как PHP, Python, Java и C++. Для управления PostgreSQL существуют графические интерфейсы, такие как: phpPgAdmin — доступен в cPanel и похож на phpMyAdmin для MySQL, pgAdmin — настольное/веб-приложение, предназначенное для управления PostgreSQL, и DBeaver — мультиплатформенный инструмент для работы с базами данных.

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

Поддерживается ли PostgreSQL на веб-хостинге?
На большинстве пакетов общего (shared) веб-хостинга поставщики не предлагают возможность использовать базы данных PostgreSQL. Решением может быть использование VPS или выделенного сервера, где вы можете установить PostgreSQL вручную, либо приобрести хостинг-пакет с поддержкой PostgreSQL.

Как установить PostgreSQL вручную на VPS или выделенный сервер?
Если вы выбрали VPS или выделенный сервер и хотите установить PostgreSQL вручную, выполните следующие шаги (данные команды предназначены для систем Ubuntu/Debian):

  1. Обновите систему:
    sudo apt update
    sudo apt upgrade -y


  2. Установите необходимые пакеты PostgreSQL:
    sudo apt install postgresql postgresql-contrib

Далее выполните настройку PostgreSQL:

  1. Установите пароль для пользователя postgres (учетная запись администратора по умолчанию):
    sudo -u postgres psql
    ALTER USER postgres PASSWORD 'пароль';
    \q


  2. Отредактируйте файл postgresql.conf, чтобы разрешить внешние подключения:
    sudo nano /etc/postgresql/14/main/postgresql.conf

  3. Найдите строку listen_addresses = 'localhost' и измените её на:
    listen_addresses = 'ip_адрес'
    Вместо ip_адрес введите IP-адрес или список адресов, которым вы хотите разрешить доступ к базе данных. Можно использовать '*', чтобы разрешить доступ всем.

  4. Отредактируйте файл pg_hba.conf, чтобы разрешить удаленный доступ:
    sudo nano /etc/postgresql/14/main/pg_hba.conf

  5. Замените раздел # IPv4 local connections: на следующий:
    # IPv4 local connections:
    host all all 0.0.0.0/0 md5


  6. Откройте порт 5432:
    sudo ufw allow 5432/tcp

  7. Перезапустите PostgreSQL:
    sudo service postgresql restart

Вы также можете создать пользователя для базы данных PostgreSQL:

  1. Создайте базу данных, если она еще не существует:
    sudo -u postgres createdb имя_бд

  2. Создайте нового пользователя и предоставьте ему доступ:
    sudo -u postgres createuser -P имя_пользователя
    sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE имя_бд TO имя_пользователя;"

Как подключиться к базе данных PostgreSQL после установки?
Существует два способа подключения к базе данных PostgreSQL после её установки:

  • Из командной строки.
  • С помощью внешних приложений, таких как DBeaver или pgAdmin.

Если вам удобнее подключаться через командную строку, используйте следующую команду:

   psql -h ip_сервера -U имя_пользователя -d имя_бд -p 5432

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

  • Host: IP-адрес сервера, на котором размещена база данных.
  • Port: 5432 или другой, если используется нестандартный порт.
  • User: Имя пользователя с правами доступа к базе данных.
  • Password: Пароль, установленный для этого пользователя.
  • Database: Название базы данных, к которой нужно подключиться.