Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Уникальный идентификатор SQL Server существует?  [new]
toypaul
Member

Откуда: Россия, Ижевск
Сообщений: 171
Существует ли такой в природе? Хочу привязать свой софт к нему. То есть что-то типа лицензии на сервер. Если есть, то как получить? Или может быть другие идеи есть как сделать такую привязку - к экземпляру SQL Server
9 июл 05, 01:14    [1690301]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
AlexCzech
Member

Откуда:
Сообщений: 729
toypaul
Существует ли такой в природе? Хочу привязать свой софт к нему. То есть что-то типа лицензии на сервер. Если есть, то как получить? Или может быть другие идеи есть как сделать такую привязку - к экземпляру SQL Server


MAC-адрес сетевой карты получать через расширенную хп, только это вы к сетевой карте привяжетесь, а не к экземпляру сервера :)
9 июл 05, 02:11    [1690318]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
гвест
Guest
https://www.sql.ru/forum/actualthread.aspx?tid=78778
9 июл 05, 02:21    [1690327]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
aleks2
Guest
Используйте SID компутера. Изменяется только при переустановке ОС-и.

Получить можно так

SUSER_SID('домен\компутер$')
или (без домена)
SUSER_SID('группа\компутер$')
9 июл 05, 08:16    [1690385]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
VladRUS.ca
Member

Откуда: Toronto
Сообщений: 1172
Попробуйте привязать свой софт к checksum инстанса:
declare @checksum binary(152)
exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 
'checksum', @checksum output
print @checksum

Не знаю как 2000 но 7.0 точно к нему привязывается см. тут
"...
Unattended upgrade was originally not allowed in the retail build of SQL Server 7.0 to help prevent piracy.
..."
11 июл 05, 00:33    [1691428]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
Lepsik
Member

Откуда: glubinka
Сообщений: 4256
aleks2
Используйте SID компутера. Изменяется только при переустановке ОС-и.




можно и без смены OS, можно даже сделать заданный
11 июл 05, 08:19    [1691563]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
Anatoly Podgoretsky
Member

Откуда:
Сообщений: 62908
Активация через Интернет, для привязки достаточно зашифрованой лицензионной информации и SID компьютера. Срок активации или переактивация 1-4 недели.
11 июл 05, 08:55    [1691600]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
VladRUS.ca
Member

Откуда: Toronto
Сообщений: 1172
Универсальный код работающий как для 7.0 так и для 2000
declare @checksum varchar(1000)

if @@microsoftversion / 0x01000000 < 8
    exec master..xp_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output
else
    exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output

print @checksum 
11 июл 05, 19:05    [1694334]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2423
Есть ли у каждого SQL-сервера какой то уникальный идентификатор
11 июл 05, 19:44    [1694395]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
VladRUS.ca
Member

Откуда: Toronto
Сообщений: 1172
LR
Есть ли у каждого SQL-сервера какой то уникальный идентификатор

Как это связано с "Уникальный идентификатор SQL Server существует?" - если мы имеем несколько инстансов на одной машине?
11 июл 05, 20:01    [1694418]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
toypaul
Member

Откуда: Россия, Ижевск
Сообщений: 171
всем ОГРОМНОЕ спасибо! будем думать, решать, выбирать.
11 июл 05, 21:08    [1694500]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
LR
Member

Откуда: 8P8C
Сообщений: 2423
VladRUS.ca
LR
Есть ли у каждого SQL-сервера какой то уникальный идентификатор

Как это связано с "Уникальный идентификатор SQL Server существует?" - если мы имеем несколько инстансов на одной машине?

toypaul
То есть что-то типа лицензии на сервер.

А из HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\80\Registration как раз и можно вытащить эту информацию. ProductID подходит на звание "уникального идентификатора SQL Server", повторю здесь ссылку
How is the Installation ID generated?

По поводу нескольких инстансов на одной машине.
Как я понял, в разделе SOFTWARE\Microsoft\MSSQLServer\MSSQLServer хранится информация только о default instance (по крайней мере для mssql2000 это так). Иформация об "именном" инстансе есть в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server..., и тогда для такого инстанса надо указывать соответствующий раздел SOFTWARE\Microsoft\Microsoft SQL Server\_instance_name_\MSSQLServer. А в этом разделе наиболее подходящим кандидатом на звание "идентификатор инстанса", похоже, действительно есть \CurrentVersion\checksum. Менее универсальная альтернатива - ResourceMgrID, GUID, который создает при инсталяции DTC...

:) В общем, привязаться есть к чему...
13 июл 05, 12:36    [1699396]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Уникальный идентификатор SQL Server существует?  [new]
www.perlscript.ru
Member

Откуда: Москва
Сообщений: 344
VladRUS.ca
Универсальный код работающий как для 7.0 так и для 2000
declare @checksum varchar(1000)

if @@microsoftversion / 0x01000000 < 8
    exec master..xp_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output
else
    exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output

print @checksum 


А для SQL-2005 есть уже вариант реализации?
11 фев 08, 14:51    [5272117]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
Crimean
Member

Откуда:
Сообщений: 13147
>> master..xp_regread

> А для SQL-2005 есть уже вариант реализации?

а что, под 2005 xp_regread не работает?
11 фев 08, 15:44    [5272503]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
www.perlscript.ru
Member

Откуда: Москва
Сообщений: 344
А что, вы всегда отвечаете вопросом на вопрос ?

Речь шла о ветке реестра. Для 2005 другая ветка
11 фев 08, 17:04    [5273033]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
VladRUS.ca
Member

Откуда: Toronto
Сообщений: 1172
www.perlscript.ru
VladRUS.ca
Универсальный код работающий как для 7.0 так и для 2000
declare @checksum varchar(1000)

if @@microsoftversion / 0x01000000 < 8
    exec master..xp_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output
else
    exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output

print @checksum 


А для SQL-2005 есть уже вариант реализации?


declare @checksum varchar(1000)

if @@microsoftversion / 0x01000000 < 8 -- For 7.0
    exec master..xp_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output
else if @@microsoftversion / 0x01000000 = 8 -- For 2000
    exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion', 'checksum', @checksum output
else -- For 2005 
    exec master..xp_instance_regread 'HKEY_LOCAL_MACHINE', 'SOFTWARE\Microsoft\MSSQLServer\Setup', 'checksum', @checksum output

print @checksum
12 фев 08, 06:02    [5274617]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Уникальный идентификатор SQL Server существует?  [new]
O.Alexander
Member

Откуда:
Сообщений: 2
Коллеги, пользуюсь данной функцией давно, но возникла проблема с failover cluster. Запрос возвращает для каждой ноды разные значения. Как получить уникальное число для всего кластера? Есть что-то подобное checksum? Возможно в 2008/2008R2 есть какие-то спец. функции?
Спасибо!
14 фев 13, 15:17    [13926812]     Ответить | Цитировать Сообщить модератору
 Re: Уникальный идентификатор SQL Server существует?  [new]
O.Alexander
Member

Откуда:
Сообщений: 2
Нарыл такую инфу:
DECLARE @attachedDisks VARCHAR(1000) 
EXEC master.dbo.xp_instance_regread 'HKEY_LOCAL_MACHINE', 
'SYSTEM\CurrentControlSet\Services\ClusDisk\Parameters\',
'AttachedDisks', @attachedDisks


На каждой ноде дает один и тот же результат :) Буду пробовать.
14 фев 13, 17:30    [13927856]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить