SQL Azure (14) 将云端SQL Azure中的数据库备份到本地SQL Server
《Windows Azure Platform 系列文章目录》
注意:
1.只有SQL Server 2012 CU4及以上版本才支持本章内容
2.当你的数据库文件很大时,建议优化以下内容:
(1)创建新的SQL Server VM,至少4Core,将bacpac文件保存到本地磁盘。注意不能保存到D盘,D盘是临时磁盘,数据会有丢失风险
(2)将Azure SQL Database的配置升级到最高级别的P3,提高Performance
(3)按照以下内容进行数据库还原
Update 2015-10-14
现在国内世纪互联运维的Azure China,其SQL Azure组件已经升级到了V12版本。
如果是以下情况:
- 本地PC安装的是SQL Server 2012 CU4的Management Studio
- 使用SQL Azure V12数据库
还原bacpac文件的话,会遇到以下问题:
这是由于本地SQL 2012 Management Studio 客户端不支持SQL Azure V12。
笔者建议读者将SQL 2012 Management Studio升级大SQL 2014 Mangement Studio。如下图:
SQL Azure提供一系列的数据复制和同步机制。例如,本地的SQL Server数据库可以被发布到SQL Azure上;SQL Azure的数据库也可以被打包下载到本地SQL Server服务器上;您还可以通过数据同步服务(Data Sync Service)备份数据库,以及进行动态数据同步。
数据层应用程序
数据层应用程序(Data-Tier Application, DAC)封装了一个应用程序所用的所有数据库和实例对象,例如表、索引、视图、存储过程乃至用户等。
通过这个逻辑上的封装,开发者可以直接对数据库进行设置和修改,然后把封装好的数据库定义交给数据库管理员部署在任何支持DAC的数据库上。
DAC避免了维护数据库脚本的复杂性,也弱化了开发者和数据库管理员之间的相互依赖。
DAC还提供了自动化的数据库更新,从而在更新数据结构的过程中保证数据不丢失。
DAC还支持版本控制,所以开发者和数据库管理员可以像管理源代码版本一样管理不同的DAC版本。
在DAC的操作过程中经常要涌动啊的两个文件类型,一个是.bacpac,一个是.dacpac
- .bacpac:.bacpac文件包含了一个数据库中的结构和数据。其中数据库结构信息与.dacpac文件中的信息相同,而数据是以JSON格式存储的。
在逻辑上,.bacpac相当于数据库的一个备份,它的主要作用在于数据库的移植。
- .dacpac: .dacpac文件包含了一个数据库中的结构,其主要作用是把数据库结构部署到不同的环境,以及数据库结构的更新。
首先我们需要在本地安装SQL Server 2012并安装SQL Server Management Studio。
本章我将介绍如何将云端的SQL Azure中的数据库导入到本地SQL Server数据库。
1.先做好准备工作,我们使用SQL Server Management Studio在云端创建一个SQL Azure,命名为LeiDB。同时创建若干张表。如下图:
2.创建一个存储账号,命名为leizhangstorage(可以根据自己的需要选择是否需要异地冗余),同时在storage中创建container命名为dbback,设置container权限为private。
3.登陆到Windows Azure Management Portal,选择我们在步骤1中创建的SQL Azure,点击Export,如下图:
4.在弹出的Export Database Settings窗口中,设置Blob Storage和SQL Azure用户名密码
该步骤就是将SQL Azure中的LeiDB这个数据库的bacpac文件(包含了数据库结构和数据)备份到leizhangstorage这个存储账号中
5.我们以管理员身份打开本地的Visual Studio 2013,点击View->Server Explorer。
在Server Explorer中,展开Windows Azure->Storage->leizhangstorage
选中我们在步骤4中生成的bacpac文件,右键Save As,保存至本地计算机上
6.打开本地计算的SQL Server Management Studio,连接本地的SQL Server服务。
点击数据库,右键,导入数据层应用程序
在弹出的窗口中,选择从本地磁盘导入:
执行成功后,我们就可以看到云端的SQL Azure数据库已经保存到本地的SQL Server服务器上了。
经过以上的实例,我们现在在云端的SQL Azure和本地的SQL Server上有两份相同的数据库。
SQL Azure (14) 将云端SQL Azure中的数据库备份到本地SQL Server的更多相关文章
- 将SQL Azure数据库备份到本地SQL Server 2012
整个备份过程可以分为如下两大步骤进行: 一.通过“Export Data-tier Application”先将目标SQL Azure的数据库备份到本地,详细步骤如下: 1.启动SQL Server ...
- How do I copy SQL Azure database to my local development server?(如何将Azure 中的数据库备份到本地)
Now you can use the SQL Server Managerment Studio to do this: Connect to the SQL Azure database. 通过 ...
- 数据库备份与还原SQL代码
--备份数据库 --必须先创建Backup文件夹 ) SET @name = 'D:\Backup\DingHanECard_V2_ZQGDJ_' ), ) + '.bak' BACKUP DATAB ...
- 怎样将SQL Azure数据库备份到本地或者Storage
怎样备份SQL Azure数据库到本地或者云存储Storage,可以使用SQL Database Import Export 的功能. 具体操作如下: 用SSMS链接SQL Azure数据库 注意:服 ...
- MSSQL Server 数据库备份还原常用SQL语句及注意
1.备份数据库 backup database db_name to disk='d:\db_name.bak' with format --通过使用with format可以做到覆盖任何现有的备份和 ...
- SQL Server 数据库备份还原常用SQL语句及注意
1.备份数据库 backup database db_name to disk='d:\db_name.bak' with format --通过使用with format可以做到覆盖任何现有的备份和 ...
- MSSQL数据库备份还原常用SQL语句及注意
.备份数据库 backup database db_name to disk='d:\db_name.bak' with format --通过使用with format可以做到覆盖任何现有的备份和创 ...
- SQLServer中的数据库备份和还原
更多资源:http://denghejun.github.io 备份 SQLServer中的备份,这里是T-SQL的用法,具体示例代码如下,使用也相对简单,其中TestDatabase 是指所需备份的 ...
- docker容器中Postgresql 数据库备份
查看运行的容器: docker ps 进入目标容器: docker exec -u root -it 容器名 /bin/bash docker 中,以root用户,创建备份目录,直接执行如下命令, p ...
随机推荐
- Matlab 读取文件夹中所有的bmp文件
将srcimg文件下的bmp文件转为jpg图像,存放在dstimg文件夹下 str = 'srcimg'; dst = 'dstimg'; file=dir([str,'\*.bmp']); :len ...
- (UWP开发)基于Windows10 Anniversary SDK创造出位于可视化层的DropShadow
Windows.UI.Composition API是可以从任何通用Windows平台应用程序调用的声明性保留模式API,从而可以直接在应用程序中创建合成对象.动画和效果. Composition A ...
- python tkinter
1. 在python3中使用 import tkinter 异常:no module named _tkinter apt-get install python-tk
- 批发零售车销门店扫描打印一体移动销售POS机-移动终端销售O2O新模式
应用领域 终端及移动解决方案 方案概述 通过手持终端对数据进行采集并分析及汇总.利用WIFI网络和专用终端,实时上报终端的各种销量数据,如订单数据.销量数据.库存数据.补货数据.调货数据等. 业务价值 ...
- openfl使用64位的ndk时,编译报错的问题!
当使用64位的ndk时,如果使用openfl test android运行android测试,应该会出现 arm-linux-androideabi-g++:找不到这个命令的错误. 原因是,haxel ...
- iOS之 状态栏字体颜色的设置
前一段时间接手一个项目后,熟悉的过程中发现了不少问题,其中有一个就是关于状态栏的问题. 我们都知道:状态栏字体颜色在不同界面不一样的,原因是系统设置的时候把状态栏的字体颜色的界面控制器设置的yes. ...
- div高度根据内容自动增大
1.很多时候我们希望容器高度能够自适应内部元素的变化,需要用到min-height属性. 2.有时候用了min-height还是不会随着内容自适应高度,您需要检查下容器的子元素是不是有浮动属性,当子元 ...
- <input>和<textarea>
作为一个刚刚涉足PHP开发的菜鸟,第一次使用博客.在这里分享一些经验给和需要的朋友,互相探讨.共同学习,希望对你有所帮助. 废话不多说,下面进入正题. 应该有朋友和我一样,需要用到文本框,要求它会自动 ...
- Linux 环境变量 设置 etc profile
一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1.永久的:需要修改配置文件,变量永久生效. 2.临时的:使用export命令声明即可,变量在关闭shell时失效. 二. ...
- jade模板引擎
最近用jade写了点东西,觉得挺有趣的,是一个有意思的模板引擎. 比如说,像这样的结构的html <span> <i class="icon-edit">& ...