powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
10 сообщений из 10, страница 1 из 1
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031309
ddzia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет! Я в PostgreSQL пришел из другой СУБД, так что заранее извиняюсь за тупой(возможно) вопрос.
Дано:
- Один сервер PostgreSQL 12
- На нем db0, в ней таблица t0
- На нем db1, а в ней процедуры, которым необходим доступ к данным из db0.t0
- Скорее всего, вскоре db1 поедет на другой сервер

Проблема: Процедурам в db1 необходим доступ к данным из db0.t0.

Мои идеи:
- fdw(но чет страшнова-то выглядит)
- иметь таблицу с такой же схемой на db1 и настроить/разработать "репликацию"(мне кажется это хорошим вариантом, потому-что: 1) при переезде на другой сервер имеется своя копия данных. 2) на одну точку отказа меньше(потенциально))

Саратники, какие решения можете предложить?
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031322
fte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia,
dblink
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031371
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia знает толк в извращениях.
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031471
ddzia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mefman, че так?
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031490
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia
mefman, че так?

необходимость в дблинках - знак недочетов в архитектуре.
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031495
ddzia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mefman, возможно вы правы, критика приветствуется. предлагаю вам высказаться как бы вы организовали доступ к данным в этой ситуации.
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031499
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia,

Обычно ф-ции работающие с данными держат рядом с самими данными.
Разносить их по разным базам — это создавать себе лишние проблемы.

Если хотите разнести — используйте разные схемы в одной базе.
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031545
prustr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia,

Пользуюсь fdw для вытягивания данных с другого сервера. БОлее ни для чего его использовать не получается, есть ограничения ...
Использую только для удобства написания скриптов в php.
ПРи необходимости качнуть таблицу пользуюсь консольнгой командой:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
( export PGPASSWORD=pwdq1
  psql -U dev -h anothe.host. devbase \
  -c "copy (SELECT id, pavlin, mavlin FROM public.wtf) to stdout with binary" ) \
| 
( export PGPASSWORD=pwdq2
  psql -U para -h localhost dev \
   -c "copy wft (id, pavlin, mavlin) from stdin binary" )

#
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40031571
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ddzia
Всем привет! Я в PostgreSQL пришел из другой СУБД, так что заранее извиняюсь за тупой(возможно) вопрос.
Дано:
- Один сервер PostgreSQL 12
- На нем db0, в ней таблица t0
- На нем db1, а в ней процедуры, которым необходим доступ к данным из db0.t0
- Скорее всего, вскоре db1 поедет на другой сервер

Проблема: Процедурам в db1 необходим доступ к данным из db0.t0.

Мои идеи:
- fdw(но чет страшнова-то выглядит)
- иметь таблицу с такой же схемой на db1 и настроить/разработать "репликацию"(мне кажется это хорошим вариантом, потому-что: 1) при переезде на другой сервер имеется своя копия данных. 2) на одну точку отказа меньше(потенциально))

Саратники, какие решения можете предложить?


1)если доступ нужен часто и в процессе постоянного workflow - я бы подумал о разумности такой архитектуры
2)если периодически - то в принципе и fdw и dblink и logical replication - рабочие решения

выбор между
fdw/dblink и репликацией зависит от бизнес требований
репликация - сильно дороже по ресурсам и сложнее в обслуживании (причем заметно) - поэтому ее используют если база db0 должна продолжать работать при отказе db1 (я надеюсь что доступ к данным у вас там readonly).
fdw/dblink - намного проще и легче но при отказе db1 - получается проблема

т.е. выбор по бизнес требованиям идет а не абстракно

выбор между fdw и dblink - через fdw проще писать запросы и привычнее поэтому если запросов много разных к удаленной таблице то fdw лучше
если запросов 1-2-3 - то dblink проще, гибче и в общем даже надежнее к изменению структуры на db1

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
    #40032683
Фотография ptr128
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vyegorov
ddzia,
Разносить их по разным базам — это создавать себе лишние проблемы.

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


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

Вот и приходится извращаться, вытаскивая данные из соседней БД.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как иметь доступ к данным БД0 из БД1 в пределах одного сервера?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]