
SQLServer数据库的快照只能通过SQL语句创建,以msdb数据库为例进行说明:
1、执行以下代码,看看MSDB数据库有多少数据文件
EXEC SP_HELPDB msdb
2、为每一个数据文件创建快照,代码如下:
create database snap_MSDBData_1811221202
ON ( NAME = MSDBData, FILENAME= 'D:\userdata\temp\Snap_MSDBDatasnap')
AS SNAPSHOT OF MSDB
3、在“数据库快照”那里就可以看到刚刚创建snap_MSDBData_1811221202这个快照了,对比一下快照和原库,内容是一样的
4、数据库快照其实也是一个数据库,可以在上面执行任何SQL语句,我们执行一个查询语句看看效果
SELECT FROM [MSDB][dbo][MSdbms]
SELECT FROM [snap_MSDBData_1811221202][dbo][MSdbms]
查询结果是完全一样的。
(如有帮助,请采纳,谢谢)
快照并不是复制整个整个数据库,而仅仅利用快照存储原始页。因此可以看出,源数据库上建立快照会给IO增加额外负担当对快照数据库进行查询时,快照时间点之后更改的数据会查询数据文件,
当使用快照恢复数据库时,首先要删除其他快照
快照在创建时的时间点上没有commit的数据不会被记入快照
快照是快照整个数据库,而不是数据库的某一部分
以上就是关于SQLServer快照功能以及其查询如何 *** 作全部的内容,包括:SQLServer快照功能以及其查询如何 *** 作、sql如何建立快照并可以动态更新数据、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)