通过本地的SQL Manage sutudio管理windows azure上的SQL Server

本文涉及的产品
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
云数据库 RDS SQL Server,基础系列 2核4GB
简介:

说到windows azure上的SQL创建,我们在上一篇文章上有介绍了,那今天主要介绍什么呢,我们发现在windows azure上创建的sql数据库下没有SQL Server代理选项功能。我相信大家都用过SQL Server代理相关的功能,具体功能就不用多说了。拿我来说,因为我们有个服务的数据是写入到SQL Server上的,我们在本地通过计划人物实现对数据保留60天,然后通过web方式查询,这样就比较方便了,比较效率高了,如果数据库下的数据越多,搜索的越慢,所以我坚持使用sql server的计划维护任务。另外,我将多个服务的log写入到了sql下,每天几乎能写几十万条,但是对其中的部分内容感兴趣,想把一些关键字的内容从数据库下删除,这样我也只能结束SQL 代理下的计划任务了。我当时想,那如果windows azure上没有图形界面,那应该有命令了吧!最后通过了解,windows azure上不支持sql agent job的功能,听完后,心一下凉了一大半截,那有什么好的办法么,通过跟windows azure上的人员了解,有另外的一种方法可以实现对windows azure上的SQL 做计划任务维护,不管怎么样,只要有办法就行啊,今天呢,我就这给大家分享一下,通过本地的manage studio来新建计划来远程维护windows azure上的SQL数据。

官网介绍,windows azure上的数据库不支持代理。

http://msdn.microsoft.com/library/azure/ee336245.aspx#sqlagent

我们今天操作,需要通过SQL语句来远程管理windows azure上的SQL数据,那是什么语句呢,格式又是什么呢?我们再次简单说一下哈。

我们借助的是:sqlcmd语句。

sqlcmd -U xxxxx -P xxxxxx -S xxxxx -d HolTestDB -Q "sql语句

-U : SQL Database的用户名

-P : 密码

-d: 数据库名称

-Q: sql语句

举例:我试图通过sqlcmd去删除我的SQL Database中,HolTestDB数据库下,名为People表中,ID大于13的数据。那么这个命令为:

sqlcmd -U xxxxx -P xxxxxx -S xxxxx -d HolTestDB -Q "delete  from People where ID > 13"

-S : 服务器DNS名称。您可以通过管理门户找到,如下图

其实大家主要记住以下格式就可以了:我们在后面将两个实列

sqlcmd -U 用户名 -P 密码 -S 服务器名称 -d 数据库名称 -Q "sql语句"

环境介绍:

SQL服务器:wrllkpz6kb.database.chinacloudapi.cn

数据库:Domino

表: logs

登录名:wenlong

密码:Password8

今天主要介绍两条主要的名:

删除数据库中指定字段下的指定数据;

需要注意的是SQL语句中%(百分号)的应用,要删除范围内的数据,都需要添加%百分号来应用,但是数据和%之间不能有空格,在语句中,空格也算一个空格,

1.delete from Domino where sevent like 'SMTP Server:%'

2.sqlcmd -U wenlong -P Password8 -S wrllkpz6kb.database.chinacloudapi.cn -d Domino -Q " delete from Domino where sevent like 'SMTP Server:%'"

删除数据库中除了60天以外的数据:

1.delete from [Domino].[dbo].logs where dateadd(month,6,log_date) < getdate();

2.sqlcmd -U wenlong -P Password8 -S wrllkpz6kb.database.chinacloudapi.cn -d Domino -Q " delete from [Domino].[dbo].logs where dateadd(month,6,log_date) < getdate();

"

1.我们需要在在本地打开SQL Manage studio,然后展开SQL Server代理,新建作业

image

作业名称根据自己的环境可编写。确认

image

2. 选择步骤:名称随意,类型--操作系统(如果通过本地的manage studio远程管理windows azure的SQL必需选择类型—操作系统。),然后在命令输入框,输入需要执行的命令。

image

为了方便测试,我将sql语句暂时更改为select * from logs,然后在控制台进行查看,命令是否生效。

image

操作前,我先通过manage studio执行看看我数据库下的表的数据

Select * from logs

image

为了判断我的命令是否生效,我先将代码复制,然后在命令行执行一下试试结果。

sqlcmd -U wenlong@wrllkpz6kb -P Password8 -S wrllkpz6kb.database.chinacloudapi.cn -d Domino -Q "select * from logs"

image

如果出现以上界面的话,那说明,远程命令是执行成功的。我们在自己的环境可,可将需要执行的语句替换即可。

然后我们可以将该命令写入到了SQL语言中了。

image

保存后,我们右击新建的作业----作业开始步骤,开始测试

image

经过测试,作业可以正常运行。

image

既然是作业呢,我们需要设置一个定时计划,编辑作业,然后—计划,根据自己的时间可以进行设置。保存

image

如果需要创建多个程序,我们可以在步骤下新建多个步骤,或者在第一个sql语句中,以分号分开多条SQL语句也行。双引号下可以输入多条语句,以分号(;)分开即可。

sqlcmd -U wenlong -P Password8 -S wrllkpz6kb.database.chinacloudapi.cn -d Domino -Q "select * from logs;select * from other tablse "



本文转自 高文龙 51CTO博客,原文链接:http://blog.51cto.com/gaowenlong/1532875,如需转载请自行联系原作者

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
相关文章
|
2月前
|
SQL 数据库
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)之解决方案
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)之解决方案
284 0
|
3月前
|
关系型数据库 MySQL 网络安全
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
5-10Can't connect to MySQL server on 'sh-cynosl-grp-fcs50xoa.sql.tencentcdb.com' (110)")
|
4月前
|
Java 应用服务中间件 Maven
从零到英雄:一步步构建你的首个 JSF 应用程序,揭开 JavaServer Faces 的神秘面纱
【8月更文挑战第31天】JavaServer Faces (JSF) 是一种强大的 Java EE 标准,用于构建企业级 Web 应用。它提供了丰富的组件库和声明式页面描述语言 Facelets,便于开发者快速开发功能完善且易于维护的 Web 应用。本文将指导你从零开始构建一个简单的 JSF 应用,包括环境搭建、依赖配置、Managed Bean 编写及 Facelets 页面设计。
100 0
|
4月前
|
SQL 关系型数据库 MySQL
【超全整理】SQL日期与时间函数大汇总会:MySQL与SQL Server双轨对比教学,助你轻松搞定时间数据处理难题!
【8月更文挑战第31天】本文介绍了在不同SQL数据库系统(如MySQL、SQL Server、Oracle)中常用的日期与时间函数,包括DATE、NOW()、EXTRACT()、DATE_ADD()、TIMESTAMPDIFF()及日期格式化等,并提供了具体示例。通过对比这些函数在各系统中的使用方法,帮助开发者更高效地处理日期时间数据,满足多种应用场景需求。
463 0
|
4月前
|
SQL 关系型数据库 MySQL
SQL Server、MySQL、PostgreSQL:主流数据库SQL语法异同比较——深入探讨数据类型、分页查询、表创建与数据插入、函数和索引等关键语法差异,为跨数据库开发提供实用指导
【8月更文挑战第31天】SQL Server、MySQL和PostgreSQL是当今最流行的关系型数据库管理系统,均使用SQL作为查询语言,但在语法和功能实现上存在差异。本文将比较它们在数据类型、分页查询、创建和插入数据以及函数和索引等方面的异同,帮助开发者更好地理解和使用这些数据库。尽管它们共用SQL语言,但每个系统都有独特的语法规则,了解这些差异有助于提升开发效率和项目成功率。
419 0
|
4月前
|
SQL JavaScript 前端开发
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无法输出问题
|
4月前
|
SQL Java 数据库连接
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
【Azure 应用服务】Java ODBC代码中,启用 Managed Identity 登录 SQL Server 报错 Managed Identity authentication is not available
|
4月前
|
SQL Java 数据库连接
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
【Azure Spring Cloud】Azure Spring Cloud connect to SQL using MSI
|
3月前
|
SQL 数据库
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
SQL Server附加数据库出现错误823,附加数据库失败。数据库没有备份,无法通过备份恢复数据库。 SQL Server数据库出现823错误的可能原因有:数据库物理页面损坏、数据库物理页面校验值损坏导致无法识别该页面、断电或者文件系统问题导致页面丢失。
104 12
数据库数据恢复—SQL Server数据库报错“错误823”的数据恢复案例
|
19天前
|
SQL 存储 Linux
从配置源到数据库初始化一步步教你在CentOS 7.9上安装SQL Server 2019
【11月更文挑战第8天】本文介绍了在 CentOS 7.9 上安装 SQL Server 2019 的详细步骤,包括系统准备、配置安装源、安装 SQL Server 软件包、运行安装程序、初始化数据库以及配置远程连接。通过这些步骤,您可以顺利地在 CentOS 系统上部署和使用 SQL Server 2019。