Расположение базы данных postgresql на OS X?
Я уверен, что на это был дан ответ, но я не могу найти ответ.
Я установил postgresql с помощью Homebrew (brew install postgresql), который установлен в /usr/local/Cellar/postgresql. Послесловие в соответствии с инструкциями я сделал это:
If this is your first install, create a database with:
initdb /usr/local/var/postgres
Как я понимаю, initdb создает новый кластер баз данных. Итак, когда я сделал выше, это "postgres" имя базы данных и сама база данных или только все необходимые биты, которые нужны всем базам данных postgresql?
Где находится реальная база данных? Я новичок в postgresql и ищу файл или двоичный файл, который является базой данных. Итак, где находится база данных, и когда я создаю новую, куда она идет?
Ответы
Ответ 1
initdb
просто устанавливает структуру каталогов и таковую, что необходимо для создания новых баз данных. Чтобы создать базу данных, используйте createdb
:
СИНТАКСИС
createdb [option...] [dbname] [description]
ОПИСАНИЕ
createdb создает новую базу данных PostgreSQL.
Обычно пользователь базы данных, выполняющий эту команду, становится владельцем новой базы данных. Однако другой владелец может быть указан через опцию -O, если исполняющий пользователь имеет соответствующие привилегии.
createdb - оболочка вокруг команды SQL CREATE DATABASE [create_database (7)]. Между созданием баз данных с помощью этой утилиты нет эффективной разницы с помощью других способов доступа к серверу.
initdb
похож на создание новой файловой системы на жестком диске: сначала вы создаете файловую систему (initdb
), затем создаете файлы и каталоги (createdb
).
Фактические файлы базы данных будут находиться под /usr/local/var/postgres
после создания базы данных. Итак, просто создайте базу данных, а затем посмотрите, что нового или изменилось в /usr/local/var/postgres
. Не существует ни одного файла "dbname.db" или чего-либо подобного, каждая база данных представляет собой набор файлов с именами, которые имеют смысл только для сервера базы данных.
Ответ 2
В моем случае (не homebrew) местоположение данных находится в этом файле /Library/LaunchDaemons/com.edb.launchd.postgresql-9.3.plist
<array>
<string>/Users/me/bin/postgres/bin/postmaster</string>
<string>-D/Users/me/data/postgres</string>
</array>
Ответ 3
Система: MAC OS X 10.9.5
Теперь (вер. 9.4) это находится под директивой /Library/PostgreSQL
Если вы заходите туда, откройте папку с именем ver. вашего PG, а затем перейдите в папку data
, вы найдете свою БД. Это действительно набор много-много-разных различных двоичных и текстовых файлов (большинство из них называются длинными цифрами, такими как "92891
" или так...
Обратите внимание: чтобы открыть папку data
, вы должны открыть ее свойства (щелкните правой кнопкой мыши и выберите "Получить информацию" ), и вы сможете прочитать эту папку.
Я не предлагаю вам открывать разрешения RW, если вы не знакомы с этим, так как любое небольшое изменение может повлиять на всю вашу DB, что было бы грустно.
Удачи!