• 如何将SQL Server 2012 sp1 数据库中的数据恢复到低版本数据库中

     

    最近遇到一个特别的情形:用户应用系统在SQL Server 2012 sp1数据库中的数据,因为某种原因,要恢复到低版本数据库(例如SQL Server 2008 R2)中。

    当采用常规的备份-恢复等操作的时候,发现数据库无法完成恢复操作。

    从某种意义上讲,这和由低版本向高版本升级相反,但也都涉及到数据库兼容性级别(Database Compatibility Level)及高版本新增对象等因素。可以参考:http://social.technet.microsoft.com/wiki/contents/articles/7009.sql-server-2012-upgrade-and-application-compatibility.aspx

     

    SQL Server

    Database Compatibility Level

    SQL Server 7

    70

    SQL Server 2000

    80

    SQL Server 2005

    90

    SQL Server 2008

    100

    SQL Server 2008 R2

    105

    SQL Server 2012

    110

    但逆向操作,在某些场景确是不支持的。可以参考:http://www.mytechmantra.com/LearnSQLServer/Unable_to_Restore_Database_From_Backup.html

    一个变通的做法是:

    · 在SQL Server 2012种打开SQL Server Management Studio

    · 选择要备份的数据库,然后点击鼠标右键,在弹出菜单中选择“任务”

    · 选择“产生脚本”,在对话框中,注意请选择“高级选项”,在对话框中选择将生成脚本的服务器版本,这个时候可以选择相关低版本SQL Server 数据库

    · 在低版本SQL Server 数据库中通过执行脚本的方式,恢复数据库

    具体可见下面的屏幕截图:

    clip_image002

  • 如何在Windows Azure 应用中实现发邮件(email)、发短信(SMS)的功能

    如何在Windows Azure 应用中实现发邮件、发短信的功能

    基于Windows Azure的云应用,特别是使用Windows Azure Mobile Service,可以实现与多种设备端的通讯,例如:基于Windows 8的平板、Windows Phone 8手机、iOS平板和手机、Android平板和手机等。

    http://blogs.technet.com/b/nevin_dongs_blog/archive/2012/09/29/windows-azure-mobile-service-connected-windows-8-metro.aspx

    http://blogs.technet.com/b/nevin_dongs_blog/archive/2013/03/06/windows-azure-android-mobile-services.aspx

    http://blogs.technet.com/b/nevin_dongs_blog/archive/2012/12/21/windows-azure-mobile-services-ios-push-notifications-apns.aspx

    http://blogs.technet.com/b/nevin_dongs_blog/archive/2013/03/21/windows-azure-mobile-services-html-sdk.aspx

    但除此之外,如何也能够让Windows Azure 应用能够具备邮件功能,通过邮件来提醒;或者通过手机短信的功能来发送提醒呢?毕竟,这两种方式是很多用户,特别是信息工作者常用的通讯方式。目前,在Windows Azure提供的功能清单里,还没有发现相关支持,但一些第三方为此贡献了解决方案。

    对于邮件,可以考虑使用SendGrid来发送邮件,具体请见:

    从Java应用中来发送邮件:http://msdn.microsoft.com/en-us/library/windowsazure/hh801258.aspx

    将邮件功能与Windows Azure Mobile Service结合:http://www.windowsazure.com/en-us/develop/mobile/tutorials/send-email-with-sendgrid/

    对于一些高级功能,SendGrid这个服务是要付费的:http://sendgrid.com/windowsazure.html

    对于短信,可以考虑使用Twilio的服务:

    http://www.twilio.com/azure

    当然这个服务也不是完全免费的。

    如果有兴趣的话,其实可以基于Windows Azure开发这方面的服务,也许也是一个不错的盈利应用呢。

  • Windows Azure 虚拟机 (Virtual Machines) 已经GA,IaaS解决方案步入正式运营阶段

    访问微软Windows Azure管理门户 https://manage.windowsazure.com/,可以发现Windows Azure 虚拟机 (Virtual Machines) 已经GA,原来的“预览”标签已经不见踪影,这同时也意味着Windows Azure IaaS(基础设施即服务)解决方案进入正式运营阶段。

    clip_image002

    一个显著的变化是Windows Azure 虚拟机 (Virtual Machines)提供了新的选择,支持对更大内存计算需求的支持:

    · A6,4个内核,28GB内存

    · A7,8个内核,56GB内存

    clip_image004

    这对于内存密集型的计算类型是个好消息。以前在一些基于私有云虚拟化的测试案例中也经常发现,4到8个核的CPU在很多横向伸缩(Scale-out)的场景中有不错的表现;但内存如果能有更多,则会有更好的性能和并发表现。

    另外一个值得关注的是价格,可以访问Windows Azure定价网站的计算器,获得最新的报价:

    http://www.windowsazure.com/zh-cn/pricing/calculator/

    clip_image006

    Windows Azure IaaS极具竞争力的报价也是值得众多伙伴和开发者关注的,毕竟这也是云计算发展的出发点和最终落脚点。