Here we will demonstrate how to create a materialized view with fast refresh, make a materialized view updateable, materialized view partitions, SYSDATE usage in materialized view creation and materialized view log shrink etc.
Check all version records in the version store in each database:
select db_name(database_id), COUNT(*)
from sys.dm_tran_version_store
GROUP BY database_id
dbname totalVersionRecords
TESTDB 5535970
msdb 126687
...
..
.
Check space usage of objects in tempdb:
select
db_name(database_id) as dbname,
FILEGROUP_ID,
FILE_ID,
version_store_reserved_page_count/128/1024 AS Version_Store_Size_GB
from
tempdb.sys.dm_db_file_space_usage ;
dbname FILEGROUP_ID FILE_ID Version_Store_Size_GB
tempdb 1 1 5
tempdb 1 3 2
tempdb 1 4 5
tempdb 1 5 2
tempdb 1 6 2
tempdb 1 7 2
tempdb 1 8 2
tempdb 1 9 2
SELECT * FROM sysfiles order by groupid;
Check all active transactions that generate or potentially access row versions:
is_snapshot
int
0 = Is not a snapshot isolation transaction.
1 = Is a snapshot isolation transaction.
select session_id, is_snapshot, transaction_sequence_num, commit_sequence_num, elapsed_time_seconds
from sys.dm_tran_active_snapshot_database_transactions
order by 5 desc;
In SQL Server Management Studio, Right click principle database -> properties -> Mirroring, the click Resume button. The alternative way is to right click principle database -> Tasks -> Mirror, the click Resume button.
We can also run the following Transact-SQL query to resume the database mirroring:
ALTER DATABASE userdb SET PARTNER RESUME;
To check the synchronizing progressing by running following Transact-SQL query:
SELECT [counter_name] as CounterName,[cntr_value] as CounterValue
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE ('%Database Mirroring%')
AND [counter_name] IN ('Log Send Queue KB','Redo Queue KB')
AND [instance_name]='TESTDB';
CounterName CounterValue
Redo Queue KB 1260219
Log Send Queue KB 8407945
“Redo Queue KB” : Logs to applied onto mirroring database. “Log Send Queue KB” : Logs to be sent to mirroring database.
Another alternative way to check mirroring status and statistics: