===== Microsoft SQL Server =====
=== Гайд по настройке SQL-сервера для 1С ===
https://its.1c.ru/db/metod8dev/content/5904/hdoc
----
=== Вернуть БД в многопользовательский режим ===
ALTER DATABASE upp_test
SET MULTI_USER;
GO
----
=== Узнать версию SQL сервера ===
Отправить запрос:
SELECT @@VERSION AS 'SQL Server Version Details
----
=== Мониторинг проблем с производительностью ===
**Посмотреть, сколько процессорного времени занимает SQL**
$serverName = $env:COMPUTERNAME
$Counters = @(
("\\$serverName" + "\Process(sqlservr*)\% User Time"), ("\\$serverName" + "\Process(sqlservr*)\% Privileged Time")
)
Get-Counter -Counter $Counters -MaxSamples 30 | ForEach {
$_.CounterSamples | ForEach {
[pscustomobject]@{
TimeStamp = $_.TimeStamp
Path = $_.Path
Value = ([Math]::Round($_.CookedValue, 3))
}
Start-Sleep -s 2
}
}
----
**Посмотреть - какие именно запросы занимают ресурсы**
DECLARE @init_sum_cpu_time int,
@utilizedCpuCount int
--get CPU count used by SQL Server
SELECT @utilizedCpuCount = COUNT( * )
FROM sys.dm_os_schedulers
WHERE status = 'VISIBLE ONLINE'
--calculate the CPU usage by queries OVER a 5 sec interval
SELECT @init_sum_cpu_time = SUM(cpu_time)
FROM sys.dm_exec_requests WAITFOR DELAY '00:00:05'SELECT CONVERT(DECIMAL(5,
2),
((SUM(cpu_time) - @init_sum_cpu_time) / (@utilizedCpuCount * 5000.00)) * 100) AS [CPU FROM Queries AS Percent of Total CPU Capacity]
FROM sys.dm_exec_requests
----
=== Издание сертификатов SQL средствами центра сертификации ===
1. Запрашиваем сертификат на SQL сервере через оснастку сертификатов на SQL-сервере. Подойдет шаблон "веб-сервер", или другой с Server Authentication (важно, чтобы в шаблоне была сделана пометка о возможности экспорта закрытого ключа).\\
2. После получения сертификата - экспортируем его в PFX (не отмечаем экспорт всей цепочки и расширенных свойств).\\
3. Конвертируем PFX в два файла (cer и pvk) при помощи конвертера от MS (''PVKConverter'').
Пример команды:\\
c:\Program Files\Microsoft\PVKConverter>PVKConverter.exe -i sql04.pfx -o sql04.cer -d 111 -e 111
4. Импортируем сертификат на сервер, где им шифруем, и еще на сервер, где собираемся расшифровывать SQL-запросом:\\
CREATE CERTIFICATE sql04
FROM FILE = 'c:\cert\sql04.cer'
WITH PRIVATE KEY (FILE = 'c:\cert\sql04.pvk',
DECRYPTION BY PASSWORD = '111')'';
Также, на сервере должен быть создан главный ключ базы данных (MASTERKEY), который шифрует остальные закрытые ключи. Он создается запросом:
CREATE MASTER KEY
ENCRYPTION BY PASSWORD = 'your _password';
{{tag>Microsoft SQL MSSQL Certificates PKI ADCS}}