Azure SQL Database (22) 迁移部分数据到Azure Stretch Database
《Windows Azure Platform 系列文章目录》
Azure SQL Database (19) Stretch Database 概览
Azure SQL Database (20) 使用SQL Server 2016 Upgrade Advisor
Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
Azure SQL Database (22) 迁移部分数据到Azure Stretch Database
在之前的文档中,笔者介绍了如何迁移一张表的所有数据,到云端Stretch Database
Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
在这里,笔者介绍如何将一张表里的部分数据,迁移到云端Stretch Database里。
更多的内容,请参考MSDN文章:https://msdn.microsoft.com/en-us/library/mt613432.aspx
准备工作:
1.如果你已经开始之前的练习,请删除之前在本地的Sample Database:AdventureWorks2016CTP3
2.登陆Azure China管理平台:https://manage.windowsazure.cn/,删除Stretch Database
3.重新还原AdventureWorks2016CTP3
基本定义:
我们可以在本地SQL Server 2016,创建以下方法Function
CREATE FUNCTION dbo.fn_stretchpredicate(@column1 datatype1, @column2 datatype2 [, ...n])
RETURNS TABLE
WITH SCHEMABINDING
AS
RETURN SELECT AS is_eligible
WHERE <predicate>
返回值:
如果返回的值为非空(non-empty)的话,则这些返回结果会被迁移到云端Stretch Database。
剩下的值(即不在这些返回值中的内容),则会保留在本地SQL Server 2016
条件:
这里的条件,就是<predicate> 参数。
我们还是以数据库AdventureWorks2016CTP3,表Sales.OrderTracking为例。
1.首先打开本地计算机的SQL Server Management Studio(SSMS),运行以下脚本:
USE AdventureWorks2016CTP3
--Review the Data
SELECT COUNT(*) FROM Sales.OrderTracking WHERE TrackingEventID <=
--Review the Data
SELECT COUNT(*) FROM Sales.OrderTracking WHERE TrackingEventID >
可以看到,TrackingEventID <= 3的数据量为。TrackingEventID>3的数据量为。图略。
接下来的几个步骤,同之前的文档,主要作用是设置和打开归档功能。
--对本地SQL Server ,打开归档功能
EXEC sp_configure 'remote data archive' , '';
RECONFIGURE; --对云端Azure SQL Database的用户名和密码,进行加密,加密的密码同SQL Database的密码:
USE Adventureworks2016CTP3;
CREATE MASTER KEY ENCRYPTION BY PASSWORD='Abc@123456'
CREATE DATABASE SCOPED CREDENTIAL AzureDBCred WITH IDENTITY = 'sqladmin', SECRET = 'Abc@123456'; --将本地的SQL Server 2016的归档目标,指向到微软云SQL Database Server(l3cq1dckpd.database.chinacloudapi.cn)
--这个l3cq1dckpd.database.chinacloudapi.cn,是我们在准备工作中,创建的新的服务器
ALTER DATABASE [AdventureWorks2016CTP3] SET REMOTE_DATA_ARCHIVE = ON
(SERVER = 'l3cq1dckpd.database.chinacloudapi.cn', CREDENTIAL = AzureDBCred);
2.然后我们计划把TrackingEventID <= 3的值(一共行),都保存到云端Stretch Database。
3.我们在本机SSMS,执行以下T-SQL语句。创建FUNCTION
--Create Function
CREATE FUNCTION dbo.fn_stretchpredicate(@status int)
RETURNS TABLE WITH SCHEMABINDING AS
RETURN SELECT AS is_eligible WHERE @status <= ;
4.开始迁移数据表中的部分数据
--Migrate Some Data to the Cloud
ALTER TABLE Sales.OrderTracking SET (REMOTE_DATA_ARCHIVE = ON (
MIGRATION_STATE = OUTBOUND,
FILTER_PREDICATE = dbo.fn_stretchpredicate(TrackingEventId)));
5.我们可以执行以下语句,查看归档数据迁移的进度
SELECT * from sys.dm_db_rda_migration_status
6.等待一段时间后,我们可以执行以下T-SQL语句
USE AdventureWorks2016CTP3
GO
--显示本地数据行和数据容量
EXEC sp_spaceused 'Sales.OrderTracking', 'true', 'LOCAL_ONLY';
GO --显示云端Stretch Database的数据行和数据量
EXEC sp_spaceused 'Sales.OrderTracking', 'true', 'REMOTE_ONLY';
GO
执行结果:
如上图所示:Sales.OrderTracking保存在本地的数据有94426行
Sales.OrderTracking保存在云端Stretch Database的数据有94364行
参考资料:https://msdn.microsoft.com/en-us/library/mt613432.aspx
Azure SQL Database (22) 迁移部分数据到Azure Stretch Database的更多相关文章
- Oracle GoldenGate 支持 从SAP HANA database抽取或者复制数据到SAP HANA database 吗?
Oracle GoldenGate 支持 从SAP HANA database抽取或者复制数据到SAP HANA database 吗? 来源于: Does Oracle GoldenGate Su ...
- Azure SQL Database (21) 将整张表都迁移到Azure Stretch Database里
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database (19) Stretch Database 概览
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- Azure SQL Database (20) 使用SQL Server 2016 Upgrade Advisor
<Windows Azure Platform 系列文章目录> Azure SQL Database (19) Stretch Database 概览 Azure SQL Da ...
- 迁移 SQL Server 数据库到 Azure SQL 实战
最近有个维护的项目需要把 SQL Server 2012 的数据库迁移到 Azure SQL 上去,迁移过程可谓一波三折,故在此分享这次迁移中碰到的点点滴滴,希望对朋友们有所帮助. 文章来源:葡萄城产 ...
- 迁移 SQL Server 到 Azure SQL 实战
最近有个维护的项目需要把 SQL Server 2012 的数据库迁移到 Azure SQL 上去.主要是因为租用的主机到期,而运营商停止了主机租赁业务,看来向云端的迁移是大势所趋啊!经过一番折腾最终 ...
- 将 Azure SQL 内数据下载到本地,满足企业的「数据收集」
嫌长不看版 本文介绍了通过复制和导出两个操作,将 Azure SQL 数据库中的内容转移至其他位置(例如本地环境)的具体做法.借此可以帮助用户在 Azure 中运行数据库的同时,在本地或指定的其他位置 ...
- 价格更低、SLA 更强的全新 Azure SQL 数据库服务等级将于 9 月正式发布
继上周公告之后,很高兴向大家宣布更多好消息,作为我们更广泛的数据平台的一部分, 我们将在 Azure 上提供丰富的在线数据服务.9 月,我们将针对 Azure SQL 数据库推出新的服务等级.Azur ...
- 使用SSMS 2014将本地数据库迁移到Azure SQL Database
使用SQL Server Management Studio 2014将本地数据库迁移到Azure SQL Database的过程比较简单,在SSMS2014中,有一个任务选项为“将数据库部署到Win ...
随机推荐
- Nginx配置文件nginx.conf中文详解
#定义Nginx运行的用户和用户组user www www; #nginx进程数,建议设置为等于CPU总核心数.worker_processes 8; #全局错误日志定义类型,[ debug | in ...
- 一些Matlab函数的使用
1.Kron(A,B) 矩阵A中的每个元素都乘以矩阵B.${A_{m \times n}}$,${B_{m \times n}}$,${\bf{A}} \otimes {\bf{B}} = {({a_ ...
- Matlab中一些函数的区别
1.fix, floor,ceil,round 都是对x取整,但取整方向不同. fix(x):向0取整(也可以理解为向中间取整) floor(x):向左取整(从名字看,地板,表示下面) c ...
- Angular内置指令(一)
要注意的是不要把自己开发的指令以ng开头,以免与内置指令冲突 目录:ng-disabled,ng-readonly,ng-checked,ng-selected,ng-href,ng-src,ng- ...
- spark 2.0 中 pyspark 对接 Ipython
pyspark 2.0 对接 ipython 在安装spark2.0 后,以往的对接ipython方法失效,会报如下错错误: 因为在spark2.0后对接ipython的方法进行了变更我们只需要在py ...
- Problem of saving images in WPF (RenderTargetBitmap)zz
To save a visual to an image file need to use RenderTargetBitmap, detail is reference to Save and ...
- Terminology: Sandbox
In Comupter Secuity: from https://en.wikipedia.org/wiki/Sandbox_(computer_security) In computer secu ...
- 数据库SQL优化大总结之 百万级数据库优化方案
1.对查询进行优化,要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- BZOJ1120 : [POI2009]STR
因为问题的对称性,只需要考虑求出有多少点离$A$更近即可. 枚举$4$个绝对值的正负号,可以解出坐标范围. 若可以转化为二维数点,则可以统一扫描线+树状数组解决. 否则是三维数点,按一维排序,剩下两维 ...
- Java throws Exception、try、catch
throws Exception是方法后面接的 意思是向上级抛出异常 try{}里面的异常会被外面的catch捕捉到 抛出异常是throw new Exception("异常"); ...