SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » PostgreSQL » Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать?
Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5643] Wed, 30 October 2024 16:01 Переход к следующему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
Дано: Есть Postgresql 15 на Linux-сервере.
Надо, чтобы этот Postgresql смог прочесть и записать данные на MS SQL Server 2019.
Вопрос - какие foreign data wrapper ставить? И откуда брать?
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5646 является ответом на сообщение #5643] Thu, 31 October 2024 11:11 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 367
Зарегистрирован: June 2022
Senior Member
Foreign Data Wrappers in PostgreSQL Databases (postgres_fdw & dblink)
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5655 является ответом на сообщение #5646] Thu, 31 October 2024 14:58 Переход к предыдущему сообщениюПереход к следующему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
Эти два (postgres_fdw и dblink) позволяют устанавливать связь ТОЛЬКО с другими postgre-серверами (и входят в состав Postgre по умолчанию).
А мне нужно с MS SQL Server законнектиться.
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5656 является ответом на сообщение #5655] Thu, 31 October 2024 15:30 Переход к предыдущему сообщениюПереход к следующему сообщению
SD в настоящее время не в онлайне  SD
Сообщений: 414
Зарегистрирован: August 2022
Senior Member
А что, ссылка из официального списка не подходит? Я понимаю, что там написано "unstable", но исходники же есть, можно допилить если не взлетает.

[Обновления: Thu, 31 October 2024 15:33]

Известить модератора

Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5657 является ответом на сообщение #5656] Thu, 31 October 2024 15:39 Переход к предыдущему сообщениюПереход к следующему сообщению
BlackEric в настоящее время не в онлайне  BlackEric
Сообщений: 367
Зарегистрирован: June 2022
Senior Member
TDS Foreign data wrapper

Допилить? Не ну можно наверное, но проще на одну субд перейти.
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5658 является ответом на сообщение #5656] Thu, 31 October 2024 17:56 Переход к предыдущему сообщениюПереход к следующему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
SD писал(а) Thu, 31 October 2024 15:30
А что, ссылка из официального списка не подходит? Я понимаю, что там написано "unstable", но исходники же есть, можно допилить если не взлетает.
Ага, представляю себе, какое лицо будет у директора, когда я ему скажу: "Извините, но поставленную вами задачу выполнить в поставленные вами сроки невозможно, потому что foreign data wrapper для sql server-a сначала допилить надо, а он на си написан, и мне сначала надо этот язык выучить".

Вот почему, когда я пользуюсь проприетарным софтом Microsoft-a, то всё работает как надо с первого раза, и все драйвера найти легко, и все обвязки нужные есть, и сделал нужное действие - и никаких лишних телодвижений делать не надо?

А когда речь заходит про этот долбанный опенсорс - то приходится иметь дело с фекалиями, написанными криворуким говном?
"Вы добавили пользователя в Postgre? Заебись, а теперь добавьте этого же пользователя в какой-то дебильный файл, который лежит хрен знает где. У Вас нет прав на доступ к файлу? Это ваши проблемы, а у разработчиков Postgre -руки из жопы."
"Вы хотите использовать переменные в Postgre? Создавайте неименованный пакет, и забудьте про получение select-ов оттуда напрямую. Только через временные таблицы!"
"Имена постоянных и временных таблиц в Postgre ничем не отличаются. Postgre - не для склеротиков!"
"Вам в Linux нужен нормальный (хотя бы времён MS DOS), а не консольный текстовый редактор прошлого тысячелетия? МПХ Вам, а не нормальный редактор. Это же СЕРВЕР, тут x-windows нет, и не предвидится, а редактор, работающий в текстовом режиме без x-windows - это так сложно!".
"Ваш коллега поставил на сервер mc, и вы обрадовались, что по кнопке F4 сможете пользоваться нормальным текстовым редактором времён MS-DOS, как в VC и NC? Идите отсосите - эта кнопка запускает vim, а не нормальный редактор".

Продолжение следует.

[Обновления: Thu, 31 October 2024 17:58]

Известить модератора

Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5661 является ответом на сообщение #5658] Fri, 01 November 2024 01:48 Переход к предыдущему сообщениюПереход к следующему сообщению
SD в настоящее время не в онлайне  SD
Сообщений: 414
Зарегистрирован: August 2022
Senior Member
Цитата:
Вот почему, когда я пользуюсь проприетарным софтом Microsoft-a, то всё работает как надо с первого раза, и все драйвера найти легко, и все обвязки нужные есть, и сделал нужное действие - и никаких лишних телодвижений делать не надо?
Дык эта... Что тебе, собственно, мешает наладить нужную тебе связь в обратную сторону: создав linked server на стороне MS SQL, раз уж там "всё работает как надо с первого раза"?..
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5666 является ответом на сообщение #5661] Fri, 01 November 2024 14:16 Переход к предыдущему сообщениюПереход к следующему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
SD писал(а) Fri, 01 November 2024 01:48
Цитата:
Вот почему, когда я пользуюсь проприетарным софтом Microsoft-a, то всё работает как надо с первого раза, и все драйвера найти легко, и все обвязки нужные есть, и сделал нужное действие - и никаких лишних телодвижений делать не надо?
Дык эта... Что тебе, собственно, мешает наладить нужную тебе связь в обратную сторону: создав linked server на стороне MS SQL, раз уж там "всё работает как надо с первого раза"?..
Да на стороне MS SQL уже всё создано, и работает, и на Postgre данные засылаются успешно. Но проблема в том, что и на стороне Postgre новые данные генерируются, и сразу после генерации должны пинком (скорее всего, при помощи триггера) отправляться на MS SQL, а вариант с регулярным запуском задания на стороне MS SQL руководству не нравится.
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5667 является ответом на сообщение #5666] Fri, 01 November 2024 15:34 Переход к предыдущему сообщениюПереход к следующему сообщению
SD в настоящее время не в онлайне  SD
Сообщений: 414
Зарегистрирован: August 2022
Senior Member
DaniilGray писал(а) Fri, 01 November 2024 12:16

Да на стороне MS SQL уже всё создано, и работает, и на Postgre данные засылаются успешно.
"Давно" это неделю и со второй попытки?..
Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5670 является ответом на сообщение #5667] Fri, 01 November 2024 17:32 Переход к предыдущему сообщениюПереход к следующему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
SD писал(а) Fri, 01 November 2024 15:34
DaniilGray писал(а) Fri, 01 November 2024 12:16

Да на стороне MS SQL уже всё создано, и работает, и на Postgre данные засылаются успешно.
"Давно" это неделю и со второй попытки?..
Это была очень тяжёлая неделя, так что давно, да.
И со второй попытки - из-за проблем со стороны Postgre (выше ругался, что после создания пользователя в Postgre его потом ещё надо руками прописывать в файле).

Так... по поводу FDW - поставили tds_fdw. И, как я понимаю, библиотеку freetds.

Далее читаю совсем-не-торт-Хабр.

Там пример настройки библиотеки freetds перед созданием fdw для нужного сервера для именованного инстанса:

Перед использованием tds_fdw необходимо настроить FreeTDS. Настройка FreeTDS для подключения к MS SQL Server выполняется с помощью файла /etc/freetds/freetds.conf. Например, добавим такое содержимое:

Цитата:

[mssql01]
       host = 192.168.0.1
       port = 1433
       tds version = 7.1
       instance = MSSQL01
Всё бы хорошо. А если у нас версия библиотеки 1.0 - то 7.1 меняю на 7.4 - не вопрос.

Для неименованного инстанса добавляем так:
[mssql01]
       host = 192.168.0.1
       port = 1433
       tds version = 7.1

Всё, вопрос закрыт.

[Обновления: Fri, 01 November 2024 17:43]

Известить модератора

Re: Какие foreign data wrapper для MS SQL Server 2019 на Postgresql 15 брать? [сообщение #5677 является ответом на сообщение #5670] Sat, 02 November 2024 11:54 Переход к предыдущему сообщению
DaniilGray в настоящее время не в онлайне  DaniilGray
Сообщений: 17
Зарегистрирован: October 2024
Junior Member
Новый вопрос возник. Как выяснилось, tds_fdw не поддерживает изменение данных, поэтому нужен другой wrapper.
Нашёл только odbc_fdw и ogr_fdw. Буду пробовать.
Предыдущая тема: Какие odbc-драйвера для PostgreSQL 16 брать?
Следующая тема: Вопрос по триггерам
Переход к форуму:
  


Текущее время: Mon Dec 09 22:21:28 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00827 секунд