Установка postgresql на ubuntu 18.04 не трудная, если знать весь алгоритм и понимать принцип его действия.

Начнём с определений и объяснения понятий. Реляционные базы данных являются одним из основных компонентов большинства сайтов и приложений. Они необходимы для структурирования и хранения данных.

PostgreSQL – это реляционная система управления базами данных (СУБД), основанная на языке запросов SQL. Она подходит для поддержки приложений любого размера и имеет множество дополнительных функций.

Последняя версия этой системы баз данных – PostgreSQL 12.1, в то время как версии 11.6, 10.11, 9.6.16, 9.5.20 и 9.4.25 все еще постоянно редактируются и улучшаются.

Предпосылки

Для скачивания и качественной работы, для начала необходимо установить Ubuntu 18.04.

Требования

  • 64-битный архитектурный компьютер с жестким диском, свободным от личных невосстановимых данных. Это может быть любой запасной, старый, низкопрофильный рабочий стол или ноутбук.
  • Подключение к интернету.
  • DVD-горелка с пустым DVD-носителем или USB-флешкой размером не менее 2 ГБ.

Убунту – один из самых популярных дистрибутивов Linux. Причина в том, что он очень старается быть самой удобной для пользователя операционной системой Non-geek Linux.

Как скачать Ubuntu

Во-первых, нужно загрузить загрузочный ISO-образ. Перейдите в своём браузере на официальную страницу загрузки Ubuntu и скачайте приложение 64-разрядного ПК (AMD64) изображение рабочего стола. Используйтесь свой ip адрес. Создайте загрузочный DVD или USB, затем выберите, с какого носителя вы хотите выполнить установку Ubuntu. Можно использовать vds (vps). Большинство новичков используют DVD в качестве загрузочного носителя и считают этот метод более простым. Если это ваш случай, используйте вашу текущую операционную систему, веб сервер, чтобы записать ранее загруженный ISO-образ на чистый DVD-носитель. Нет никаких конкретных настроек, которые вам нужно выбрать во время записи ISO-образа, просто найдите функцию “записать ISO-образ” при использовании вашего программного обеспечения для записи.

Кроме того, воспользуйтесь следующей базовой инструкцией по созданию загрузочного USB-накопителя с использованием MS Windows. Если вы уже используете Linux, читайте здесь как создать Ubuntu USB флэш-накопитель.

Загрузка с USB или DVD-диска

Если вы нетехнический человек, то, скорее всего, эта часть процесса установки Ubuntu будет для вас самой трудной. К сожалению, нет единого руководства по загрузке с USB или DVD, поскольку существует множество компьютеров и производителей, которые еще не пришли к решению о том, как унифицировать этот процесс.

Однако, если детально разобраться в вопросе, позже это даст вам ответ на вопрос: как установить postgresql и как запустить postgresql.

Установите PostgreSQL из репозитория PostgreSQL Apt

PostgreSQL доступен во всех версиях Ubuntu по умолчанию, но он не гарантирует автоматического обновления при выходе новых версий. Локальный репозиторий содержит только “моментальные снимки” конкретной версии. Лучше всего установить программное обеспечение из репозитория PostgreSQL Apt.

Репозиторий PostgreSQL Apt предоставляет последнюю версию PostgreSQL, а также все предыдущие серверные пакеты, расширения и модули.

Шаг 1: Добавьте Репозиторий PostgreSQL

Для установки из официального репозитория вам сначала нужно добавить его в свою систему– это первоначальная настройка. Затем добавьте репозиторий PostgreSQL.

Шаг 2: обновите список пакетов

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

Шаг 3: Установите PostgreSQL

Чтобы установить PostgreSQL и пакет PostgreSQL contrib (который предоставляет дополнительные функции), используйте следующую команду

$ sudo apt-get install postgresql postgresql-contrib

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

Установите PostgreSQL из локального репозитория Ubuntu

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

Шаг 1: Проверьте Доступную Версию PostgreSQL

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

Шаг 2: Установите Пакет PostgreSQL

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

$ sudo apt install postgresql postgresql-contrib

С помощью этих простых шагов вы успешно установили PostgreSQL на Ubuntu 18.04.

Проверьте информацию о соединении

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

Почему популярен PostgreSQL?

Одна из потенциальных причин популярности PostgreSQL, заключается в том, что она продвигает себя как “единственную истинную свободную и открытую СУБД” в ответ на поглощение MySQL компанией Oracle.

Это, конечно, немного преувеличено (так как большая часть кода MySQL все еще является открытым исходным кодом и бесплатным), но MySQL стал несколько менее “интересным” для людей, ищущих решение с открытым исходным кодом. Кроме того, есть два побочных эффекта этого поглощения, которые могут объяснить снижение доверия к MySQL:

  1. Развитие (с точки зрения новых функций) MySQL значительно замедлилось с тех пор, как Oracle стала ответственной (хотя кажется, что MySQL 8.0 догоняет, но на момент написания этой статьи это еще не так);
  2. Рождение MariaDB, которая конкурирует с MySQL за “наследие” проекта с открытым исходным кодом “MySQL”. Это раздвоение, похоже, заставило людей колебаться (и поэтому, возможно, заставило их рассмотреть PostgreSQL)

Подход PostgreSQL всегда был таким: реализовать то, что предписывает стандарт SQL. С точки зрения полезности, для большинства “недорогих” пользователей, в первые дни, подход MySQL был более привлекательным. Сегодня (и фактически с более поздних стандартов SQL, таких как SQL: 2008 и SQL: 2011) соответствие стандартам (и совместимость с другими СУБД) становится все более важным для пользователей, и Стандарт теперь включает в себя все полезные функции.

Зачем использовать PostgreSQL?

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

PostgreSQL пытается соответствовать стандарту SQL там, где такое соответствие не противоречит традиционным функциям или может привести к плохим архитектурным решениям. Многие функции, требуемые стандартом SQL, поддерживаются, хотя иногда и с немного отличающимся синтаксисом или функцией. По состоянию на выпуск версии 13 в сентябре 2020 года PostgreSQL соответствует по крайней мере 170 из 179 обязательных функций для соответствия ядру SQL:2016. На момент написания этой статьи ни одна реляционная база данных не соответствует этому стандарту в полном объеме.

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

тип данных

  • Примитивы: Целочисленные, Числовые, Строковые, Логические
  • Структурировано: Дата / Время, массив, диапазон, UUID
  • Документ: JSON/JSONB, XML, Key-value (Hstore)
  • Геометрия: Точка, Линия, Круг, Многоугольник
  • Настройки: Составные, Пользовательские

Типы целостность данных

  • УНИКАЛЬНЫЙ, А НЕ НУЛЕВОЙ
  • первичный ключ
  • внешний ключ
  • Ограничения Исключения
  • Явные Блокировки, Консультативные Блокировки
  • Параллелизм, Производительность
  • Индексация: B-дерево, Многоколоночное, выражения, частичное
  • Расширенная индексация: GiST, SP-Gist, KNN Gist, GIN, BRIN, охватывающие индексы, фильтры Bloom
  • Сложный планировщик запросов / оптимизатор, сканирование только индексов, многоколоночная статистика
  • Транзакции, вложенные транзакции (через точки сохранения)
  • Многоверсионный контроль параллелизма (MVCC)
  • Распараллеливание запросов чтения и построение индексов B-дерева
  • Разбиение таблицы на разделы
  • Все уровни изоляции транзакций, определенные в стандарте SQL, включая сериализуемые
  • Just-in-time (JIT) компиляция выражений
  • Надежность, Аварийное Восстановление
  • Ведение журнала с опережением записи (WAL)
  • Репликация: Асинхронная, Синхронная, Логическая
  • Point-in-time-recovery (PITR), active standbys
  • Табличная область
  • Безопасность
  • Аутентификация: GSSAPI, SSPI, LDAP, SCRAM-SHA-256, сертификат и многое другое
  • Надежная система контроля доступа
  • Безопасность на уровне столбцов и строк
  • Многофакторная аутентификация с сертификатами и дополнительным методом
  • Растяжимость
  • Хранимые функции и процедуры
  • Процедурные языки: PL/PGSQL, Perl, Python (и многие другие)
  • Выражения путей SQL/JSON
  • Внешние оболочки данных: подключение к другим базам данных или потокам со стандартным интерфейсом SQL
  • Настраиваемый интерфейс хранения данных для таблиц
  • Многие расширения, предоставляющие дополнительные функциональные возможности, включая PostGIS
  • Интернационализация, Текстовый Поиск
  • Поддержка международных наборов символов, например, с помощью параметров сортировки ICU
  • Нечувствительные к регистру и акценту параметры сортировки
  • Полнотекстовый поиск

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

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

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

Использование ролей и баз данных PostgreSQL

По умолчанию Postgres использует понятие “роли” для обработки аутентификации и авторизации. В чем-то они похожи на обычные учетные записи в стиле Unix, но Postgres не делает различий между пользователями и группами и предпочитает более гибкий термин “роль”.

После установки Postgres настраивается на использование аутентификации ident, что означает, что он связывает роли Postgres с соответствующей системной учетной записью Unix/Linux. Если роль существует в Postgres, пользователь Unix/Linux с тем же именем сможет войти в систему в качестве этой роли.

Есть несколько способов использовать эту учетную запись для доступа к Postgres.

Переход к учетной записи postgres

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

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

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

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

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

Как обновить данные в таблице

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

Мы можем проверить, что операция прошла успешно, снова запросив наши данные.

Вывод

Эта статья должна помочь вам настроить PostgreSQL. Независимо от того, решите ли вы установить его из репозитория PostgreSQL или локального репозитория Ubuntu, обе установки будут простыми и удобными.

Вопрос-ответ

Куда можно посмотреть, если остались вопросы?

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