Как получить идентификатор сервера в Sql Server без использования хранимой функции CLR? - PullRequest
0 голосов
/ 30 мая 2011

Мне нужно запросить Sql Server и получить идентификатор, который идентифицирует компьютер, на котором установлен SQL Server.Идентификатор, который хорошо работает и в некоторых сложных сценариях, таких как отказоустойчивые кластеры или подобные архитектуры.

Мне нужно это для проверки лицензии, я привязываю свой лицензионный ключ к идентификатору, в настоящее время я создаю «мой идентификатор», используякомбинация даты создания базы данных и имени сервера, в любом случае это не очень хорошо, особенно потому, что это идентификатор базы данных, а не идентификатор сервера.

В прошлом я считывал серийный номер жесткого диска с расширенным хранениемпроцедура, но разве нет (по крайней мере, в SQL Server 2008) простой способ получить этот идентификатор?

Я не хочу использовать хранимую процедуру CLR.

Ответы [ 2 ]

2 голосов
/ 30 мая 2011

et идентификатор, который идентифицирует компьютер, на котором установлен SQL Server.Идентификатор, который хорошо работает и в некоторых сложных сценариях, таких как отказоустойчивые кластеры или аналогичные архитектуры.

Так что вы хотите?Определить MACHINE или идентифицировать CLUSTER и обработать корпоративные senarios?

Как правило, это невозможно без расширенных хранимых процедур или CLR.Точка.Вы исключаете все подходы, тогда ничего не осталось.И тот факт, что вы прочитали номер жесткого диска, уже означает, что вы НЕ готовы обрабатывать большие установки.Что вы читаете, если на SAN нет жесткого диска (как диска), а есть LUN?Что вы делаете, если жесткий диск является аппаратным контроллером рейда?подход, который вы использовали с самого начала, в значительной степени не работал, но вы не смогли его увидеть, потому что вы не имеете дела с корпоративными клиентами;) Это также означает, что вы не обрабатываете сложные сценарии (кластеры и т. д.);)

Как gbnговорит, что не мешайте корпоративным клиентам с детскими средствами защиты от копирования, заключите лицензионное соглашение.В целом корпоративное программное обеспечение имеет несколько технических ограничений, позволяющих предприятиям предоставлять хороший сервис, не выполняя обходов, чтобы получить еще один лицензионный ключ jsut для лабораторной установки.

1 голос
/ 30 мая 2011

Это называется "лицензионное соглашение"

Я бы не хотел, чтобы какое-то приложение закрывалось, потому что оно думает, что оно работает на другом компьютере.

Если у нас происходит аварийное переключение аварийного восстановления в настройках доставки журналов или зеркалирования, это две отдельные установки SQL-сервера. А какой сервер в любом случае работает на одном жестком диске?

Другие вопросы SO: https://stackoverflow.com/search?q=software+licensing

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...