Я використовую додаток PostgreSql для mac ( http://postgresapp.com/ ). Раніше я його використовував на інших машинах, але це створює певні проблеми при установці на мою книгу. Я встановив додаток і запустив:
psql -h localhost
Він повертає:
psql: FATAL: database "<user>" does not exist
Здається, я навіть не можу запустити консоль, щоб створити базу даних, яку вона намагається знайти. Те саме відбувається, коли я просто бігаю:
psql
або якщо я запускаю psql зі спадного меню програми:
Статистика машини:
OSX 10.8.4
psql (PostgreSQL) 9.2.4
Будь-яка допомога вдячна.
Я також спробував встановити PostgreSql через homebrew, і я отримав ту саму проблему. Я також прочитав сторінку документації щодо додатків, де зазначено:
Коли Postgres.app вперше запускається, він створює базу даних US USER, яка є базою даних за замовчуванням для psql, коли жоден не вказаний. Користувач за замовчуванням - US USER, без пароля.
Тому, здавалося б, додаток не створює $ USER, однак я кілька разів встановив-> видалив-перевстановив, тож він повинен бути чимось із моєю машиною.
Я знайшов відповідь, але не впевнений, як саме вона працює, тому що користувач, який відповів на цю тему -> Отримання Postgresql запуск у Mac: База даних "postgres" не існує , не слідкував за цим. Я використовував таку команду, щоб отримати psql для відкриття:
psql -d template1
Залишаю це без відповіді, поки хтось не зможе надати пояснення, чому це працює.
createdb <user>
працював для мене.
psql -U user -d postgres
, це гарантує, що користувач підключений до бази даних postgres, яка вже є. Тому нам потрібно передавати базу даних також під час входу.
psql -d postgres -U postgres -h localhost
показує? Без прапорців він за замовчуванням користувач CLI, і я б сказав, що він за замовчуванням призначений для "postgres" адміністратора db, але у мене немає Mac для тестування.