Как в SQL Server 2005/2008 узнать, включена ли изоляция моментальных снимков? Я знаю, как включить его, но не могу найти заклинание, чтобы Google сказал мне, как запросить состояние параметра «Снимок изоляции».
Как в SQL Server 2005/2008 узнать, включена ли изоляция моментальных снимков? Я знаю, как включить его, но не могу найти заклинание, чтобы Google сказал мне, как запросить состояние параметра «Снимок изоляции».
Ответы:
щелкните правой кнопкой мыши на каталоге баз данных в проводнике объектов и запустите PowerShell. введите:
get-childitem|select name, snapshotisolationstate
и нажмите возврат
Powershell, правда? что не так с хорошим старомодным T-SQL?
sys.databases это то, что вы хотите. Он имеет удобочитаемые столбцы описания, такие как snapshot_isolation_state_desc
SELECT snapshot_isolation_state_desc from sys.databases
where name='adventureworks'
Расширяю по никам ответ сверху ..
Следующее вернет информацию обо всех ваших базах данных
select name
, s.snapshot_isolation_state
, snapshot_isolation_state_desc
, is_read_committed_snapshot_on
, recovery_model
, recovery_model_desc
, collation_name
from sys.databases s
Или используя код T-SQL:
SELECT
'Current Isolation State:' [ ],
CASE is_read_committed_snapshot_on
WHEN 1 THEN 'ON' ELSE 'OFF'
END AS [Read Committed Snapsot State]
FROM sys.databases
WHERE name = 'MyDatabaseName'
Как проверить, включен ли уровень изоляции транзакции моментального снимка
Чтобы проверить, включен ли уровень изоляции транзакции моментального снимка, выполните следующие действия:
- Запустите SQL Server Profiler.
- Создайте новую трассировку для подключения к источнику данных, который вы указали в проекте служб Analysis Services.
- В диалоговом окне « Свойства трассировки » перейдите на вкладку « Выбор событий ».
- В столбце TransactionID установите флажки в строке для события SQL: BatchCompleted и в строке для события SQL: BatchStarting.
Примечание. Чтобы отобразить столбец TransactionID, установите флажок Показать все столбцы .
- Нажмите Run, чтобы начать трассировку.
В среде Business Intelligence Development Studio обработайте проект служб аналитики.
В SQL Server Profiler найдите события SQL: BatchCompleted и события SQL: BatchStarting, имеющие одинаковое значение в столбце TransactionID. Как правило, эти события содержат инструкцию SELECT в столбце TextData. Для этих событий получите идентификатор сеанса в столбце SPID.
Чтобы подключиться к источнику данных, запустите SQL Server Management Studio.
Создайте новый запрос, а затем выполните следующую инструкцию Transact-SQL.
выберите session_id, Transaction_Isolation_Level из sys.dm_exec_sessions, где session_id =
Примечание. В этом операторе указывается идентификатор сеанса, полученный на шаге 7.
- На вкладке Результаты запишите значение в столбце Transaction_Isolation_Level. Это значение указывает уровень изоляции транзакции, который вы используете в проекте служб Analysis Services. Когда уровень изоляции транзакции моментального снимка включен, значение в столбце Transaction_Isolation_Level равно 5.
В следующей таблице приведены значения в столбце Transaction_Isolation_Level и соответствующие уровни изоляции транзакции.