博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQL Server2014 SP2新增的数据库克隆功能
阅读量:6334 次
发布时间:2019-06-22

本文共 1670 字,大约阅读时间需要 5 分钟。

原文:

SQL Server2014 SP2新增的数据库克隆功能

 

创建测试库

--创建测试数据库create database testtest use testtestgo--创建表create table testtest(id int ,name varchar(20))--插入数据insert into testtest select 1,'sdfsdf' --创建存储过程create proc testproc as select 1

 

 

 

创建克隆数据库的命令形式

DBCC CLONEDATABASE  (source_database_name, target_database_name)       –– Default CLONE WITH SCHEMA, STATISTICS and QUERYSTORE metadata.DBCC CLONEDATABASE  (source_database_name, target_database_name) WITH NO_STATISTICS        –– SCHEMA AND QUERY STORE ONLY CLONEDBCC CLONEDATABASE  (source_database_name, target_database_name) WITH NO_QUERYSTORE       –– SCHEMA AND STATISTICS ONLY CLONEDBCC CLONEDATABASE  (source_database_name, target_database_name) WITH NO_STATISTICS,NO_QUERYSTORE    –– SCHEMA ONLY CLONE

 

 

 

开始创建克隆库

DBCC CLONEDATABASE  (testtest, testtestclone)         已开始对“testtest”执行数据库克隆操作,目标为“testtestclone”。已完成对“testtest”执行数据库克隆操作。克隆数据库为“testtestclone”。数据库“testtestclone”是克隆数据库。克隆数据库应仅用于诊断目的,不得用于生产环境。DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。

 

 

 

创建成功之后,克隆库是只读状态的,并且库里所有表都没有数据

 

存储过程也会克隆过来,在克隆库打开存储过程定义

 

克隆库也会在数据目录下创建mdf和ldf文件

 

 

可以看到,克隆库其实跟源库没有太大差别,只是克隆库里面没有业务数据

 

利用克隆库诊断数据库问题,把克隆库进行数据库备份或分离数据库然后发给SQL Server专家就可以帮你诊断了,非常方便

--备份克隆库backup database [testtestclone] to disk='D:\DBBackup\testtestclone.bak' with compression,stats=5--还原克隆库USE [master]RESTORE DATABASE [testtestclone] FROM  DISK = N'D:\DBBackup\testtestclone.bak' WITH  FILE = 1, MOVE N'testtest' TO N'D:\DataBase\testtest_843330487.mdf',  MOVE N'testtest_log' TO N'D:\DataBase\testtest_log_82742540.ldf', NOUNLOAD,  STATS = 5GO--分离克隆库USE [master]GOEXEC master.dbo.sp_detach_db @dbname = N'testtestclone'GO

 

只要对方还原你的数据库就可以对你的数据库问题进行诊断了

 

如有不对的地方,欢迎大家拍砖o(∩_∩)o 

本文版权归作者所有,未经作者同意不得转载。

你可能感兴趣的文章
ASCII 在线转换器
查看>>
Linux内核同步:RCU
查看>>
Android逆向进阶——让你自由自在脱壳的热身运动(dex篇)
查看>>
Java设计模式之五大创建型模式(附实例和详解)
查看>>
60 Permutation Sequence
查看>>
主流的RPC框架有哪些
查看>>
Hive学习之路 (七)Hive的DDL操作
查看>>
[转]mysql使用关键字作为列名的处理方式
查看>>
awesome go library 库,推荐使用的golang库
查看>>
树形展示形式的论坛
查看>>
jdbcTemplate 调用存储过程。 入参 array 返回 cursor
查看>>
C++中的stack类、QT中的QStack类
查看>>
Linux常用基本命令[cp]
查看>>
CSS 相对|绝对(relative/absolute)定位系列(一)
查看>>
关于 Nginx 配置 WebSocket 400 问题
查看>>
Glide和Govendor安装和使用
查看>>
Java全角、半角字符的关系以及转换
查看>>
Dubbo和Zookeeper
查看>>
前端项目课程3 jquery1.8.3到1.11.1有了哪些新改变
查看>>
UOJ#179. 线性规划(线性规划)
查看>>