- PostgreSQL: зачем и как
- Установка PostgreSQL на Ubuntu 14.04
- Установка PostgreSQL на Mac OS X через Homebrew
- Установка PostgreSQL на Mac OS X через Postgresapp
- Проверка установки
- Базовые команды PostgreSQL
- Команды терминала psql
- Установка и подключение PostgreSQL на Mac Os
- Установка PostgreSQL на Mac Os
- Не обязательно
- Подключение к PostgreSQL на Mac OS
- Как подключиться к PostgreSQL на Mac OS
- Подключение в сторонней программе к БД
- DataGrip
- Исправление ошибок
- Читайте также
- Русские Блоги
- Установить базу данных PostgreSQL на macOS
- mac OS packages
- Interactive installer by EDB
- Platform support
- Postgres.app
- Homebrew
- MacPorts
- PostgreSQL не работает на Mac
PostgreSQL: зачем и как
По-умолчанию в качестве базы данных Rails предлагает использовать SQLite 3, автономную базу данных, которая неплохо подходит для получения первого опыта в разработке приложений. Одной из особенностей SQLite является невозможность одновременно выполнять более одной операции записи, поэтому чем скорее вы откажетесь от её использования, тем лучше. При разработке приложений зачастую практикуется подход, при котором development среда имеет минимум отличий от production среды. Это позволяет значительно уменьшить вероятность появления проблем, которые могут возникнуть из-за использования различных инструментов при разработке и при работе приложения в продакшене. Этот подход является одной из причин для того, чтобы задуматься об использовании PostgreSQL в разработке.
Здесь можно спросить себя: а почему именно PostgreSQL? Почему не MySQL или другая СУБД? Дело в том, что PostgreSQL стал фактически уже стандартом при работе над приложениями на Ruby on Rails. Он быстрый, расширяемый, адаптирован к высоким нагрузкам и использует такой подход к хранению данных, при котором достаточно сложно ошибиться, принимая те или иные решения (по сравнению, например, с MySQL).
Вот несколько ссылок, которые наглядно перечисляют все за и против:
Поскольку для разработки на Rails имеет смысл использовать OS X или ОС семейства Linux, рассмотрим установку PostgreSQL для Ubuntu и Mac OS X.
Содержание:
Установка PostgreSQL на Ubuntu 14.04
Во-первых, обновим удаленные репозитории:
Затем непосредственно установим PostgreSQL:
Строго говоря, база данных установлена. Убедимся в этом, войдя в терминал СУБД под стандартным пользователем postgres:
Если СУБД установлена корректно, в терминале появится ответ с приглашением к вводу команд:
Установка PostgreSQL на Mac OS X через Homebrew
Одним из наиболее простых способов установки PostgreSQL на OS X является Homebrew. Обновим список пакетов:
Если вы хотите, чтобы СУБД запускалась при старте системы, выполните команду:
Установка PostgreSQL на Mac OS X через Postgresapp
Помимо Homebrew СУБД PostgreSQL можно установить так же при помощи специального комплекта приложений, доступного для скачивания по адресу http://postgresapp.com/.
Пакет включает в себя саму PostgreSQL, PostGIS и еще несколько популярных расширений, отсутствие которых, впрочем, нисколько не помешает вам начать разрабатывать Rails-приложения использующие PostgreSQL.
Установка производится перетаскиванием иконки из загруженного пакета в папку Applications (Программы).
Проверка установки
Создадим тестовую базу данных:
Выйдем из терминала СУБД, введя команду \q и попробуем войти туда снова, используя свежесозданного пользователя:
После ввода пароля, терминал PostgreSQL поприветствует нас приглашением к вводу команд:
Для надежности проверим, может ли пользователь работать с текущей базой данных:
Таблица unicorns создалась, значит все в порядке, PostgreSQL установлен и готов к работе.
Базовые команды PostgreSQL
Чтобы работать с PostgreSQL, необходимо знать некоторые базовые команды. Некоторые из них, наиболее полезные, приведены ниже.
Вход в PostgreSQL:
Стандартный администраторский вход:
Команды терминала psql
- \dt – показать все таблицы
- \q – выход из терминала psql
- \dn – показать все схемы
- \du – показать всех пользователей
- \d имя_таблицы — показать информацию о таблице
И помните, что в любой непонятной ситуации стоит обращаться к официальной документации: http://www.postgresql.org/docs/, которой, в отличии от доков к MySQL, удобно пользоваться 😉
Мы рассказываем, как стать более лучшим разработчиком, как поддерживать и эффективно применять свои навыки. Информация о вакансиях и акциях эксклюзивно для более чем 8000 подписчиков. Присоединяйся!
- mkdev
- Менторы
- Специализации
- Контент
- Стать ментором
- О проекте
- Для компаний
- Что такое менторство
- Как проходит обучение
- Цены
- FAQ
- Impressum
- Аккаунт
- Записаться
- Войти
- Соцсети
© Copyright 2014 — 2021 mkdev | Privacy Policy | Lang: Russian
Источник
Установка и подключение PostgreSQL на Mac Os
Устанавливаем PostgreSQL на Mac OS.
Установка PostgreSQL на Mac Os
Добавляем в автозапуск при старте системы Mac OS.
Также можно запустить вручную:
Не обязательно
Если автозагрузка не сработает. Можно провести такие манипуляции:
Директория автозагрузки находится здесь:
Добавляем в автозагрузку
Подключение к PostgreSQL на Mac OS
Подключение на Mac OS немного отличается от Linux. Проверим пользователей:
Для подключения указываем Owner из таблицы выше:
Как создать БД и пользователя, следовать инструкции:
https://ploshadka.net/postgresql/
Если коротко, то для локалки достаточно ввести в консоль:
Как подключиться к PostgreSQL на Mac OS
На localhost достаточно создать базу данных и подключиться к ней указав только её имя:
Остальное подхватиться по умолчанию.
Подключение в сторонней программе к БД
DataGrip
На примере программы DataGrip:
Исправление ошибок
Статья по исправлению некоторых ошибок с правами доступа.
Читайте также
Кстати, на сайте нет рекламы. У сайта нет цели самоокупаться, но если вам пригодилась информация можете задонатить мне на чашечку кофе в макдаке. Лайкнуть страницу или просто поблагодарить. Карма вам зачтется.
Источник
Русские Блоги
Установить базу данных PostgreSQL на macOS
Установить PostgreSQL
использованиеhomebrewДля установки терминал выполняет следующие команды:
Проверьте установленную версию:
Запустите, остановите и перезапустите сервис:
Итак, мы запустили сервис postgres в терминале.
Установить автоматический запуск
Удалить postgreSQL
Конечно, это для установки с homebrew, чтобы удалить как это:
Отмените запуск службы (если настроен):
Ну, основные услуги по установке и настройке были завершены здесь.
Создать базу данных:
Подключиться к базе данных
Введите следующую команду для подключения к базе данных:
Более практичные команды:
Установить pgAdmin4
Сначала скачайте и установитеpgAdmin4, А затем подключитесь к нашему локальному серверу PostgreSQL.
Откройте pgAdmin4, выберите Серверы -> Создать -> Сервер
Заполните в целом и сохраните
Заполните Connection, заполните пользователей, созданных ранее в базе данных, используйте свои собственные имя пользователя и пароль (пользователи базы данных могут добавлять их самостоятельно, по умолчанию текущий пользователь компьютера). Затем нажмите Сохранить.
Получить postgresql-провайдера
Добавьте зависимые библиотеки в Package.swift:
После добавления нам нужно снова открыть Xcode, чтобы получить пакет зависимостей:
Справочный провайдер
Теперь это эквивалентно «загрузке» нового провайдера. Чтобы использовать его, вам также необходимо «зарегистрировать» провайдера в системе, чтобы ваша система могла загрузить провайдера. Регистрация провайдера выполняется в файле Config + Setup.swift. Проект шаблона уже настроил FluentProvider для вас. Так как поставщик не является родным для системы, вам необходимо
Затем добавьте новый поставщик в метод setupProviders ():
Настроить PostgresSQL
Нам нужно настроить Postgres-Provider. в соответствии сREAD MEДля настройки создайте папку секретов в каталоге Config, затем создайте файл postgresql.json в папке секретов и добавьте следующий код:
Для работы с базой данных используйте удобный метод, предоставленный Fluent: Fluent по умолчанию сохранит данные в памяти, поэтому вам нужно изменить драйвер данных Fluent на postgresql. Откройте файл Config \ fluent.json и измените место, как показано ниже (вы должны пожаловаться на это, это слишком очевидно):
Конфигурация базы данных завершена
Используйте PostgresSQL
Создайте соответствующий файл Festival или Event и поместите его в каталог Models. Обратите внимание на ссылку в заголовке файла. Чтобы определить модель в Vapor, вам необходимо импортировать:
Все операции Swift над моделью выполняются по расширенному протоколу, вы можете обратиться к файлу Post.swift. Модель в Vapor намного сложнее, чем модель в клиенте. Во-первых, чтобы соответствовать Fluent, модель должна быть определена как класс и соответствовать протоколу модели, а затем реализовать следующие методы и конструкторы:
Vapor предоставляет вам возможность быстро создавать таблицы с помощью моделей. Еще через расширение протокола:
Иногда мы надеемся увидеть конкретную информацию о вновь созданном объекте в ответе. Но при настройке маршрутизации необходимо вернуть строку JSON, а не объект Swift. На этом этапе вам необходимо преобразовать объект Swift в строку JSON, все еще полагаясь на расширение протокола:
Как и Provider, Vapor будет работать только со всеми «зарегистрированными» препаратами, поэтому следующим шагом будет регистрация Festival в системе, открытие файла Config + Setup.swift и регистрация в соответствующем методе:
Когда вы добавляете, удаляете, изменяете и проверяете Festival через Fluent, если в базе данных нет соответствующей таблицы, таблица будет создана автоматически для вас. Теперь давайте напишем метод Post в Routes.swift, чтобы проверить его:
Я рекомендую использовать почтальон для инициирования почтового запроса. Введите запрошенный адрес в почтальоне, инициируйте запрос, и вы увидите, что возвращаются данные JSON:
Теперь откройте свою базу данных и посмотрите. Во время запроса Vapor автоматически создали три таблицы для вас.
Источник
mac OS packages 
You can get macOS PostgreSQL packages from several different sources.
Interactive installer by EDB
Download the installer certified by EDB for all supported PostgreSQL versions.
This installer includes the PostgreSQL server, pgAdmin; a graphical tool for managing and developing your databases, and StackBuilder; a package manager that can be used to download and install additional PostgreSQL tools and drivers. Stackbuilder includes management, integration, migration, replication, geospatial, connectors and other tools.
This installer can run in graphical, command line, or silent install modes.
The installer is designed to be a straightforward, fast way to get up and running with PostgreSQL on macOS.
Advanced users can also download a zip archive of the binaries, without the installer. This download is intended for users who wish to include PostgreSQL as part of another application installer.
Platform support
The installers are tested by EDB on the following platforms. They will generally work on newer versions of macOS as well:
PostgreSQL Version | 64-bit macOS Platforms |
---|---|
13 | 10.14 — 11.0 |
12 | 10.13 — 10.15 |
11 | 10.12 — 10.14 |
10 | 10.11 — 10.13 |
9.6 | 10.10 — 10.12 |
Postgres.app
Postgres.app is a simple, native macOS app that runs in the menubar without the need of an installer. Open the app, and you have a PostgreSQL server ready and awaiting new connections. Close the app, and the server shuts down.
Homebrew
PostgreSQL can also be installed on macOS using Homebrew. Please see the Homebrew documentation for information on how to install packages.
A list of PostgreSQL packages can be found using the Braumeister search tool.
MacPorts
PostgreSQL packages are also available for macOS from the MacPorts Project. Please see the MacPorts documentation for information on how to install ports.
A list of PostgreSQL packages can be found using the portfiles search tool on the MacPorts website.
PostgreSQL packages are available for macOS from the Fink Project. Please see the Fink documentation for information on how to install packages.
A list of PostgreSQL packages can be found using the package search tool on the Fink website.
Copyright © 1996-2021 The PostgreSQL Global Development Group
Источник
PostgreSQL не работает на Mac
Ошибка в полном объеме гласит:
PSQL: не удалось подключиться к серверу: нет такого файла или каталога. Работает ли сервер локально и принимает подключения через сокет домена Unix «/tmp/.s.PGSQL.5432»?
Я второй раз настраиваю Postgresql через Homebrew на моем Mac, и я понятия не имею, что происходит. Раньше это работало. В какой-то момент я, должно быть, ввел команду, которая все испортила. Я не уверен. Теперь всякий раз, когда я ввожу команду SQL из командной строки, я получаю вышеуказанное сообщение. Я запустил команду, чтобы проверить, работает ли сервер, и, очевидно, это не так. Если я пытаюсь запустить сервер с помощью
$ postgres -D / usr / local / pgsql / data
Я получаю следующую ошибку:
postgres не может получить доступ к файлу конфигурации сервера «/usr/local/pgsql/data/postgresql.conf»: такого файла или каталога нет
Я удалил и переустановил Postgresql через Homebrew, но проблема остается. Я полностью в растерянности относительно того, как заставить это работать. Любая помощь будет оценена.
Проблема также может быть связана с аварийным процессом, который оставил postmaster.pid файл позади.
Запустите эту команду, чтобы вручную запустить сервер:
Я получал то же самое
петля Homebrew установить / запустить / остановить / перезапустить безрезультатно .
Наконец-то brew postgresql-upgrade-database сработало.
Кажется, я был на 9.6 вместо 10.4, и мой последний перезапуск App Store перезапустил все мои серверы баз данных .
Я только что решил ту же проблему. Это просто потому, что я забыл правильно запустить его перед использованием.
Для чистой установки postgresql в Mac OS процесс будет (используя команду brew ):
тогда, если вы хотите автоматически запускаться postgresql при входе в систему:
или вы просто хотите запустить его в любое время:
Если ваш случай более сложный, давайте brew uninstall postgresql повторим эти шаги.
Надеюсь, это поможет!
Я продолжал получать вышеупомянутую ошибку, и ни одно из вышеупомянутых решений не работало для меня. Наконец, следующее решение решило мою проблему в Mac OS X
Установите postgres, используя brew
Установить Brew Services
Для запуска postgres в качестве фонового сервиса
Чтобы остановить postgres вручную
Мы также можем использовать Brew Services для перезапуска Postgres
Это происходит, когда сервер postgres не работает. Шаги, чтобы правильно установить Postgres через Homebrew на MAC:
brew install postgres
initdb /Users/ /db -E utf8 [Это инициализирует postgres для использования данного каталога в качестве каталога базы данных. Обычно не рекомендуется использовать каталог пользователя для хранения базы данных. Отредактируйте файл sudoers для добавления initdb и аналогичных команд, а затем запустите initdb в / usr / local / var / postgres]
pg_ctl -D /Users/ /db -l logfile start [После успешного выполнения шага 2 будет предложено запустить шаг 3. Эта команда запускает сервер вручную.]
Это сработало для меня. Измените каталог postgresql в соответствии с версией вашей системы.
Общий путь- rm /usr/local/var/postgres/postmaster.pid
но для postgresql@9.6 в моем системном пути есть rm /usr/local/var/postgresql@9.6/postmaster.pid
перезапустите postgresql@9.6- brew services restart postgresql@9.6
Я просто раскомментирую в /etc/postgresql/9.5/main/postgresql.conf
и перезапустите postgres. И для меня это работает.
недавно я прошел через аналогичную проблему. есть только другая проблема и решение. Я запускал 2 версии postgres (9.3 и 9.6), хотя сервер был настроен на работу на 2 разных портах, но кое-как команда psql на bash пытается подключиться к порту по умолчанию 5432. Убедитесь, что сервер работает, и проверьте, настройки вашего порта, затем запустите psql -p
postgres . Решением является изменение порта.
Я долго искал, и это было самое чистое и аккуратное решение:
Недавно я обновил Postgres с 9.2 до 9.3, используя bg upgrade postgres. Процесс прошел гладко, и pg_upgrade — очень удобный инструмент.
Тем не менее, возникли проблемы, когда я попытался запустить любые спецификации, необходимые для подключения к Postgres. Хотя Postgres определенно бежал, я вдруг получил:
не удалось подключиться к серверу: нет такого файла или каталога (PG :: ConnectionBad). Сервер работает локально и принимает подключения через сокет домена Unix «/var/pgsql_socket/.s.PGSQL.5432»? Проблема заключалась в том, что новая версия Postgres прослушивает /tmp/.s.PGSQL.5432. Я мог бы возиться с конфигом и заставить Postgres использовать сокет домена, которым он был ранее, или четко указать Rails, как подключаться, но оба этих подхода казались работой, которую мне не нужно было делать. Я ни разу не велел Rails подключаться к postgres по этому пути, Rails предполагал это, и теперь его предположения были неверны.
Исправить это просто, если немного удивительно. Когда вы устанавливаете гем ‘pg’, он определяет, какая версия Postgres установлена, и соответственно устанавливает путь к сокету домена. Решение так же просто, как переустановить драгоценный камень. $ gem uninstall pg $ cd my-rails-app/ $ bundle install
обновить его с помощью команды
если у вас есть следующая ошибка Команда ‘brew’ не найдена, но может быть установлена с помощью: sudo apt install linuxbrew-wrapper
затем установите его с помощью команды
Для меня это также произошло после перезагрузки, и ни одно из вышеперечисленных решений не помогло мне. После проверки журнала сервера вот так:
Поэтому я изменил права доступа следующим образом:
и все снова заработало, и жизнь была хорошей.
Следующие шаги помогают мне:
brew удалить postgresql brew установить postgresql brew postgresql-upgrade-database
Источник