Перезагрузить postgresql mac os

Обновлено: 06.07.2024

psql: не удалось подключиться к серверу: нет такого файла или каталога. Это сервер, работающий локально, и прием соединений в сокетном домене Unix "/tmp/.s.PGSQL.5432"?

Я получаю следующую ошибку:

postgres не может получить доступ к файлу конфигурации сервера "/usr/local/pgsql/data/postgresql.conf": нет такого файла или каталога

Я удалил и переустановил Postgresql через Homebrew, но проблема не устранена. Я совершенно не понимаю, как это сделать. Любая помощь будет оценена.

Запустите эту команду, чтобы запустить сервер вручную:

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

Для чистой установки postgresql в Mac OS процесс будет (используя варить ) команды):

, тогда, если вы хотите автоматически запускать postgresql при входе в систему:

, иначе вы просто хотите запустить его в любое время:

Если ваш случай более сложный, давайте brew uninstall postgresql и повторите эти шаги.

Надеюсь, что это поможет!

Проблема также может быть связана с разбитым процессом, который оставил файл postmaster.pid .

Я продолжал получать вышеуказанную ошибку, и ни одно из вышеперечисленных решений не работало для меня. Наконец, следующее решение решило мою проблему в Mac OS X

Установка postgres с использованием варева

Установить услуги по приготовлению пива

Чтобы запустить postgres в качестве фоновой службы

Чтобы остановить postgres вручную

Мы также можем использовать сервисы пивоварения для перезапуска Postgres

Я получал то же самое

цикл Homebrew install /start /stop /restart безрезультатно .

Наконец, brew postgresql-upgrade-database работал.

Кажется, я был на 9.6 вместо 10.4, и что-то мое последнее обновление App Store перезапустило все мои серверы баз данных .

Я просто раскомментирую /etc/postgresql/9.5/main/postgresql.conf

и перезапустите postgres. И для меня это работает.

Недавно я пошел по аналогичной проблеме. есть еще одна проблема и решение. Я запускал 2 версии postgres (9.3 и 9.6), хотя сервер был настроен на работу на 2 разных портах, но некоторые из них, как команда psql в bash пытаются подключиться к порту по умолчанию 5432. Убедитесь, что ваш сервер запущен и проверьте настройки вашего порта, затем запустите psql -p <port> postgres . Решение изменяет порт.

Это происходит, когда сервер postgres не запущен. Шаги по правильной установке Postgres через Homebrew на MAC:

brew install postgres

initdb /Users/<username>/db -E utf8 [Это инициализирует postgres, чтобы использовать данный каталог в качестве каталога базы данных. Обычно не рекомендуется использовать каталог пользователя для хранения базы данных. Измените файл sudoers, чтобы добавить initdb и подобные команды, а затем запустите initdb on /usr /local /var /postgres]

pg_ctl -D /Users/<username>/db -l logfile start [После достижения успеха с шага 2 он предложит выполнить шаг 3. Эта команда вручную запускает сервер.]

Я долго искал, и это было самое чистое и аккуратное решение:

Недавно я обновил Postgres с 9.2 до 9.3 с использованием обновлений для повышения производительности. Процесс был плавным, а 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

использованиеhomebrewДля установки терминал выполняет следующие команды:

Проверьте установленную версию:

Запустите, остановите и перезапустите сервис:

Итак, мы запустили сервис postgres в терминале.

Установить автоматический запуск

Удалить postgreSQL

Конечно, это для установки с homebrew, чтобы удалить как это:

Отмените запуск службы (если настроен):

Ну, основные услуги по установке и настройке были завершены здесь.

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

Подключиться к базе данных

Введите следующую команду для подключения к базе данных:

Более практичные команды:

Установить pgAdmin4

Сначала скачайте и установитеpgAdmin4, А затем подключитесь к нашему локальному серверу PostgreSQL.
Откройте pgAdmin4, выберите Серверы -> Создать -> Сервер

Заполните в целом и сохраните

Заполните Connection, заполните пользователей, созданных ранее в базе данных, используйте свои собственные имя пользователя и пароль (пользователи базы данных могут добавлять их самостоятельно, по умолчанию текущий пользователь компьютера). Затем нажмите Сохранить.

Получить postgresql-провайдера

Добавьте зависимые библиотеки в Package.swift:

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

Справочный провайдер

Затем добавьте новый поставщик в метод 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, все еще полагаясь на расширение протокола:

Когда вы добавляете, удаляете, изменяете и проверяете Festival через Fluent, если в базе данных нет соответствующей таблицы, таблица будет создана автоматически для вас. Теперь давайте напишем метод Post в Routes.swift, чтобы проверить его:

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

Теперь откройте свою базу данных и посмотрите. Во время запроса Vapor автоматически создали три таблицы для вас.

Прикосновение не было успешным, поэтому я сделал это вместо этого:

Но когда я пытаюсь запустить сервер Ruby на сервере Rails, я все еще вижу это:

Работает ли сервер на хосте "localhost" и принимает ли он его TCP/IP-соединения на порту 5432?

Я обнаружил, что там нет никакого файла pg_hba.conf (только файл pg_hba.conf.sample), поэтому я изменил образец и переименовал его (чтобы удалить .sample). Вот его содержание:

Но я этого не понимаю:

Это кажется странным:

Хотя, я действительно сделал это:

Вот я и сделал это:

Вот я и попробовал это сделать:

Менеджер пакетов Homebrew включает в себя списки launchctl для автоматического запуска. Для получения дополнительной информации выполните команду brew info postgres .

Запускать вручную

pg_ctl -D /usr/local/var/postgres start

Остановка вручную

pg_ctl -D /usr/local/var/postgres stop

Запускать автоматически

"To есть файл launchd начать postgresql теперь и перезагрузка при входе в систему:"

brew services start postgresql

Каков результат pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start ?

Каков результат pg_ctl -D /usr/local/var/postgres status ?

Убедитесь, что в pg_hba.conf включены tcp localhost соединений:

Проверьте listen_addresses и порт в postgresql.conf:

egrep 'listen|port' /usr/local/var/postgres/postgresql.conf

Уборка

PostgreSQL , скорее всего, был установлен через Homebrew, Fink , MacPorts или установщик EnterpriseDB.

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

Если вы хотите вручную запустить и остановить PostgreSQL (установленный через Homebrew ), то самый простой способ-это:

Если у вас есть конкретная версия, обязательно добавьте к ней суффикс. Например:

У меня была почти такая же проблема, и вы процитировали команду initdb как исправление. Это тоже было решение для меня, но я не видел, чтобы кто-то разместил его здесь, так что для тех, кто его ищет:

Если ваш компьютер был внезапно перезапущен

Возможно, вы захотите запустить сервер PostgreSQL, но этого не произошло.

Во-первых, вы должны удалить файл /usr/local/var/postgres/postmaster.pid . Затем вы можете перезапустить службу, используя один из многих других упомянутых методов в зависимости от вашей установки.

Вы можете проверить это, посмотрев на журналы PostgreSQL, чтобы увидеть, что может происходить: tail -f /usr/local/var/postgres/server.log

Для конкретной версии:

Другой подход-использование lunchy gem (обертка для launchctl):

Для начала PostgreSQL:

Чтобы остановить PostgreSQL:

Вот мои два цента: я сделал псевдоним для postgres pg_ctl и поместил его в файл .bash_profile (моя версия PostgreSQL-9.2.4, а путь к базе данных - /Library/PostgreSQL/9.2/data ).

Запустите новый terminal.

А потом? Вы можете запустить/остановить свой сервер PostgreSQL с помощью этого:

Самый чистый способ добраться до start/stop/restart PostgreSQL, если вы установили его через brew , - это просто выгрузить и/или загрузить конфигурационный файл launchd , который поставляется вместе с установкой:

Первая строка остановит PostgreSQL, а вторая-запустит его. Нет никакой необходимости указывать какие-либо каталоги данных и т. д., Так как все находится в этом файле.

Чтобы запустить сервер PostgreSQL:

Чтобы завершить работу сервера PostgreSQL:

Вы также можете создать псевдоним через CLI, чтобы сделать его проще:

С их помощью вы можете просто ввести "pg-start", чтобы запустить PostgreSQL и "pg-stop", чтобы закрыть его.

Для тестовых целей, я думаю, что приложение PostgreSQL - это лучший вариант!

Запустите приложение, и сервер заработает.

Закройте приложение, и сервер отключится.

При установке PostgreSQL с помощью Homebrew ,

в конце вывода вы увидите следующие методы запуска сервера:

Я думаю, что это лучший способ.

Для удобства вы можете добавить псевдоним в свой файл .profile.

У меня была та же проблема, и я выполнил все обновления с первого поста. Но после проверки лог-файла,

Я вижу истинную причину:

После изменения разрешений на этот каталог,

сервер PostgreSQL запустился.

Каждый раз проверяйте файл журнала.

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

Инициализируйте новую базу данных PostgreSQL в новом каталоге:

Запустите сервер на переднем плане ( Ctrl + C для остановки сервера):

В другом сеансе shell подключитесь к серверу

PostgreSQL интегрирован в Server.app , доступный через App Store в Mac OS X v10.8 (Mountain Lion). Это означает, что он уже настроен, и вам нужно только запустить его, а затем создать пользователей и базы данных.

Совет : Не начинайте с определения $PGDATA и так далее. Возьмите расположение файлов как есть.

У вас будет этот файл: /Библиотека/Сервер/PostgreSQL/Config/org.postgresql.postgres.plist

Процесс начался с аргументов:

/Applications/Server.app/Contents/ServerRoot/usr/bin/postgres_real -Д /Library/Server/PostgreSQL/Data -c listen_addresses=127.0.0.1. 1 -c log_connections=на -c каталог_журнала=/Library/Logs/PostgreSQL -c log_filename=PostgreSQL.log -c log_line_prefix=%Т -c log_lock_waits=на -c log_statement=ddl -c logging_collector=на -c unix_socket_directory=/private/var/pgsql_socket -c unix_socket_group=_postgres -c unix_socket_permissions=0770

Вы можете sudo:

Или подключиться:

Вы можете найти каталог данных, версию, состояние работы и так далее с помощью

Для целей разработки одним из самых простых способов является установка Postgres.app с официального сайта . Его можно запустить/остановить из папки Applications или с помощью следующих команд в terminal:

Если вы установили его с помощью Homebrew, то приведенной ниже команды должно быть достаточно.

Иногда это может не сработать. В этом случае следующие две команды определенно должны работать:

$ brew upgrade postgres

починил его для меня.

Это, конечно же, обновит вашу версию PostgreSQL и обновит/установит любые зависимости.

Предупреждение : делайте это, зная, что ваша версия PostgreSQL, скорее всего, изменится. Для меня это было не так уж и важно.

Я смог восстановить и запустить свой экземпляр, удалив существующий файл postmaster.pid, который был заблокирован и не допускал подключений.

Для MacPorts просто используйте команду load/unload и имя порта запущенного сервера:

возникает вопрос: как мне запустить сервер postgresql?

Касание не было успешным, поэтому я сделал это вместо:

Но когда я пытаюсь запустить сервер rails, я все еще вижу это:

Я обнаружил, что там не было pg_hba.conf (только pg_hba.conf.sample), поэтому я изменил образец и переименовал его (чтобы удалить .sample). Вот содержимое:

но я не понимаю этого

это кажется странным

хотя я сделал это:

поэтому я сделал это:

поэтому я попробовал это:

ОТВЕТЫ

Ответ 1

Диспетчер пакетов Homebrew включает списки launchctl для автоматического запуска. Для получения дополнительной информации запустите brew info postgres .

Начать вручную:

pg_ctl -D/usr/local/var/postgres start

Остановить вручную:

pg_ctl -D/usr/local/var/postgres stop

Начать автоматически:

Msgstr "Чтобы запустить, запустите postgresql сейчас и перезапустите при входе в систему:"

brew services start postgresql

Каков результат pg_ctl -D/usr/local/var/postgres -l/usr/local/var/postgres/server.log start ?

Каков результат pg_ctl -D/usr/local/var/postgres status ?

Убедитесь, что локальные соединения tcp включены в pg_hba.conf:

Проверьте listen_addresses и порт в postgresql.conf:

Убираться

Postgres, скорее всего, был установлен через Homebrew, Fink, MacPorts или установщик EnterpriseDB.

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

Ответ 2

Если вы хотите вручную запустить и остановить postgresql (установленный через homebrew), самый простой способ:

Ответ 3

У меня была почти такая же проблема, и вы указали команду initdb как исправление. Это также было для меня решением, но я не видел, чтобы кто-то разместил его здесь, поэтому для тех, кто ищет его:

Ответ 4

Если ваш компьютер был внезапно перезапущен

Сначала вы должны удалить файл /usr/local/var/postgres/postmaster.pid Затем вы можете перезапустить службу, используя один из многих других упомянутых методов в зависимости от вашей установки.

Вы можете проверить это, просмотрев журналы Postgres, чтобы узнать, что может происходить: tail -f /usr/local/var/postgres/server.log

Ответ 5

Другой подход заключается в использовании lunchy gem (обертки для launchctl):

Для запуска postgres:

Чтобы остановить postgres:

Для получения дополнительной информации обратитесь к: " Как установить PostgreSQL на Mac с Homebrew и Lunchy "

Ответ 6

Здесь мои 2 цента: я сделал псевдоним для postgres pg_ctl и поместил его в .bash_profile (моя версия postgresql - 9.2.4, а путь к базе данных -/Library/PostgreSQL/9.2/data).

Запустите новый терминал.

А потом? Вы можете запустить/остановить свой сервер postgresql следующим образом:

Ответ 7

Самый чистый путь для запуска/остановки/перезапуска postgres, если вы установили его через brew , - это просто выгрузить и/или загрузить файл конфигурации запуска, который поставляется с установкой:

Первая строка остановит postgres, и вторая строка запустит ее. Не нужно указывать какие-либо каталоги данных и т.д., Поскольку все в этом файле.

Ответ 8

Чтобы запустить сервер postgresql:

чтобы завершить сервер postgresql:

Вы также можете создать псевдоним через CLI, чтобы упростить его:

С их помощью вы можете просто ввести "pg-start", чтобы запустить Postgres и "pg-stop", чтобы закрыть его.

Ответ 9

В целях тестирования я считаю, что приложение PostgreSQL - лучший вариант!

Запустите приложение, и сервер запущен и работает. Закройте приложение, и сервер опустится.

Ответ 10

когда вы устанавливаете postgresql с помощью homebrew:

в конце вывода вы увидите, что эти методы запускают сервер:

Я думаю, что это лучший способ.

Вы можете добавить псевдоним в свой .profile для удобства.

Ответ 11

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

Инициализировать новую базу данных postgres в новом каталоге

Запустите сервер на переднем плане (ctrl-C, чтобы остановить сервер)

В другом сеансе оболочки подключитесь к серверу

Ответ 12

Я вижу истинную причину:

После изменения разрешения в этом каталоге

сервер postgres запущен.

Каждый раз проверяйте файл журнала.

Ответ 13

Ответ 14

PostgreSQL интегрирован в Server.app, доступный через App Store в Mountain Lion. Это означает, что он уже настроен, и вам нужно только запустить его, а затем создать пользователей и базы данных.

Совет. Не начинайте с определения $PGDATA и т.д., возьмите файлы, как есть.

У вас будет этот файл: /Library/Server/PostgreSQL/Config/org.postgresql.postgres.plist

Процесс начался с аргументов:

/Applications/Server.app/Contents/ServerRoot/usr/bin/postgres_real -D/Library/Сервер/PostgreSQL/Данные -c listen_addresses = 127.0.0.1. 1 -c log_connections = on -c log_directory =/Library/Журналы/PostgreSQL -c log_filename = PostgreSQL.log -c log_line_prefix =% t -c log_lock_waits = on -c log_statement = ddl -c logging_collector = on -c unix_socket_directory =/private/var/pgsql_socket -c unix_socket_group = _postgres -c unix_socket_permissions = 0770

Вы можете sudo:

Или подключиться:

Вы можете найти каталог данных, версию, статус запуска и т.д. с помощью

Ответ 15

В целях развития одним из простейших способов является установка Postgres.app с официального сайта . Его можно запустить/остановить из папки "Программы" или с помощью следующих команд в терминале:

Ответ 16

Ответ 17

Если вы установили с помощью brew, ниже команды должно быть достаточно.

И это иногда может не сработать, в этом случае ниже две команды должны определенно работать

Ответ 18

$ brew upgrade postgres

исправил это для меня.

Это, конечно же, обновит вашу версию postgres и обновит/установит любые зависимости. ПРЕДУПРЕЖДЕНИЕ: знайте, что ваша версия postgresql, скорее всего, изменится. Для меня это не было большой проблемой.

Ответ 19

Ответ 20

Для macports просто используйте команду load/unload и имя порта работающего сервера:

так что вам не нужно помнить, где /Library/LaunchDaemons/org.macports.postgresql96.plist файл /Library/LaunchDaemons/org.macports.postgresql96.plist

Ответ 21

Ответ 22

Если вы установили Postgres с помощью установщика EnterpriseDB, то, что предложил @Kenial, это путь.

Ответ 23

Для Mac/OSX мне очень нравится LaunchRocket для этого и других фоновых сервисов, которые я использовал в разработке.

Это дает вам хороший экран в ваших системных настройках, который позволяет запускать, перезагружать, запускать root при запуске.

Ответ 24

Это работало для меня каждый раз, вдохновленный Крейгом Рингером:

Ответ 25

Для полноты картины: проверьте, находитесь ли вы в экземпляре Tmux или Screen , запуск не будет работать оттуда.

Это решило это для меня.

Ответ 26

Есть некоторые крайние случаи, которые, возможно, будут полезны для кого-то:

Существует вариант, что у вас будет postgres.pid, заполненный некоторым PID. Но если вы перезагрузите компьютер, и до того, как postgress вернется снова, какой-то другой процесс примет этот PID. Если это произойдет, и pg_ctl status, и служба brew, спросив о статусе postgres, сообщат вам, что это UP. Просто PS AUX | grep и проверь, действительно ли это postgress

Ответ 27

это сработало для меня (macOS 10.13) sudo -u postgres /Library/PostgreSQL/9.6/bin/pg_ctl start -D /Library/PostgreSQL/9.6/data

Как установить PostgreSQL? Для Microsoft Windows , Mac OS X и Linux существует один установщик. Его можно скачать здесь . Кликните по иконке нужной версии установки PostgreSQL , соответствующей вашей операционной системе.

В некоторых из инструкций предполагается, что вы устанавливаете PostgreSQL 9.1. Если устанавливаете более новую версию, замените в этих инструкциях 9.1 на номер инсталлируемой вами версии СУБД.

Запустите установку

Когда программа попросит выбрать один из вариантов, сделайте следующее:

  • Когда вас попросят выбрать локаль, выберите UTF-8 . Если варианта UTF-8 в списке нет, выберите вариант UTF-8 в списке локалей для языка. Например, en_US.UTF-8 для английского языка США;
  • Если программа попросит установить StackBuilder – он инсталлирует некоторые дополнительные инструменты Web , репликации и ODBC , которые не требуются для CollectionSpace . Но может потребоваться инсталляция некоторых модулей PostgreSQL , таких как PostGIS .

Обратите внимание, что некоторые из перечисленных выше параметров могут не отображаться в зависимости от версии PostgreSQL и операционной системы.

Настройка PostgreSQL

Чтобы установленный PostgreSQL работал с CollectionSpace, необходимо настроить пользователей и изменить некоторые параметры.

  • Найдите конфигурационный файл pg_hba.conf . Он расположен в подкаталоге data каталога, в котором установлена PostgreSQL ;
  • Откройте этот файл в текстовом редакторе и следуйте приведенным ниже инструкциям;

В Mac OS X по умолчанию это папка /Library/PostgreSQL/9.1.
В Mac OS X нужно иметь права супер пользователя, чтобы редактировать любой из следующих файлов конфигурации.

Это ограничивает набор пользователей PostgreSQL , которым предоставляется локальный доступ к трем базам данных, используемым CollectionSpace: jbossdb , nuxeo и cspace . Например, только пользователь с именем cspace или супер пользователь PostgreSQL с именем postgres может получить доступ к базе данных cspace с локальной машины.

При установке PostgreSQL 9.x на Windows 7 может не принять термин samehost в столбце CIDR-ADDRESS . Если это произойдет, используйте адресную форму 127.0.0.1/32 :

  • Если нужно разрешить создание отчетов при подключении к БД с удаленных хостов, тогда следует добавить запись, подобную приведенной ниже, но указав свой адрес подсети. Приведенная ниже конфигурация позволит создавать отчеты удаленно с хостов в определенной подсети UC Berkeley . Для получения дополнительной информации о том, как указать адрес подсети, ознакомьтесь с документацией по pg_hba.conf для используемого релиза PostgreSQL .

Чтобы автор отчетов мог работать, придется внести еще одно изменение в значение listen_addresses в файле postgresql.conf . Подробнее о поиске этого файла рассказано ниже.

Если вы можете контролировать доступ к PostgreSQL через брандмауэр, то проще ввести значение listen_addresses «*» . Для большей безопасности можно ввести список разделенных запятыми IP-адресов , с которых будут связываться авторы отчетов.

Далее после PostgreSQL установки и настройки Windows нужно внести изменения в конфигурационный файл PostgreSQL :

  • Найдите файл postgresql.conf , находящийся в папке data каталога, в котором установлен PostgreSQL ;
  • Откройте этот файл в текстовом редакторе и внесите следующие изменения:

Значение переменной max_prepared_transactions , равное 64 , может оказаться большим для вашей системы. Если это так, установите меньшее значение.

Перезапустите службу PostgreSQL

Если вы являетесь пользователем root или sudo , можно выполнить следующую команду:

service postgresql restart

Убедитесь, что вы являетесь пользователем postgres :

Флаг -D указывает местоположение каталога данных PostgreSQL, который также может быть установлен как переменная среды PGDATA. По умолчанию его можно найти по адресу /Library/PostgreSQL/9.1/data.

Чтобы добавить PGDATA в качестве глобальной переменной среды в / etc / profile , выполните следующие шаги:

sudo vi /etc/profile

Затем добавьте следующую строку:

После этого можно будет выполнить предыдущую команду для перезапуска сервера PostgreSQL без флага -D .

Настройка типов данных

Откройте консоль PostgreSQL для базы данных template1 :

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

Под пользователем postgres выполните следующие две команды:

Это связано с тем, как Homebrew в Mac OS X и Mountain Lion конфликтуют с определенными системными библиотеками. Решение этой проблемы заключается в том, чтобы скопировать и связать версии библиотеки. PostgreSQL упакован в /usr/lib , где библиотеки хранятся в Mountain Lion .

Еще одним решением может стать пересмотр Homebrew и проверка совместимости с Mountain Lion .

При установке PostgreSQL на Mac OS X в один клик создается ярлык для оболочки PostgreSQL в каталоге Applications / PostgreSQL 9.0 / . Нажмите SQL Shell (psql).app , чтобы открыть новое окно терминала с запущенным psql .

Из этого окна терминала можно получить доступ к базе данных template1 , введя:

psql c template1

psql запускается из командной строки ( cmd ) Windows . Убедитесь, что путь к папке postgres bin хранится в переменной PATH , или просто вызовите ее с полным путем к месту расположения исполняемого файла psql :

psql -d template1 -U postgres

Выполните команды консоли:

Создайте пользователя csadmin

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

Закройте программу psql , введя q ( или нажав Ctrl + d ).

Теперь перезапустите сервер PostgreSQL еще раз ( как описано выше ).

Дополнительная настройка

Дополнительная настройка базы данных является необязательной! CollectionSpace будет выполняться, даже если ни одно из описанных ниже действий не будет выполнено.

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

PostgreSQL установка и настройка Windows выполняется через postgresql.conf . Откройте этот файл в текстовом редакторе и отредактируйте следующие значения:

Теперь через командную строку задайте значение kernel.shmmax . Оно должно как минимум равняться shared_buffer + 128MB :

Затем необходимо определить окончательное значение shmmax :

Откройте файл /etc/sysctl.conf .

Наконец, установите необходимое значение cache_size :

Для этого запустите ( и выведите статистику в мегабайтах ):

В результате на экране вы увидите что-то наподобие этого:

Эффективное значение для cache_size определяется путем сложения значений buffers и cached . В приведенном выше примере:

253 + 1226 = 1479

К этому числу добавляется значение shared_buffers , поэтому в общей сложности мы получаем:

1479 + 512 = 1991

Также задайте следующие значения:

Перезагрузите установленный PostgreSQL , чтобы изменения вступили в силу.

Мы закончили настройку PostgreSQL . Обратите внимание, что приведенные в этом разделе значения являются примерными. Их необходимо устанавливать в соответствии с настройками вашей системы. Более подробную информацию о настройках можно найти здесь .

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

Пожалуйста, опубликуйте свои отзывы по текущей теме статьи. За комментарии, отклики, подписки, лайки, дизлайки огромное вам спасибо!

Читайте также: