Я установил два экземпляра SQL-сервера с IP-адресами x.x.x.x и y.y.y.y. На уровне приложения при указании подключения к серверу SQL могу ли я указать строку подключения, как показано ниже
<connection-url>jdbc:sqlserver://x.x.x.x:port; databaseName=productionDB; failoverPartner=jdbc:sqlserver://y.y.y.y:port</connection-url>
Я попытался поиграть с ним, но когда я вручную отключил базу данных SQL server 1, на уровне приложения кажется, что он действительно пытается подключиться ко второму серверу, но вместо этого он не работает с
подключение к хосту y.y.y.y, порт 1433 не удалось. Ошибка: "null. Проверьте свойства соединения. Убедитесь, что на хосте запущен экземпляр SQL-сервера и принимает соединения TCP / IP на порту. Убедитесь, что соединения TCP с портом не заблокированы брандмауэром.
Я знаю, что свойства соединения, такие как пользователь, пароль, одинаковы для двух экземпляров SQL, потому что, если я перезапускаю приложение выше с двумя замененными IP-адресами, все по-прежнему работает. Также я знаю, что партнера по отработке отказа следует использовать только при настройке зеркального отображения базы данных. Однако согласно этому статья, это кажется выполнимым без настройки базовой базы данных зеркального отображения.
Зеркалирование устарело в SQL 2016
Вам придется использовать группы доступности SQL.
Он довольно прост в настройке и хорошо работает.
Одно из лучших и интересных прохождений, вам нужно изменить некоторые вещи, но это довольно хорошо.
http://blog.fedenko.info/2016/06/sql-server-2016-always-on-availability.html
Ваша строка подключения не сильно изменится, нужно только изменить IP-адрес подключения и добавить параметры безопасности на обратной стороне.
SQL 2016 Standard с использованием AlwaysOn Basic. В некоторых случаях нам приходилось использовать Failover Partner, потому что SQL или DC слишком долго отвечает на запрос. Итак, в наших строках подключения для наших приложений мы имеем «Data Connection = SERVERNAME \ NAMEDINSTANCE; Failover Partner = SERVERNAME2 \ NAMEDINSTANCE;». Будучи базовым только с двумя узлами, похоже, что это работает правильно.