postgres
учетная запись пользователя
Создание учетной записи пользователя специально для Postgres, обычно называемой postgres
, является обычной частью установки Postgres.Скорее всего, ваше приложение установщика запросило у вас пароль для назначения этой новой учетной записи пользователя.
Одной из причин этого является security : файлы данных базы данных и файлы конфигурации безопасности хранятся в папках, принадлежащихпользователь postgres
.Таким образом, если ваша основная учетная запись пользователя взломана, злоумышленник еще не имеет доступа к базе данных (часто наиболее ценная вещь в хранилище).Злоумышленник должен прыгнуть через несколько обручей, чтобы скомпрометировать Postgres.Кроме того, отдельное владение предотвращает непреднамеренное использование другими приложениями файлов Postgres.
Вы обнаружите, что Postgres гораздо более ориентирован на предприятия, чем другие продукты, такие как MySQL.Это означает блокировку для безопасности.Другой пример: Postgres по умолчанию настроен на , а не для приема соединений по сети.Чтобы разрешить подключения с других компьютеров, необходимо изменить конфигурацию.Неудобно для новичка, но более безопасно.Подобно решетке на руле вашего автомобиля и засовам на дверях, повышенная безопасность всегда означает больше шагов и больше раздражения.
Использование виртуальной машины
Установка учетной записи пользователя postgres
- это одна из вещей, которая делает Postgres довольно тяжелой установкой.Тем, кто изучает Postgres, я предлагаю использовать виртуальную машину для Postgres.Что-то вроде:
Чтобы удалить Postgres, просто отмените vm.
Postgres.app для macOS
Другой вариант для пользователя Mac: Postgres.app , созданный человеком, который создал одну из первых реализаций Postgres-as-a-Service ( Heroku ).Я не использовал Postgres.app , но я понимаю, что он оборачивает Postgres, поэтому он не устанавливает учетную запись пользователя postgres
.Кроме того, Postgres запускается и останавливается при запуске и выходе из приложения, а не работает в фоновом режиме все время.
Имейте в виду: у вас могут быть конфликты с Postgres.app на Mac, где у вас уже есть обычная установка.Я предлагаю вам сначала осторожно удалить обычные Postgres с вашего Mac перед установкой Postgres.app.Удаление включает в себя поиск и удаление различных файлов и папок в разных местах.
База данных как услуга (DBaaS)
Другой вариант, позволяющий избежать локальной установки, - это расширение возможностей запуска Postgres какоказание услуг.Это иногда называют «управляемым Postgres», потому что поставщик поддерживает установку Postgres от вашего имени.Вы просто используете Postgres для создания своей базы данных, но вы не полностью контролируете Postgres в таком сервисе.
Некоторые примеры:
Мой опыт
Лично я часто устанавливаю Postgres на Mac, используя Установщик EnterpriseDB.com .Эта компания продает версии Postgres с добавленной стоимостью, но любезно предоставляет программу установки для простого Postgres, как услугу для сообщества.
Я также использовал этот же установщик из EnterpriseDB.com для установки на ParallelsВМ работает под управлением MacOS в качестве гостевой ОС внутри ВМ на MacBook Pro, на котором в качестве хоста используется MacOS.Вы можете легко настроить виртуальную машину для совместного использования IP-адреса хост-компьютера Mac в сети или указать виртуальный сетевой адрес виртуальной машины, который может быть полезен для работы demo / dev / test.
В-третьих, я установилPostgres на FreeBSD на DigitalOcean.com.
AlТри из этих вариантов сработали для меня.Что предпочтительнее, зависит от сценария.Например, подход DigitalOcean.com хорош, если я хочу, чтобы коллеги могли обращаться к базе данных 24x7 без моего собственного MacBook.
Это обсуждение для разработки.Для критически важного развертывания я настоятельно рекомендую использовать мощное серверное оборудование с памятью с исправлением ошибок и резервным хранилищем, таким как RAID или ZFS pool .Postgres чрезвычайно надежен, но зависит, конечно, от надежного оборудования.
Ваш тег говорит Postgres 9.1.Эта версия довольно старая сейчас.Я предлагаю использовать последнюю версию, 11.2.Кстати, система нумерации версий изменилась для postgres.Первое число теперь является примерно ежегодным номером выпуска, который, вероятно, требует от вас сброса и перезагрузки данных для обновления, а второе число - совместимые обновления.