Рубрики
Uncategorized

Начало работы с PostgreSQL на Mac OSX

Как настроить, настроить и использовать PostgreSQL на MacOSX 10.7 (Lion) и выше.

Автор оригинала: Ραtгıck Seαгs.

Оглавление

Введение II. О PostgreSQL III. Начиная 3. Настройка postgres. Внутри Популярный GUI для PostgreSQL на MacOS V. Резюме VI. использованная литература

Введение

На днях я начал новый проект Node.js и хотел использовать Postgresql. как моя база данных Backend. Если вы здесь читаете это руководство, надеюсь, вы пытаетесь сделать то же самое!

Этот учебник научит вас настроить, настроить и использовать PostgreSQL на MacOSX 10.7 (Lion) и выше. Вам понадобится как минимум базовый уровень комфорта с использованием командной строки с использованием встроенного клемма MacOSX, ITERM2, ZSH или что-то подобное. К тому времени, когда мы закончили, вы будете:

  • Иметь запущенную PostgreSQL 9.5.4 экземпляр
  • Знайте, как создавать и управлять базами данных и пользователями
  • Узнайте, как использовать инструменты командной строки, так и UI для управления базой данных

II. О PostgreSQL

PostgreSQL — это Кислота Commpliant Object Counds Relational Batase Management System или Ordbms (довольно глоток!). Проще говоря, это база данных, которая позволяет связать одну часть данных в другую (таким образом, «реляционный»). Он работает практически любую операционную систему, включая Linux, Unix и Windows. Это высокая производительность и масштабируемые, способные обращаться с огромным количеством данных и высокогрузочными интернет-приложениями с тысячами одновременных пользователей. Его уникальное сочетание простоты и мощности делает его популярным выбором для отдельных пользователей и малого бизнеса, но предприятия, такие как Yahoo, Uber, Disqus и TripAdvisor.

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

  • Потоковое репликация
  • Схемы
  • Пользовательские объекты, такие как операторы, типы данных и функции
  • Вложенные транзакции
  • Наследование стола
  • Разбиение
  • Несколько необычных типов данных, такие как деньги, геометрия, IP-адреса, JSON и диапазоны данных.
  • Может выполнять хранимые процедуры в течение десятка языков программирования, включая Java, Perl, Python, Ruby и C/C ++.

Благодаря первоклассной поддержке JSON Postgres часто является хорошей альтернативой базам данных «NO-SQL», таких как Mongodb. Узнайте больше о PostgreSQL

III. Начиная

Первое, что мы собираемся сделать, это установить Postgres. Есть два основных способа получить Postgres на вашу машину:

  1. Используя графический установщик, как Bigsql. или Postgres.app
  2. Использование менеджера пакета для установки через командную строку.

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

1. Получение домой

Чтобы установить PostgreSQL в командной строке, мы будем использовать менеджер пакета, называемый Домашний вид Отказ Если у вас уже установлен домощь, вы можете перейти к установке PostgreSQL. В противном случае давайте продолжим идти.

Начнем с копирования и вставки следующей команды в нашу командную строку:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Не беспокойтесь о том, что делает все — до тех пор, пока вы используете MacOSX 10,7 или выше, переводчик Ruby приходит предварительно установленным. Остальная часть этой команды (команда Curl Command) — это инструмент для создания веб-запросов из вашей командной строки. Это загружает скрипт на данном URL, а затем интерпретатор Ruby выполняет его. Вы должны увидеть вывод, аналогичный следующему:

Установка домой

postgres server.

Теперь, когда у нас есть домощь, мы можем приступить к установке Postgres!

2. Установка Postgres

Теперь, когда у нас есть домощь, установка PostgreSQL очень прост. Запустите следующую команду для установки PostgreSQL с помощью Homebrew:

brew install postgresql

Вы должны затем увидеть следующий выход:

* Установка *

PostgreSQL Server.

Домашний вид заботится о разрешении зависимостей Postgres, которые в этом случае являются OpenSSL и readline. Это также заботится о том, чтобы узнать, какие последние версии, где их получить, и как их распаковать. Самое главное — это простые в промах в самом конце установки:

Начальные услуги

PostgreSQL Server.

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

pg_ctl -D /usr/local/var/postgres start && brew services start postgresql

Наконец, давайте убедитесь, что Postgres установлена и работает. Давайте проверим, какая версия работает:

postgres -V

Ваш выход должен выглядеть следующее:

Postgres установлена

PostgreSQL Server.

Вот и все! У вас установлены Postgres. Теперь мы наконец готовы узнать, как его использовать!

3. Настройка postgres.

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

Начните с ввода следующего в командной строке:

psql postgres

(Вам может потребоваться использовать Sudo PSQL Postgres Для этой команды для работы в зависимости от того, как настроена ваша система).

Вы увидите, как вывод, как следующее:

PSQL вывод

PostgreSQL Server.

Это PSQL командная строка. Теперь мы можем ввести команду, чтобы увидеть, какие пользователи установлены:

postgres=# \du

Под крышками эта команда выполняет SQL Query (мы узнаем о них позже), которые получают все пользователи в базе данных. На моей машине он возвращает следующее:

Список пользователей PSQL

PostgreSQL Server.

Мы видим, что пользователь Postgres, который я упомянул, но что такое другой пользователь, Инженер ? Это одна из вещей Postgres, чтобы облегчить вашу жизнь, когда вы впервые установите его. На большинстве операционных систем на основе Linux имя пользователя, которое используется по умолчанию всех процессов, является той, который вы вошли в систему как. Вам не нужно передать свое имя пользователя в большинстве программ. Но если определенная программа, вроде Postgres, не настроен на имя пользователя, он не удастся!

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

A. Создание пользователей

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

Пока это, конечно, Удобно Что postgres устанавливает набор пользователей по умолчанию для вас, это Очень плохая идея использовать их для чего угодно, кроме местного развития, потому что они очень широко известны и важнее, они являются Супер пользователь Счета — они могут сделать что-нибудь, включая DELETE базы данных. Это не безопасно для производственной базы данных — нам нужны пользователи с ограниченными разрешениями. Итак, как мы создаем и используем новые пользователи (роли)?

Есть два основных способа сделать это:

  • Напрямую выполнить Создать роль SQL Query в базе данных
  • Используйте Createuser Утилита, которая установлена с Postgres (которая просто обертка для выполнения Создать роль ).

Давайте посмотрим на обоих случаях.

A.1. Создать роль с PSQL

Основной синтаксис для Создать роль Похоже, это выглядит:

CREATE ROLE username WITH LOGIN PASSWORD 'quoted password' [OPTIONS]

Где Имя пользователя Является ли пользователь, который вы хотите создать, и пароль идет в конце в кавычках. Мы доберемся до вариантов позже.

Давайте начнем с входа в систему нашим полезным PSQL орудие труда:

PSQL вывод

PostgreSQL Server.

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

postgres=# \password postgres

Вам будет предложено ввести пароль и подтвердить его. Теперь давайте создадим нашу новую роль:

postgres=# CREATE ROLE patrick WITH LOGIN PASSWORD 'Getting started'; 
postgres=# \du

Ваш выход должен выглядеть следующее:

PSQL создает роль

PostgreSQL Server.

Ждать. Список атрибутов для пользователя Патрик полностью пусто. Почему?

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

Так что давайте добавим GUSEDB Разрешение нашему новому пользователю позволить им создавать базы данных:

postgres=# ALTER ROLE patrick CREATEDB; 
postgres=# \du 
postgres=# \q # quits

Ваш выход должен понравиться это:

PSQL ALTER ROLE.

PostgreSQL Server.

Документация для Создавать роль

Документация для Изменить роль

A.2. Утилита CreateUser

Postgres Ships с рядом очень полезных утилит командной строки, которые делают вышеуказанный процесс гораздо проще. Вместо входа в PSQL, выполняющий SQL-запросы и необходимым знать детали операторов запросов, вы можете использовать знакомый интерфейс командной строки для выполнения той же задач. Несколько из этих инструментов:

  • CreateUser: создает пользователь
  • GUSEDB: создает базу данных
  • DropUser: Удаляет пользователя
  • DropDB: Удаляет базу данных
  • Postgres: Выполняет сам сервер SQL (мы видели, что указано выше, когда мы проверили нашу версию Postgres!)
  • pg_dump: сбрасывает содержимое одной базы данных в файл
  • pg_dumpall: сбрасывает все базы данных в файл
  • PSQL: Мы узнаем, что один!

Полный список клиентских приложений

Так что давайте будем использовать Createuser сделать то же самое, что мы сделали выше: создайте Патрик Пользователь:

createuser patrick

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

createuser patrick --createdb

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

Документация для Создать пользователя

А.3. Резюме

Вот и все! Теперь наш новый пользователь устанавливается и может создавать базы данных. Давайте начнем управлять нашей базой данных с этим новым пользователем.

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

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

  • Выполнение команд SQL напрямую с PSQL
  • GUSEDB Утилита командной строки.

B.1. Создать базу данных с PSQL

Синтаксис Core SQL для создания базы данных в PostgreSQL:

CREATE DATABASE databasename;

Мы пройдем в тот же процесс, что и выше:

psql postgres -U patrick

PSQL Логин пользователя

PostgreSQL Server.

Вы заметите, что подсказка немного отличается — # изменился на > Отказ Это указывает, что вы больше не используете учетную запись Super User.

postgres=> CREATE DATABASE super_awesome_application;

Документация для Создать базу данных

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

postgres=> GRANT ALL PRIVILEGES ON DATABASE super_awesome_application TO patrick; postgres=> \list 
postgres=> \connect super_awesome_application 
postgres=> \dt 
postgres=> \q

Документация для Грант

Здесь я также показал вам несколько новых команд, которые можно использовать с PSQL :

  • \ Список : Перечисляет все базы данных в Postgres
  • \ connect : подключиться к определенной базе данных
  • \ dt : Перечислите таблицы в текущей связанной базе данных

PSQL Создать базу данных

PostgreSQL Server.

Вот и все.

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

БИ 2. Утилита создания

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

createdb super_awesome_application -U patrick

Здесь я вызвал GUSEDB Утилита и передала это Патрик пользователь для подключения к базе данных. Именно этот пользователь, чьи разрешения будут проверены, чтобы выполнить команду создания.

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

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

psql postgres -U patrick 
postgres=> ALTER DATABASE super_awesome_application RENAME TO even_more_awesome_application; 
postgres=> \q

И вывод должен быть похож на:

PSQL ALLATE база данных

PostgreSQL Server.

Документация для Изменить базу данных

B.3. Резюме

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

Теперь давайте посмотрим на некоторые популярные графические инструменты для управления PostgreSQL на MacOSX.

Внутри Популярный GUI для PostgreSQL на MacOS

До сих пор мы довольно сильно сосредоточены на инструментах командной строки для управления нашей установкой Postgres. Однако для некоторых вещей, что это трудоемкий и трудоемкий: например, если вы хотите быстрый просмотр данных, которые у вас есть в таблице, выталкивая это из инструментов командной строки, требуется больше времени, чем использование графического интерфейса. Сделайте это 100 раз в день, разрабатывая, что время начинает складывать!

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

1. Postico (https://eggerapps.at/postico/)

Postico — это современные Postgres Client для OSX, построенного той же разработчиком, который построил Postgrees.app (упомянутый выше). Это бесплатно, но вы можете купить лицензию, чтобы разблокировать дополнительные функции питания. Это графический интерфейс, который я использую для управления Postgres, потому что он построен специально для Mac и имеет красивый, очень простой в использовании (но мощный) UI. Он также включает в себя редактор SQL для сложных запросов.

Начать работу с Postico, просто:

  • Скачать его на https://eggerapps.at/postico/download/
  • Дважды щелкните загруженный ZIP-файл в Finder
  • Перетащите извлеченные Postico.app Файл в папку приложений
  • Найдите Postico в LaunchPad и запустите приложение.

Вы увидите экран, который выглядит следующее (без каких-либо подключений к базе данных):

Постико

PostgreSQL Server.

Для подключения к вашей локальной базе данных:

  • Нажмите на «Новый любимый»
  • Дать ему легко запомнить имя
  • Вы можете оставить значения по умолчанию, введенные в полях
  • Если вы изменили Postgres Пароль пользователя выше, введите его в поле Пароль
  • Выпадать Варианты И выберите «Показать все базы данных» — в противном случае вам интересно, где ваши базы данных!

Postico New. любимый

PostgreSQL Server.
  • Нажмите «Готово», чтобы сохранить его
  • Затем нажмите кнопку «Connect».
  • Вы закончили!

Постико подключен

PostgreSQL Server.

Прочитайте Документация постикова Чтобы узнать, как использовать удивительные функции Postico!

2. pgadmin (https://www.pgadmin.org/)

PGADMIN является самым старым из Postgres Guis, его первая версия выпускается всего через несколько месяцев после первого выпуска Postgre в 1996 году. Выписав несколько раз, он может работать на Linux, MacOSX и Windows и включает в себя мощные инструменты управления базами данных, включая редактор SQL Syntax. Предназначен для запуска как на клиентских машинах, так и на развернутых серверах, PGAdmin способен обращаться с усовершенствованными случаями, которые не могут.

Чтобы начать с pgadmin, просто:

  • Скачать его на https://www.pgadmin.org/download/macos4.php.
  • Дважды щелкните файл загруженного изображения диска (DMG) в папке загрузки
  • Перетащите приложение PGADMIN 4 в папку приложений
  • Найдите PGADMIN в LaunchPad и запустите приложение.

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

pgadmin.

PostgreSQL Server.

Для подключения к вашей локальной базе данных:

  • Щелкните правой кнопкой мыши на «Сервера» и выберите Создать => Сервер
  • Дайте ему легко запомнить имя и снимите флажок «Соединить сейчас»
  • Для адреса сервера введите локальный
  • Вы можете оставить значения по умолчанию, введенные в полях
  • Если вы изменили Postgres Пароль пользователя выше, введите его в поле Пароль

Postico New. любимый

PostgreSQL Server.
  • Нажмите «Сохранить», чтобы сохранить его
  • Ваш новый сервер появится в списке серверов
  • Нажмите на ваш новый сервер и введите пароль еще раз, чтобы подключиться
  • Вы закончили!

Пигадмин подключен

PostgreSQL Server.

Прочитайте PGADMIN Документация Чтобы узнать, как использовать удивительные функции Postico!

3. NaviCat (https://www.navicat.com/products/navicat-for-postgresql)

NaviCat без сомнения, один из лучших органов управления на уровне предприятия для PostgreSQL. Обладая не только редактором и базой данных SQL и базой данных, таблицей и строк, NavICAT также имеет модели данных, который позволяет вам графически разработать и отладки ваших схем базы данных. Однако, хотя NaviCat поставляется с 14-дневная бесплатная пробная версия, его лицензии варьируются от 100 до 250 долларов.

Начать с NaviCat, просто:

  • Скачать его на https://www.navicat.com/download/navicat-for-postgresql.
  • Дважды щелкните загруженный образ диска (NaviCat112PGSQLEN.DMG) в папке загрузки
  • Перетащите приложение NaviCat в папку приложений
  • Найдите NaviCat в LaunchPad и запустите приложение.

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

Навигация

PostgreSQL Server.

Для подключения к вашей локальной базе данных:

  • Нажмите «Подключение»
  • Заполните диалоговое окно, при условии, используя ту же информацию, что и выше
  • Нажмите «ОК», чтобы сохранить соединение.
  • Дважды щелкните новое соединение в списке слева, и вы подключены. Вот и все!

NaviCat Connect

PostgreSQL Server.

Прочитайте NaviCat Online Manual Чтобы узнать, как использовать удивительные функции Postico!

V. Резюме

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

  • Установите PostgreSQL Server на MacOSX с помощью домелки
  • Используйте инструменты командной строки Postgres для настройки Postgres:
    • Используйте PSQL Инструмент командной строки для просмотра информации о базе данных
    • Создайте новый пользователь, используя PSQL и Создать пользователя
    • Изменить пароль пользователя
    • Создайте базу данных, используя PSQL и создавать
    • Изменить имя базы данных
    • Разрешить разрешения доступа к базе данных для конкретного пользователя

Мы также приняли краткое посмотрение некоторых популярных инструментов управления на основе GUI для Postgres, включая Postico, Pgadmin и NaviCat.

Удачи! Иметь веселье Postgres-ing!

VI. использованная литература

Домашняя страница PostgreSQL Postgresql. Документация

Популярные Postgres GUI клиенты

Оригинал: «https://www.codementor.io/@engineerapart/getting-started-with-postgresql-on-mac-osx-are8jcopb»