Запустить базу данных postgresql linux

PostgreSQL 9.2 Начало!

Мне хотелось создать прекрасный объемлющий мануал Getting Start без всякой воды, но включающий основные плюшки для начинающих по системе PostgreSQL в Linux.

PostgreSQL является объектно-реляционной системой управления базами данных (ОРСУБД) на основе POSTGRES, версия 4.2, разработанной в Университете Калифорнии в Беркли департаменте компьютерных наук.

PostgreSQL является open source потомком оригинального кода Berkeley. Он поддерживает большую часть стандарта SQL и предлагает множество современных функций:

  • Cложные запросы
  • Внешние ключи
  • Триггеры
  • Представление
  • Транзакционная целостность (transactional integrity)
  • Управление конкурентным доступом с помощью многоверсионности
  • типов данных
  • функций
  • операторов
  • агрегатных функций
  • индекс методов
  • процедурных языков

Сборка и установка

Как и все любители мейнстрима PostgreSQL мы будем конечно же собирать, а не скачивать готовые пакеты (в репозитариях Debian, например, нет последней версии). Вот здесь лежит множество версий, скачивать конечно же лучше всего последнюю. На момент написания поста это версия 9.2.2

wget http://ftp.postgresql.org/pub/source/v9.2.2/postgresql-9.2.2.tar.gz tar xzf postgresql-9.2.2.tar.gz

Теперь у нас есть директория с исходниками сей прекрасной базы данных.
По умолчанию файлы базы будут установлены в директорию /usr/local/pgsql, но эту директорию можно изменить задав

перед командой ./configure
Перед сборкой можно указать компилятор С++

PostgeSQL может использовать readline библиотеку, если у вас её нет и нет желания её ставить просто укажите опцию

Надеюсь у всех есть Autotools? Тогда вперед к сборке:

cd postgresql-9.2.2 ./configure --without-readline sudo make install clean

Настройка

Нам необходимо указать хранилище данных наших баз данных (кластер) и запустить её.

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

sudo useradd postgres -p postgres -U -m
sudo chown -R postgres:postgres /usr/local/pgsql

Важный процесс. Мы должны инициализировать кластер баз дынных. Сделать мы должны это от имени пользователя postgres

initdb -D /usr/local/pgsql/data
  • prefix — это место куда мы ставили PostgreSQL и задавали в ./configure
  • PGDATA — это то, где хранится кластер баз данных и куда должен иметь доступ наш пользователь postgres
  • PGUSER — это тот самый пользователь, от лица которого будет все работать
sudo cp ./postgresql-9.2.2/contrib/start-scripts/linux /etc/init.d/postgres sudo update-rc.d postgres defaults 

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

/usr/local/pgsql/bin/psql -U postgres

И если появится окно работы с базой, то настройка прошла успешно! Поздравляю!
По умолчанию создается база данных с именем postgres

Читайте также:  Linux vpn сервер pptp

Теперь важно поговорить о методах авторизации.
В /usr/local/pgsql/data/pg_hba.conf как раз есть необходимые для этого настройка

# TYPE DATABASE USER ADDRESS METHOD local all all trust host all all 127.0.0.1/32 trust host all all ::1/128 trust 
  • trust — доступ к базе может получить кто угодно под любым именем, имеющий с ней соединение.
  • reject — отклонить безоговорочно! Это подходит для фильтрации определенных IP адресов
  • password — требует обязательного ввода пароля. Не подходит для локальных пользователей, только пользователи созданные командой CREATE USER
  • ident — позволяет только пользователем зарегистрированным в файле /usr/local/pgsql/data/pg_ident.conf устанавливать соединение с базой.

Утилиты для работы с базой

pg_config

Возвращает информацию о текущей установленной версии PostgreSQL.

initdb

Инициализирует новое хранилище данных (кластер баз данных). Кластер представляет собой совокупность баз данных управляемых одним экземпляром севера. initdb должен быть запущен от имени будущего владельца сервера (как указано выше от имени postgres).

pg_ctl

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

psql

Клиент для работы с базой дынных. Позволяет выполнять SQL операции.

createdb

Создает новую базу данных. По умолчанию, база данных создается от имени пользователя, который запускает команду. Однако, чтобы задать другого — необходимо использовать опцию -O (если у пользователя есть необходимые привилегии для этого). По сути — это обертка SQL команды CREATE DATABASE.

dropdb

Удаляет базу данных. Является оберткой SQL команды DROP DATABASE.

createuser
dropuser

Удаляет пользователя базы данных. Является оберткой SQL команды DROP ROLE.

createlang

Добавляет новый язык программирования в базу PostgreSQL. Является оберткой SQL команды CREATE LANGUAGE.

droplang

Удаляет язык программирования. Является оберткой SQL команды DROP LANGUAGE.

pg_dump
pg_restore
pg_dumpall

Создает бэкап (дамп) всего кластера в файл.

reindexdb

Производит переиндексацию базы данных. Является оберткой SQL команды REINDEX.

clusterdb

Производит перекластеризацию таблиц в базе данных. Является оберткой SQL команды CLUSTER.

vacuumdb

Сборщик мусора и оптимизатор базы данных. Является оберткой SQL команды VACUUM.

Менеджеры по работе с базой

Что касается менеджера по работа с базой, то есть php менеджер — это phpPgAdmin и GUI менеджер pgAdmin. Должен заметить, что они оба плохо поддерживают последнюю версию PostgreSQL.

P.S Если что-то забыл, скажите — добавлю.

Источник

Как запустить PostgreSQL в Linux?

bestprogrammer.ru

установить и настроить PostgreSQL на Ubuntu

Изучение

Когда мы говорим о работе с базами данных в любой операционной системе, всегда обсуждаются системы управления базами данных (СУБД). PostgreSQL также является СУБД, которая попадает в категорию систем управления реляционными базами данных, т. Е. Занимается управлением и работой реляционных баз данных. Эта реляционная СУБД позволяет гибко создавать базы данных, управлять ими и устанавливать их в любой известной операционной системе, например Linux, macOS и Windows. Именно поэтому эта СУБД получила большую известность среди многих программистов.

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

Читайте также:  Write python script in linux

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

Концепция наследования также хорошо работает с таблицами, созданными в базах данных этой СУБД. Это означает, что вы можете очень удобно позволить таблице наследовать свойства своей родительской таблицы при использовании сервера PostgreSQL. Помимо этого, эта СУБД также позволяет создавать резервные копии ваших данных в Интернете, предотвращая любые потери данных. Кроме того, он также поддерживает восстановление на определенный момент времени для облегчения доступа к восстановленным данным. К настоящему времени мы достаточно обсудили соответствующие функции сервера PostgreSQL. Теперь самое время поговорить о самом фокусе этой статьи.

Цель этой статьи — научить вас процедуре установки сервера PostgreSQL в дистрибутиве Linux, то есть Ubuntu 20.04. Вы также можете использовать любой другой вариант Linux по вашему выбору, если хотите. Однако описанный ниже метод будет отлично работать с системой Ubuntu 20.04.

Методика начала работы с PostgreSQL в Ubuntu 20.04

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

Шаг № 1: Подготовьте вашу систему к установке PostgreSQL

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

Шаг № 2: Запустите команду установки для PostgreSQL

После того, как вышеупомянутая команда завершит свое выполнение, следующим шагом будет выполнение следующей команды в вашем терминале Ubuntu 20.04:

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

С помощью этой команды вы сможете очень удобно установить PostgreSQL в вашу систему, и весь этот процесс займет несколько минут; однако он уже установлен в нашей системе. Поэтому после того, как мы выполнили указанную выше команду в нашей системе Ubuntu 20.04, нам было представлено сообщение, показанное на изображении ниже:

С помощью этой команды вы сможете очень удобно установить PostgreSQL

Однако, как только вы устанавливаете сервер PostgreSQL в свою систему Ubuntu 20.04 (если он еще не установлен на нем), то во время установки вам будет предложено один раз подтвердить свое действие. Как только вы это сделаете, процесс установки сервера PostgreSQL продолжится в вашей системе Ubuntu 20.04 и завершится после успешной установки, что приведет к отображению сообщения об успешном завершении на терминале.

Читайте также:  Linux создать таблицу разделов флешки

Шаг № 3: проверьте активный статус PostgreSQL

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

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

Результат, представленный на изображении ниже, подтверждает, что PostgreSQL активен в нашей системе. Однако здесь следует отметить, что этот сервер сейчас не работает. Он запустится только после того, как мы запустим этот сервер. Именно поэтому статус оказался «активен (вышел)», а не «активен (работает)».

Шаг № 4: Запустите PostgreSQL, получив доступ к его серверу

После проверки состояния сервера PostgreSQL в нашей системе Ubuntu 20.04 мы получим доступ к этому серверу, чтобы он мог начать работу, с помощью следующей команды:

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

Шаг № 5: Войдите в консоль PostgreSQL

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

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

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

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

Дополнительный совет

В качестве дополнительного совета мы хотели бы научить вас, как вернуться к обычному терминалу в Ubuntu 20.04. Для этого вам сначала нужно выйти из консоли PostgreSQL, после чего вам придется выйти из сервера PostgreSQL. Это можно сделать, следуя двум приведенным ниже советам:

Совет № 1: как выйти из консоли PostgreSQL?

Для выхода из консоли сервера PostgreSQL вам необходимо ввести «\ q» в этой консоли и нажать клавишу Enter, как показано на следующем изображении:

Для выхода из консоли сервера PostgreSQL вам необходимо ввести

Как только вы это сделаете, вы выйдете из консоли сервера PostgreSQL.

Совет № 2: Как выйти из сервера PostgreSQL?

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

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

Когда вы запустите эту команду, вы успешно выйдете из сервера PostgreSQL.

Заключение

Из этого руководства вы легко поймете, насколько просто запустить PostgreSQL в системе Linux. Мы использовали систему Ubuntu 20.04 для объяснения этого метода. Главное, что вам нужно, — это установленный в вашей системе сервер PostgreSQL. Если вы установили его в своей системе и он находится в активном состоянии, то запуск этого сервера в вашей системе займет всего несколько секунд. Кроме того, в качестве дополнительного совета мы также научили вас, как выйти из консоли сервера PostgreSQL и как выйти из этого сервера.

Источник

Оцените статью
Adblock
detector