Як в SQL Server 2005/2008 дізнатись, чи включена ізоляція знімка? Я знаю, як його ввімкнути, але я не можу знайти заклик отримати Google, щоб підказати, як запитувати стан параметра "Ізольована знімка".
Як в SQL Server 2005/2008 дізнатись, чи включена ізоляція знімка? Я знаю, як його ввімкнути, але я не можу знайти заклик отримати Google, щоб підказати, як запитувати стан параметра "Ізольована знімка".
Відповіді:
клацніть правою кнопкою миші по каталогу баз даних в провіднику об'єктів і запустіть shellhell. введіть:
get-childitem|select name, snapshotisolationstate
і натисніть return
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.
- Створіть новий слід для підключення до джерела даних, який ви вказали в проекті Services Services.
- У діалоговому вікні " Властивості слідів " натисніть Вибір подій вкладку « ».
- У стовпці TransactionID натисніть, щоб встановити прапорці в рядку для події SQL: BatchCompleted та в рядку для події SQL: BatchStarting.
Примітка Щоб відобразити стовпець TransactionID, установіть прапорець Показувати всі стовпці .
- Клацніть Виконати щоб почати трасування.
У студії розвитку бізнес-аналітики опрацюйте проект служби Аналіз.
У програмі 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_sesions, де session_id =
Примітка У цьому твердженні є заповнювачем місця для ідентифікатора сеансу, який ви отримали на кроці 7.
- На вкладці Результати відзначте значення у стовпці Transaction_Isolation_Level. Це значення вказує на рівень ізоляції транзакцій, який ви використовуєте в проекті Services Services. Коли рівень ізоляції транзакцій увімкнено, значення в стовпці Transaction_Isolation_Level дорівнює 5.
У наступній таблиці показані значення в стовпці Transaction_Isolation_Level та відповідні рівні ізоляції транзакцій.