Возможно ли иметь реплику SQL 2016 только для чтения, которая не используется в качестве сервера отработки отказа
Да.Но вы должны уточнить.Например, если он находится в асинхронном режиме, вы можете выполнять только отработки отказа вручную.Это своего рода , как если бы вы не использовали его в качестве сервера отработки отказа, поскольку вам пришлось бы его принудительно форсировать.См. режимы отработки отказа и отработки отказа.
Возможно ли иметь реплику SQL 2016 только для чтения с безопасностью базы данных, отличной от основной
Да.Фактически, одна из раздражающих частей AlwaysOn AG - синхронизация входа в систему.Большинство людей хотят, чтобы они соответствовали.Вот почему многие люди пишут в блогах способы о том, как это сделать, а другие создали инструменты в PowerShell для этого, а также синхронизируют задания агентов, оповещения и т. Д.
Я хочу убедиться, что пользователи не имеют доступа к первичному узлу
Поскольку реплики расположены на разных серверах в качестве первичных, вы можете хранить разрешения отдельно для всех экземпляров.без труда.Просто дайте своим пользователям войти в систему к экземпляру реплики и базе данных, а не к первичному экземпляру и базе данных.Помните, что есть разница в входе на сервер и в отображении пользователя.Для вашего RoR вашему пользователю понадобится войти в систему на сервере, а затем его идентификатор пользователя будет привязан к вашей реплике.
Я хочу обеспечить пользователям доступ только для чтения.
Поскольку он уже доступен только для чтения, это единственный доступ, который у них будет.Они не смогли бы ОБНОВИТЬ / УДАЛИТЬ / ВСТАВИТЬ, даже если бы они были системными администраторами (если, конечно, они не изменили нашу версию только для чтения)