Моя цель - настроить Postgres, который я могу использовать для разработки моего приложения rails, а затем нажать его на Heroku, не изменяя файл конфигурации базы данных. Кажется, достаточно просто, не так ли?Что такое Postgres на OS X?
Я видел много вещей в Интернете о том, что PostgreSQL 9.2.x не работает на OS X 10.8, и я все еще пытаюсь заставить его работать с Rails. Не понимая, что версия PSQL поставляется с OS X, я решил ее установить. (ПРИМЕЧАНИЕ. Я как бы отлаживаю круги, поэтому, возможно, все было не так, как я ожидал.)
Я попытался загрузить и установить с помощью the official graphical installer listed here, и я перезагрузил свой Mac. Я видел, что была создана дополнительная учетная запись пользователя, и я быстро ее удалил. (Я знаю, я знаю, вероятно, что вызвало некоторую душевную болью по линии, но, похоже, не было разумно иметь дополнительную учетную запись пользователя.)
При запуске приложения для рельсов он не смог подключиться к postgres , Я попытался запустить psql из Terminal.
psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"?`
Затем я приступил к установке Postgres с доморощенным. Я установил homebrew, затем postgres. То же самое. Я немного поработал с Google и наткнулся на поток на форуме Postgres. Из того, что я получил от этого, было то, что что-то изменилось между OS X 10.7 и 10.8, но это не было причиной моей проблемы.
Далее я попытался использовать self-contained the Postgres.app. Теперь я смог создать пользователей и подключиться к базе данных. Rails смог подключиться к Postgres, но жаловался, что база данных, которую я определил в config.yaml
, отсутствовала. Поэтому я создал его - или так я думал.
Запуск CREATE DATABASE my_db
в «автономной» версии PSQL не сработал - даже если без автономного приложения PSQL будет иметь эту ошибку сокета. Затем я попытался создать нового пользователя с доступом для записи. Неа. CREATE
молчал.
Я попытался добавить localhost к переменной окружения и, похоже, решил проблему с портом, но теперь у Rails снова возникли проблемы с поиском Postgres.
Я удалил версию для варки. Я удалил инструменты предприятия и др. Еще не повезло. Перезагружать. Еще не повезло.
Я просто удалил заваривать и мой конфиг выглядит следующим образом:
development:
adapter: postgresql
database: my_db
pool: 5
timeout: 5000
host: localhost
port: 5432
Rails говорит база данных не существует.
Что мне нужно сделать, чтобы заставить Postgres работать с Rails 3.2.6 на Mac OS X 10.8.4 Mountain Lion?
Я очень хочу, чтобы кто-то найти человек, Apple, ответственные за их PostgreSQL встроенного по умолчанию установить и орать на них, пока они не перестанут класть его на порт по умолчанию (5432) и перестают помещать свои копии libpq и psql на пути. Это вызывает так много хаоса для пользователей Mac. Тем не менее, вы создали множество своих проблем здесь, например, «я видел, что была создана дополнительная учетная запись пользователя, и я ее быстро удалил», а с «это не сработало, я попробую другую упаковку без удаление предыдущего "подхода. –
Когда вы говорите: «Rails говорит, что база данных не существует», можете ли вы быть более конкретным? * Точная ошибка сообщение пожалуйста *. –