Прокси-сервер клиента Microsoft SQLServer TDS (обратный) на уровне каталога базы данных

#sql-server #reverse-proxy #sql-server-2019

#sql-сервер #обратный прокси #sql-server-2019

Вопрос:

Кто-нибудь знает программное обеспечение, которое может перенаправлять запрос клиента TDS на соответствующий экземпляр Sql Server на основе каталога базы данных, к которому пытается подключиться клиент?

Другими словами, скажем, у меня есть 3 каталога баз данных (dbcat1, dbcat2, dbcat3), и все они размещены на одном сервере (SQLServer). В клиентском коде будут строки подключения server=sqlServer;database=dbcat1 , например, «» и « server=sqlServer;database=dbcat2 «.

Я хотел бы какое-то (обратное) прокси-программное обеспечение, которое позволило бы мне перемещать один или несколько каталогов базы данных в разные экземпляры сервера, но позволяло бы конфигурации клиента оставаться неизменными. Например, я мог бы поместить dbcat1 и dbcat3 в SQLLA и поместить dbcat2 в sqlB, и SQLServer стал бы новым прокси-программным обеспечением. Он передаст соединение соответствующему экземпляру SQLServer на основе его конфигурации, и клиент не будет знать, что он не разговаривает напрямую с экземпляром SQLServer.

Существует ли такая вещь, или я получаю «радость» от необходимости что-то писать, если я действительно, действительно этого хочу? И, да, я знаю, что это не HA (высокая доступность) или DR (аварийное восстановление).

  • Отказоустойчивый кластер SQLServer этого не делает; это для HA. Он перенаправляет на уровне экземпляра сервера (гостевая кластеризация)
  • Группы доступности SQLServer не делают этого; это для DR. Вам все равно нужно знать AG, в котором размещается нужная вам база данных (если вы переместите dbcat в другой AG, вам придется обновить конфигурацию вашего клиента).
  • Прокси-сервер Microsoft был заменен ISA и, вероятно, все равно этого не делал.
  • Microsoft ISA (Forefront) — это просто «тупой» прокси, насколько я мог судить.

Комментарии:

1. Ссылается ли какая-либо из баз данных друг на друга, например, запросы между базами данных, внешние объединения и т. Д.?

2. Нет: каждый каталог базы данных независим для моего сценария. Хотя, поскольку связанные серверы по-прежнему используют TDS, теоретически это должно работать таким же образом.