Re: PostgreSQL - как подружить с Windows?
От: m2l  
Дата: 10.05.19 09:25
Оценка: 12 (1) +1
Здравствуйте, AlexGin, Вы писали:

AG>Так как БД представляет собой директорий "data" (с вложенными поддиректориями и файлами) — то первый вопрос:

Нормальные люди экспортируют/импортируют базу через pg_dump/pg_restore.

AG>Как настроить сервер, установленный в ОС Windows 10 Pro, на работу с данным каталогом?


Я думаю тебе проше будет сделать так:
1. Штатно устанавливаешь PostgreSQL её инсталятором.
2. Выполняешь первый запуск.
3. Останавливаешь сервер СУБД.
4. В директории куда установил СУБД папку data меняешь на свою директорию (старую Data переименовываешь, новую копируешь на её место).
5. Сравниваешь права ntfs старой и новой data — и делаешь у новой такие же, как у сделанной инсталятором.
6. Штатно запускаешь СУБД.

Если версии сервера СУБД и его разрядность (32/64 — обрати внимание) идентичны тому, где твоя папка была раньше — все заработает.

AG>Так, предположим, что база у меня в папке C:\TEMP\ttt\data — как "скормить" этот путь серверу?

Указать путь при сборке из исходников, указать переменную окружения PGDATA, указать в файле postgresql.conf или через параметр командной строки -D

AG>Как проверить, с каким каталогом данных работает в данный момент сервер?

Использовать pgsql — подконектится к работающему экземпляру СУБД и выполнить SQL запрос:
SHOW data_directory;

AG>Как правильно прописать путь к "data" и проконтролировать, что новый путь вступил в силу?

Замени своим каталогом уже существующий. Чё мучатся то?

AG>Второй вопрос (так как каталог "data" имеется, а пароль — нет): установка работы без пароля — судя по описанному здесь:

AG>https://stackoverflow.com/questions/18587710/change-reset-postgresql-user-password-on-windows-7
AG>- установить опцию "trust" в файле pg_hba.conf в каталоге "data"? Верно?
Да, все верно.

AG>И наконец, такой вот вопрос: если у прежнего пользователя БД она работала с сервером Win32 (x86), могу ли я

AG>запустить под сервером x64 или нет?
Конечно. Сначала запускаешь под x86 туже версию. Делаешь для базы данных pg_dump. Сносишь все это, ставишь x64 (можно версию поновее/старее) и выполняешь pg_restore.
Я может и путаю, но мне казалось у postgres-а журналы тоже сильно завязаны на архитектуру.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.