How to install and use postgresql on ubuntu 14.04

Содержание:

Как установить PostgreSQL на Ubuntu

  • В терминале выполните команду sudo sh -c ‘echo «deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main» >> /etc/apt/sources.list.d/pgdg.list’
  • Подтвердите действие вводом пароля администратора.
  • Следующей в установке командой будет wget -q https://www.postgresql.org/media/keys/ACCC4CFasc -O — | sudo apt-key add –
  • Добавление завершено, нужно обновить список пакетов sudo apt update
  • Для начала установки нужно вписать команду sudo apt install postgresql postgresql-contrib
  • Введите большую букву “Д” для подтверждения согласия на установку.
  • Установка завершена.

Данная инструкция актуальна и для установки PostgreSQL в Linux Mint, Elementary OS и других производных от Debian — дистрибутивах.

Установка и настройка PostgreSQL на Windows

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

Внимание! Если отсутствует пакет, подготовленный для определенной ОС или ее разрядности, необходимо скачать установщик предыдущей версии ПО.

Требуется отыскать скачанный пакет и запустить его. При этом могут начать устанавливаться дополнительные библиотеки, такие как Microsft Visual C++, и после этих процессов появится главное окно PostgreSQL Installer, в котором нужно нажать Next.

Далее, установщик попросит указать директорию для распаковки файлов

Если это неважно, можно оставить все как есть и не вводить команды

Следующее окно служит для выбора необходимых компонентов.

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

На данном экране необходимо указать и подтвердить пароль для подключения к базам.

Укажите порт, на котором будет функционировать PostgreSQL. Если это не принципиально, можно оставить по умолчанию.

Установка кодировки данных – рекомендуется оставить стандартную во избежание проблем в будущем.

Последние три окна – всего лишь подтверждение внесенных настроек и установка программы.

На завершающем этапе инсталлятор предложит запустить Stack Builder для доступа к расширениям функционала. Чаще всего этого не требуется, так что галочку следует убрать, после чего задать команду Finish.

Настройка

В отличие от Linux, версия ПО под Windows не требует редактировать файл конфигурации PostgreSQL через командную строку. Все взаимодействие с СУБД происходит через графический интерфейс. Для его запуска и начала настройки необходимо:

Найти и запустить в меню Пуск приложение pgAdmin 4.

С недавних пор pgAdmin работает через веб-интерфейс, и открывается через установленный в системе по умолчанию браузер.

Для того чтобы подключиться к локальному хранилищу, необходимо дважды щелкнуть левой кнопкой мыши по серверу PostgreSQL 11, спрятанному во вкладке Servers и ввести созданный на этапе установки пароль. Дабы система запомнила его, можно поставить галочку рядом с пунктом Save Password.

Для начала было бы хорошо сменить язык интерфейса. Это можно сделать специальной командой, зайдя в меню File – Preferences, отыскать там пункт User Language, сменить язык и нажать Ок. Если перевод не применился полностью, следует обновить страницу.

Нового пользователя можно внести командой при помощи правой кнопки мыши: по названию сервера переходом в пункт Роль входа/группы.

Введите желаемое имя, затем во вкладке справа включите все права.

Нажмите сохранить.

Таблица

Создание таблиц и значений внутри пользовательского интерфейса гораздо проще, нежели чем работа в СУБД из-под Linux, и не вызовет вопросов у новичков, что положительно сказывается на продуктивности. Однако создание самой базы не столь очевидно. Для этого нужно раскрыть корневой каталог сервера, перейти в каталог с базами и создать новую через меню, вызываемое нажатием правой кнопки мыши.

Теперь внесите название базы, укажите владельца и, если нужно, внесите комментарий

В базе данных раскройте подпункт Схемы – Public. Найдите пункт Таблицы, нажмите правой кнопкой мыши и создайте таблицу.

Введите название, выберите владельца и нажмите Сохранить.

На этом настройка завершена.

Conclusion

You are now set up with PostgreSQL on your Ubuntu 14.04 server. However, there is still much more to learn with Postgres. Here are some more guides that cover how to use Postgres:

  • A comparison of relational database management systems
  • Learn how to create and manage tables with Postgres
  • Get better at managing roles and permissions
  • Craft queries with Postgres with Select
  • Install phpPgAdmin to administer databases from a web interface
  • Learn how to secure PostgreSQL
  • Set up master-slave replication with Postgres
  • Learn how to backup a Postgres database

<div class=“author”>By Justin Ellingwood</div>

НАСТОЙКА РЕПЛИКАЦИИ POSTGRESQL

Сначала настроем мастер-сервер. Это основной сервер, который будет выполнять основные действия записи и рассылать данные на сервера Salve. Приложения могут не только читать, но и записывать данные взаимодействуя с этим сервером. Для его настройки нам нужно изменить содержимое файла postgresql.conf в папке /etc/postgresql/9.6/main/:

Сначала расскоментируйте строчку listen_address и пропишите в ней ip адрес вашего сервера. Порт должен быть 5433 иначе не заработает:

Расскоментируйте строчку wal_level и установите значение standby, она отвечает за способ репликации:

Мы будем использовать локальную синхронизацию:

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

Теперь настроем куда именно будет выполняться синхронизация. В нашей инструкции мы будем использовать только два сервера — Master и Salve. Поэтому в строке max_wal_senders поставьте значение 2:

Установите имя нашего сервера синхронизации:

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

Дальше нам нужно отредактировать файл pg_hba.conf, он отвечает за аутентификацию пользователей. Здесь нужно прописать каждый сервер, базу данных, адрес и метод аутентификации. Синтаксис файла такой:

host база_данных пользователь ip_адрес метод опции

После всех настроек нужно перезапустить службу:

Дальше нам нужно создать нового пользователя, у которого будут права на репликацию. Назовите его replica:

После всех этих действий настройка репликации postgresql на сервере Master завершена и он готов к работе. Дальше настроем сервер Salve. Тут все проще. Мы собираемся заменить директорию data этого сервера, на эту же директорию из сервера master и поддерживать их синхронизацию. Сначала остановите службу:

Затем сделайте резервную копию текущей директории, если там есть важные данные и вы боитесь их потерять. Удалите текущую папку с данными:

Затем авторизуйтесь от имени пользователя postgres и скопируйте все данные из сервера Master:

Вам нужно будет ввести пароль и дождаться пока будут загружены данные. Дальше нужно исправить настройки /etc/postgresql/9.6/main/postgresql.conf:

Включите hot_standby:

И укажите ip адрес этого сервера в строке listen_address:

Это все, можете сохранить изменения и закрыть файл. Затем создайте файл /etc/postgresql/9.6/main/recovery.conf:

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

Дальше осталось только протестировать как работает потоковая репликация postgresql.

Настройка с доступом по паролю

Настройка пользователя postgres

Задайте пароль для пользователя :

psql -U postgres

psql (11.2)
Введите "help", чтобы получить справку.
postgres=# \password
Введите новый пароль:
Повторите его:
postgres=# \q

Настройка доступа к базам

Выполните настройки доступа к SQL-серверу, разрешив доступ только локальным запросам и из локальной сети 192.168.0.0/24:

/etc/postgresql-11/pg_hba.conf

# TYPE  DATABASE        USER            ADDRESS                 METHOD
# "local" is for Unix domain socket connections only
local   all             all                                     password
# IPv4 local connections:
host    all             all             127.0.0.1/32            password
host    all             all             192.168.0.0/24          password
# IPv6 local connections:
#host   all             all             ::1/128                 trust
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local  replication     all                                     trust
#host   replication     all             127.0.0.1/32            trust
#host   replication     all             ::1/128                 trust

Через запятую укажите IP-адреса, которые должен слушать сервер PostgreSQL:

/etc/postgresql-11/postgresql.conf

#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------

# - Connection Settings -

listen_addresses = '192.168.0.1,127.0.0.1' # what IP address(es) to listen on;
                                           # comma-separated list of addresses;
                                           # defaults to 'localhost'; use '*' for all
                                           # (change requires restart)

Заметка

Если нужно, чтобы сервер был доступен на всех сетевых интерфейсах, вместо IP-адресов укажите .

Перезагрузите сервис баз данных:

/etc/init.d/postgresql-11 restart

postgresql-11 | * Stopping PostgreSQL 11 (this can take up to 92 seconds) ...  ok 
postgresql-11 | * /run/postgresql: correcting mode
postgresql-11 | * Starting PostgreSQL 11 ...                                   ok 

Проверьте, какие порты работают:

netstat -an

Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:5432          0.0.0.0:*               LISTEN     
tcp        0      0 192.168.0.1:5432        0.0.0.0:*               LISTEN     
tcp6       0      0 :::22                   :::*                    LISTEN     
udp        0      0 127.0.0.1:41006         127.0.0.1:41006         ESTABLISHED
Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2           STREAM     LISTENING     281718   /run/postgresql/.s.PGSQL.5432

Пример создания базы данных и пользователя

Создайте базу данных dbtest и пользователя test для работы с ней:

psql -U postgres

Пароль пользователя postgres: 
psql (11.2)
Введите "help", чтобы получить справку.

postgres=# create database dbtest;
CREATE DATABASE
postgres=# create role test with login;
CREATE ROLE
postgres=# \password test
Введите новый пароль: 
Повторите его: 
postgres=# grant connect, create on database dbtest to test;
GRANT
postgres=# \l dbtest
                                 Список баз данных
    Имя    | Владелец | Кодировка | LC_COLLATE |  LC_CTYPE  |     Права доступа     
-----------+----------+-----------+------------+------------+-----------------------
 dbtest    | postgres | UTF8      | ru_RU.utf8 | ru_RU.utf8 | =Tc/postgres         +
           |          |           |            |            | postgres=CTc/postgres+
           |          |           |            |            | test=Cc/postgres
(1 строка)

postgres=# \q

Необходимая база и пользователь созданы.

Проверьте подключение к базе данных:

psql -U test -d dbtest

Пароль пользователя test:
psql (11.2)
Введите "help", чтобы получить справку.

test=> \q

Замечания по установке

Поддерживаемые операционные системы

Данная версия PostgreSQL сервера может быть установлена на компьютеры с ОС Windows XP SP3 и выше. 64-разрядная версия PosgreSQL сервера может быть установлена только на 64 разрядную версию Windows.

Параметры установки

В начале предлагается задать параметры установки сервера. Можно выбрать компоненты, которые будут установлены.

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

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

В процессе установки предлагается ввести параметры сервера — номер порта, имя супер пользователя, пароль и другие. Рекомендуем вводить имя пользователя и пароль только латинскими буквами. Пароль можно оставить и пустым.

Также предлагается провести некоторую оптимизацию параметров сервера исходя из установленной оперативной памяти (если ее больше 1Gb). Параметры сохраняются в файл postgresql.conf, который находится в папке с данными. Оптимизируются 2 параметра: shared_buffers и work_mem. Потом Вы можете самостоятельно изменять эти и другие параметры в зависимости от условий эксплуатации сервера.

После установки, сервер запускается и становится готовым к работе. Перезагрузка компьютера не требуется.

Учетная запись сервиса в Windows

Для запуска сервера используется специальная встроенная учетная запись Windows: ‘NT AUTHORITY\NetworkService’. Запуск службы Postgresql-9.4 от другого пользователя можно настроить после установки, например, через программу «Управление компьютером» в Windows.

Поддержка кириллицы

  • При запуске psql рекомендуем выполнять команду chcp 1251, которая настраивает правильное отображение русского языка.
  • При запуске pgbench рекомендуем выполнять команду chcp 65001, которая настраивает правильное отображение русского языка.

Предупреждение: не следует запускать psql после команды chcp 65001, в противном случае 8-битовые (русские) символы могут отображаться некорректно.

Ярлыки программ

После установки для сервера создаются ярлыки, которыми можно воспользоваться с помощью кнопки Пуск (если она есть в Вашей ОС).

  • SQL Shell (psql) — основное, «родное» консольное средство управления сервером и выполнения запросов.
  • Reload Configuration — перезагрузить конфигурацию сервера из файлов конфигурации. Следует отметить, что для некоторых параметров требуется перезагрузка сервера.
  • Restart Server — остановить и запустить сервер заново. Все активные соединения с сервером будут закрыты.
  • Stop Server — остановить сервер. Все активные соединения с сервером будут закрыты.
  • Start Server — запустить сервер.

Если Вы установили средство pgAdmin, то для него будут созданы свои ярлыки для запуска.

Удаление сервера

Для удаления сервера выберите ярлык Uninstall или можно использовать панель управления Windows. При удалении сервер останавливается, все активные соединения с сервером будут закрыты. Папка с данными не удаляется. Перезагрузка компьютера не требуется.

Копирование числовых ячеек из 1С в Excel Промо

Решение проблемы, когда значения скопированных ячеек из табличных документов 1С в Excel воспринимаются последним как текст, т.е. без дополнительного форматирования значений невозможно применить арифметические операции. Поводом для публикации послужило понимание того, что целое предприятие с более сотней активных пользователей уже на протяжении года мучилось с такой, казалось бы на первый взгляд, тривиальной проблемой. Варианты решения, предложенные специалистами helpdesk, обслуживающими данное предприятие, а так же многочисленные обсуждения на форумах, только подтвердили убеждение в необходимости описания способа, который позволил мне качественно и быстро справиться с ситуацией.

Настройка Postgresql в Ubuntu

Вы знаете как установить Postgresql Ubuntu, но этого недостаточно для начала полноценной работы. Первым делом, откройте терминал и переключите его на пользователя postgres с помощью команды:

Эта учетная запись создается во время установки программы и на данный момент вы можете получить доступ к системе баз данных только с помощью нее. По умолчанию postgress использует концепцию ролей для аутентификации и авторизации.

Это очень похоже на учетные записи Unix, но программа не различает пользователей и групп, есть только роли. Сразу после установки Postgresql пытается связать свои роли с системными учетными записями, если для имени системной учетной записи существует роль, то пользователь может войти в консоль управления и выполнять позволенные ему действия. Таким образом, после переключения на пользователя postgres вы можете войти в консоль управления:

И посмотреть информацию о соединении:

Чтобы выйти наберите:

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

Создание роли Postgresql

Вы уже можете полноценно работать с базой данных с помощью учетной записи postgres, но давайте создадим дополнительную роль. Учетная запись postgres является администратором, поэтому имеет доступ к функциям управления. Для создания пользователя выполните:

Скрипт задаст лишь два вопроса, имя новой роли и нужно ли делать ее суперпользователем.

Создание базы данных

Точно также как имена ролей сопоставляются с системными пользователями, имя базы данных будет подбираться по имени пользователя. Например, если мы создали пользователя segiy, то по умолчанию система попытается получить доступ к базе данных segiy. Мы можем ее очень просто создать:

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

Заходим в консоль и смотрим информацию о подключении:

Все верно сработало. Мы подключились с помощью роли segiy к базе segiy. Если нужно указать другую базу данных, вы можете сделать это с помощью опции -d, например:

Все сработало верно, при условии, что все компоненты были настроены как описано выше.

Создание таблиц

Теперь, когда вы знаете как подключится к базе данных Postgresql давайте рассмотрим как выполняются основные задачи. Сначала разберем создание таблиц для хранения некоторых данных. Для создания таблицы Postgresql используется такой синтаксис:

CREATE TABLE имя таблицы (имя_колонки1 тип_колонки ( длина ) ограничения ,имя_колонки2 тип_колонки ( длина ),имя_колонки3 тип_колонки ( длина ));

Как видите, сначала мы задаем имя таблицы, затем описываем каждый столбец. Столбец должен иметь имя, тип и размер, также можно задать ограничения для данных, которые там будут содержаться. Например:

Мы создали таблицу детской площадки для описания оборудования, которое на ней есть. Сначала идет идентификатор equip_id, который имеет тип serial, это значит что его значение будет автоматически увеличиваться, ключ primary key значит, что значения должны быть уникальны.

Следующие колонки — обычные строки, для них мы задаем длину поля, они не могут быть пустыми (NOT NULL). Следующий столбец тоже строка, но она может содержать только одно из указанных значений, последний столбец — дата создания.

Вы можете вывести все таблицы, выполнив команду:

Здесь мы видим что кроме нашей таблицы, существует еще одна переменная — playground_equip_id_seq. В ней содержится последнее значение этого поля. Если нужно вывести только таблицы, выполните:

Вставка и удаление данных

У нас есть таблица, но пока что она пуста. Мы можем добавить в нее некоторые данные. Давайте добавим пункт, описывающий качели. Для этого используются такие команды:

Заметьте, что имена столбцов не обязательно заключать в кавычки, а вот имена значений — обязательно. Теперь смотрим что получилось:

Удалять записи можно по любому критерию, например, удалим записи, поле type которых имеет значение slide:

И снова смотрим что получилось:

ODBC for PostgreSQL

Description License Pricing Publisher  

Devart ODBC Driver for PostgreSQL provides high-performance and feature-rich connectivity solution for ODBC-based applications to access PostgreSQL databases from Windows, Linux, MacOS, both 32-bit and 64-bit. Full support for standard ODBC API functions and data types implemented in our driver makes interaction of your database applications with PostgreSQL fast, easy and extremely handy.

Direct Connection

Database applications based on our solution get an opportunity to establish a connection to PostgreSQL directly. Direct Connection gives your applications an unrivalled advantage — connection to PostgreSQL databases directly via TCP/IP avoiding PostgreSQL Client.

Integration

The driver is compatible with 3rd-party tools for data analysis, such as Microsoft Excel, and integrates with various IDEs and systems like Visual Studio, etc.

Fully Unicode Driver

With our fully Unicode driver, you can retrieve and work with any data from multi-lingual PostgreSQL databases correctly, not depending on whether its charset is Latin, Cyrillic, Hebrew, Chinese, etc., in any environment localization.

Bulk Updates

Moreover, with our driver you can perform bulk updates to PostgreSQL database by combining SQL statements into batches, thus simplifying and speeding up large data modification to PostgreSQL.

Security

Work with PostgreSQL securely using SSL connection options provided in our driver along with the support for SSL protocol. You can also connect to PostgreSQL securely via SSH tunnel. SSH protocol is one of the most reliable protocols for data encryption.

Learn more about more ODBC for PostgreSQL features on Devart website.

Commercial $149.95 Devart View

UniDAC

Description License Pricing Publisher  

Universal Data Access Components (UniDAC) is a library of components that provides direct access to multiple databases from Delphi and C++Builder including Community Edition, as well as Lazarus (and Free Pascal) on Windows, Linux, macOS, iOS, and Android for both 32-bit and 64-bit platforms.

UniDAC provides access to PostgreSQL, Oracle, Microsoft SQL Server, MySQL, InterBase, Firebird, SQLite, Microsoft Access, DB2, DBF, SyBase Advantage Database Server, etc.

The tool is compatible with the latest IDE versions and editions including Community Edition: Embarcadero RAD Studio 10.3 Rio, Delphi 10.3 Rio, C++Builder 10.3 Rio, Lazarus (and FPC). It is also compatible with the previous IDE versions since Delphi 6 and C++Builder 6.

Key features:

  • AppMethod support
  • Direct Mode
  • Android application development support
  • iOS development support
  • NEXTGEN compiler support
  • Mac OS X development support
  • Win64 development support
  • Universal access to different database servers — Full support for the latest server editions
  • High overall performance
  • Support of all standard and third-party data-aware controls
  • Disconnected Model with automatic connection control for working with data offline
  • Local Failover for detecting connection loss and implicit re-execution of certain operations
  • Unicode and national charsets support
  • Database-independent data storage with the TVirtualTable component
  • Ability to retrieve metadata information
  • A large amount of helpful demo projects
Commercial $299.95 Devart View

Note: The PostgreSQL Global Development Group do not endorse or
recommend any products listed, and cannot vouch for the quality or reliability
of any of them.

Свой веб интерфейс к 1С: побеждаем CORS на IIS, сохраняя авторизацию

Если «веб морда» расположена не по тому же адресу, что и публикация 1С (что часто бывает, например, при разработке, публикация 1С на http://localhost/1c, а разрабатываемое веб-приложение на http://localhost:8080) или, например, мы заходим на веб приложение то по ip адресу, то по имени сервера, или просто веб сервер и сервер, на котором опубликована 1С — это разные сервера, то для большинства запросов от браузера к 1С срабатывает политика CORS, которая заключается в том, что браузер сначала посылает запрос OPTIONS, на который сервер должен ответить определенным образом, заголовками, содержащими разрешения, а потом уже (если разрешение есть), браузер посылает основной запрос. В случае, когда в публикации 1С (default.vrd) жестко прописан логин и пароль, разрулить ситуацию можно средствами 1С. В случае же, когда нужно сохранить авторизацию (или используется стандартный интерфейс odata), начинаются проблемы.

Step 6 — Creating and Deleting Tables

Now that you know how to connect to the PostgreSQL database system, you can learn some basic Postgres management tasks.

First, create a table to store some data. As an example, a table that describes some playground equipment.

The basic syntax for this command is as follows:

As you can see, these commands give the table a name, and then define the columns as well as the column type and the max length of the field data. You can also optionally add table constraints for each column.

You can learn more about how to create and manage tables in Postgres here.

For demonstration purposes, create a simple table like this:

These commands will create a table that inventories playground equipment. This starts with an equipment ID, which is of the type. This data type is an auto-incrementing integer. You’ve also given this column the constraint of which means that the values must be unique and not null.

For two of the columns ( and ), the commands do not specify a field length. This is because some column types don’t require a set length because the length is implied by the type.

The next two commands create columns for the equipment and respectively, each of which cannot be empty. The command after these creates a column and create a constraint that requires the value to be one of eight possible values. The last command creates a date column that records the date on which you installed the equipment.

You can see your new table by typing:

Your playground table is here, but there’s also something called that is of the type . This is a representation of the type which you gave your column. This keeps track of the next number in the sequence and is created automatically for columns of this type.

If you want to see just the table without the sequence, you can type:

Шаг 7 — Создание и удаление таблиц

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

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

Базовый синтаксис этой команды выглядит следующим образом:

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

Чтобы продемонстрировать процесс, создайте простую таблицу:

Эта команда создает таблицу с описью оборудования для установки на игровых площадках. Она начинается с идентификатора оборудования, который имеет тип . Это тип данных представляет собой целое число с автоматическим инкрементированием. Вы также указали для этого столбца ограничение в виде , что означает, что значения должны быть уникальными и не равны null.

Для двух из столбцов ( и ) команда не указывает длину поля. Это объясняется тем, что некоторые типы столбцов не требуют указания длины, поскольку длина подразумевается в зависимости от типа значения.

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

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

В результате мы получаем следующий вывод:

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

Если вы хотите только просмотреть таблицу без последовательности, можете ввести следующую команду:

В результате вы получите следующее:

На этом шаге мы создали образец таблицы. На следующем шаге мы попробуем добавить, запросить и удалить элементы в таблице.

Роли и базы данных PostgreSQL

По умолчанию PostgreSQL использует так называемые роли. Роли чем-то похожи на учётные записи пользователей и на группы Unix-подобных систем.

Во время установки PostgreSQL использует модель аутентификации ident, которая связывает роли PostgreSQL со стандартными пользователями Unix/Linux. Открыть существующую роль можно при помощи связанной с ней учётной записи Linux.

Существует несколько способов получить доступ к PostgreSQL при помощи этого аккаунта.

Пользователь postgres

Во время установки был создан Linux-пользователь postgres, который связан со стандартной ролью системы. Можно использовать этот аккаунт, чтобы подключиться к Postgres.

Чтобы перейти в сессию пользователя postgres, введите:

Чтобы получить доступ к командной строке, введите:

Команда выполнит вход и откроет доступ к управлению СУБД.

Чтобы закрыть командную строку PostgreSQL, наберите:

Это вернёт командную строку postgres в Linux.

Прямой доступ к командной строке PostgreSQL

Можно также получить доступ к командной строке PostgreSQL, не изменяя при этом сессии пользователя. Для этого нужен доступ к команде sudo.

Чтобы получить доступ к командной строке Postgres, запустите команду psql как пользователь postgres с правами sudo:

Эта команда выполнит автоматический вход в PostgreSQL без промежуточной оболочки bash.

Чтобы закрыть эту командную строку, введите:

Создание роли

На данный момент в СУБД есть только одна роль, postgres. Чтобы создать новую роль, используйте команду createrole. Чтобы создать роль в интерактивном режиме, добавьте флаг –interactive.

В сессии пользователя postgres создать нового пользователя можно с помощью команды:

В сессии другого пользователя можно использовать команду sudo, чтобы не переходить в сессию postgres:

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

У этого скрипта есть много различных флагов. Ознакомиться со списком доступных опций можно на странице мануала:

Создание базы данных

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

Только что вы создали нового пользователя ( в руководстве он условно называется 8host). Для создания БД используется команда createdb.

В сессии пользователя postgres создать новую БД можно с помощью команды:

В сессии другого пользователя можно использовать команду sudo, чтобы не переходить в сессию postgres:

Аутентификация новой роли PostgreSQL

Чтобы выполнить ident аутентификацию PostgreSQL, нужно иметь пользователя системы Linux, чье имя совпадает с именем роли и БД.

Если у вас нет такого пользователя, создайте его в Linux с помощью команды adduser (для этого необходимы права sudo).

После этого можно перейти в сессию нового пользователя и подключиться к БД:

Или же подключиться к БД напрямую:

Если все предыдущие настройки были выполнены правильно, команда выполнит автоматическое подключение к БД.

Чтобы подключиться к другой БД, нужно указать её имя:

Чтобы получить информацию о текущем подключении, введите:

Это может быть полезно при подключении к нестандартным базам данных или пользователям.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector