用SSMS连接Azure Sql Database 与连接本地库的一些操作区别

背景

我们知道Azure Sql Database 可以降低运维成本、是一种Pass模式,有资源弹性设置,可以自由调整资源自动对应不同业务高峰(当然也可以降低费用成本),也方便项目后期的资源扩展,以及一些其他优点或特性,这就不一一列出。那么数据库开发工程师来说,操作Azure Sql Database 与我们使用的SSMS(Microsoft Sql Server Management Studio)在本地库上操作有哪些区别。

我们简单从如下几部分进行比较

1.创建对象比较;(简单列一下Azure 上创建数据库操作,SSMS创建数据库默认省略)

2.连接库比较;

3.操作比较;

1.创建对象比较

2.链接库的比较

通过上述图可以看到,在azure sql database 中涉及到实例一级的对象都是没有了。

在azure sql database大概总结如下:

1.没有 AlwaysON,没有数据库镜像,没有日志传送,没有复制。 有异地复制可以直接添加数据库辅助副本(库大小是指数据文件大小);

2.没有 agent ;如需执行定时调度可以参考《通过本地Agent监控Azure_sql_database》

3.没有SSIS;

4.不支持实例一级的对象(如不支持全局临时表、没有Profiler等);如需监控可以参考《如何在Azure sql database 下监控正在运行的脚本或某个存储过程是否已运行》

3.具体操作方面比较

通过上图发现azure sql database系统数据库中没有tempdb,那能否使用临时表之类的对象?

首先查看当前的azure sql database 版本号

测试临时表(不是sql server 2016 temporal table)

可以使用临时表,不支持使用全局的临时表。

Pass模式下,某些命令已不支持。

注意默认的getdate()是UTC时间,与北京时间相差8小时。

不能在本库显式调用其他库,如:use master

默认情况下,azure sql database 不支持跨库操作,需要创建扩展表,建同构同名的表,只能是只读且架构唯一。如要存储过程进行跨库操作,需使用sp_execute_remote调用。

ssms 2012界面下存储过程点右键如下图:

SSMS 2016界面下存储过程点右键如下图:

UI界面操作,建议安装最新版本SSMS.或者 exec sp_helptext 加具体的存储过程名称,执行,把执行结果拷出才是存储过程的脚本;

参考资料

如何创建扩展表

sp_execute_remote

总结

azure sql database 与ssms相比:

1.没有 AlwaysON,没有数据库镜像,没有日志传送,没有复制。 有异地复制可以直接添加数据库辅助副本(库大小是指数据文件大小);

2.没有 agent ;如需执行定时调度可以参考《通过本地Agent监控Azure sql database》

3.没有SSIS;

4.不支持实例一级的对象(例如不支持全局变量、没有Profiler等);如需监控可以参考《如何在Azure sql database 下监控正在运行的脚本或某个存储过程是否已运行》

5.有些命令不支持,因azure sql database 是Pass模式;

6.注意默认getdate()是取UTC时间,与北京时间相差8小时;

7.不能在本库显式调用其他库;

8.默认情况下,azure sql database 不支持跨库操作,需要创建扩展表,建同构同名的表,只能是只读且架构唯一;

9.azure sql database 是基于v12的引擎,要在UI界面上操作建议安装ssms 2016版操作。

10.用户名限制,不能使用admin\administrator\sa\guest\root

时间: 2024-10-22 13:43:16

用SSMS连接Azure Sql Database 与连接本地库的一些操作区别的相关文章

Java连接Azure SQL Database

Azure SQL Database是Azure上的数据库PAAS服务,让用户可以快速的创建和使用SQL数据库而不用担心底层的备份,安全,运维,恢复等繁琐的工作,本文简单介绍如何使用Java程序连接到SQL Azure数据库. 首先登录到你的Azure管理界面,选择创建新的SQL数据库,选择自定义创建: 输入数据库的名称,运维是第一次创建,所以选择新建SQL数据库服务器,对于不同的服务级别,请参照相关文档: 输入你的数据库登录名,密码,选择数据库区域,当然你的数据库应该和你的应用程序在一个于以获

[转]Azure 表存储和 Windows Azure SQL Database - 比较与对照

本文转自:https://msdn.microsoft.com/library/azure/jj553018 更新时间: 2014年10月 作者:Valery Mizonov 和 Seth Manheim 审阅者:Brad Calder.Jai Haridas.Paolo Salvatori.Silvano Coriani.Prem Mehra.Rick Negrin.Stuart Ozer.Michael Thomassy.Ewan Fairweather 本主题比较  支持的两种结构化存储类

通过SSMS工具迁移本地的SQL Server Database到Windows Azure SQL Database

微软的产品更新越来越快了,几乎每年都有产品更新,今天呢,我们主要介绍一下,如何将本地的SQL Server数据库迁移到windows azure上的SQL Server Database.当然说到SQL Serrver数据库的迁移,大家都会想到最普通及最普遍的方法,那就是通过备份数据库,然后通过备份的数据库文件进行还原.其实呢,我们在IT运维的工作中多少会有体会,最普通的方法往往是最有效的方法也是最安全的方法,但是效率不高,由于时代进步的太快了,我们也不能太out了,也不想用这个古老的方法去做数

使用SSMS 2014将本地数据库迁移到Azure SQL Database

使用SQL Server Management Studio 2014将本地数据库迁移到Azure SQL Database的过程比较简单,在SSMS2014中,有一个任务选项为“将数据库部署到Windows Azure SQL Database”: 使用本选项可实现一键迁移到Azure SQL Database. 但是, 最近由于近期Azure的改动,导致Azure支持的数据库类型与SSMS2014中数据库的类型不匹配,整个迁移过程会死在在Azue中创建数据库的步骤上.在国际版Azure, 已

使用SQL Database Migration Wizard把SQL Server 2008迁移到Windows Azure SQL Database

本篇体验使用SQL Database Migration Wizard(SQLAzureMW)将SQL Server 2008数据库迁移到 Azure SQL Database.当然,SQLAzureMV还可以把SQL Server 2005/2012/2014迁移到Azure SQL Database. SQLAzureMV有几个版本:1.SQLAzureMW v3x 适用于 .NET Framework 3.5 和 SQL Server 2008 R2 SP1 2.SQLAzureMW v4

How to: Configure an Azure SQL Database firewall using the Azure Portal

突然想写博客 , 毕竟早上一直打不开Azure的官方文档 , 想找个中文也没有 , 原文英文链接 : How to: Configure an Azure SQL Database firewall using the Azure Portal 一年没有更新博客 , 毕竟变成大四狗了 , 这次解决问题如下 , 我在Azure上面新建了SQL数据库 , 连接的时候报错 .  回到Azure门户看到有解决文章: 找到你的门户上面的数据库 点击 工具 → 在 Visual Studio 中打开 → 配

通过本地Agent监控Azure sql database

背景: 虽然Azure sql database有DMVs可以查看DTU等使用情况,但记录有时间限制,不会一直保留.为了更好监控Azure_sql_database上各个库的DTU使用情况.数据库磁盘使用情况.阻塞等情况.通过本地的Agent的job使用link server 链接到各个Azure sql database 对应库(本地Ip能直连azure sql database),把相关的信息读取出来,存储在本地已新建好的对应表中,通过分析本地对应表中记录来实现监控azure sql dat

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 Stretc

Azure SQL Database (23) Azure SQL Database Dynamic Data Masking动态数据掩码

<Windows Azure Platform 系列文章目录> 我们在使用关系型数据的时候,有时候希望: - 管理员admin,可以查看到所有的数据 - 普通用户,某些敏感字段,比如信用卡,电子邮件等字段都是屏蔽的 在这种情况下,就可以使用Dynamic Data Masking动态数据掩码,对数据表的某些字段进行屏蔽. 比如我们对用户的信用卡信息.邮箱地址进行屏蔽,可以起到保护用户隐私的作用. 动态数据屏蔽策略: 1.不对其进行屏蔽的SQL用户:一组可以在 SQL 查询结果中获取非屏蔽数据的