连接到 Azure (Resource Manager) 上的 SQL Server 虚拟机

2023-05-16

概述

本主题介绍如何连接到运行于 Azure 虚拟机的 SQL Server 实例。 它介绍了一些常规连接方案,并提供了在 Azure VM 中配置 SQL Server 连接的详细步骤。

Note

Azure 具有用于创建和处理资源的两个不同的部署模型:Resource Manager 和经典。 本文介绍如何使用 Resource Manager 部署模型。Azure 建议对新的部署使用该模型,而不是经典部署模型。

如需观看预配和连接的完整演练,请参阅在 Azure 上预配 SQL Server 虚拟机。

连接方案

客户端连接虚拟机上运行的 SQL Server 的方式取决于客户端的位置与网络配置。


如果在 Azure 门户中预配 SQL Server VM,则可以选择指定“SQL 连接”的类型。

预配期间的公共 SQL 连接选项

用于连接的选项包括:

选项 说明
公共 通过 Internet 连接到 SQL Server
专用 连接到同一虚拟网络中的 SQL Server
本地 在同一虚拟机上本地连接到 SQL Server

以下各节详细说明了“公共”和“专用”选项。

通过 Internet 连接到 SQL Server

如果想要通过 Internet 连接到 SQL Server 数据库引擎,则请在预配过程中通过门户选择“公共”作为“SQL 连接”类型。 门户自动执行以下步骤:

  • 为 SQL Server 启用 TCP/IP 协议。
  • 配置防火墙规则以打开 SQL Server TCP 端口(默认值为 1433)。
  • 启用公共访问所需的 SQL Server 身份验证。
  • 在 VM 上将网络安全组配置为 SQL Server 端口上的所有 TCP 流量。
Important

SQL Server Developer Edition 和 Express Edition 的虚拟机映像不会自动启用 TCP/IP 协议。 对于 Developer Edition 和 Express Edition,在创建 VM 后,必须使用 SQL Server 配置管理器手动启用 TCP/IP 协议 。

任何可以访问 Internet 的客户端都可以连接到 SQL Server 实例,只需指定虚拟机的公共 IP 地址或分配到该 IP 地址的任何 DNS 标签即可。 如果 SQL Server 端口为 1433,则不需在连接字符串中进行指定。 以下连接字符串使用 SQL 身份验证(还可以使用公共 IP 地址)连接到具有 DNS 标签 sqlvmlabel.eastus.cloudapp.azure.com 的 SQL VM。

"Server=sqlvmlabel.chinaeast.chinacloudapp.cn;Integrated Security=false;User ID=<login_name>;Password=<your_password>"

尽管客户端可通过 Internet 进行连接,但这并不意味着任何人都可以连接到 SQL Server。 外部客户端必须有正确的用户名和密码。 但是,为了提高安全性,可以不使用 1433 这个众所周知的端口。 例如,如果将 SQL Server 配置为在端口 1500 上进行侦听并制定了适当的防火墙和网络安全组规则,则可将端口号附加到服务器名称上进行连接。 下面的示例通过将自定义端口号 1500 添加到服务器名称,对前一个端口号进行了更改:

"Server=sqlvmlabel.chinaeast.chinacloudapp.cn,1500;Integrated Security=false;User ID=<login_name>;Password=<your_password>"
Note

在 VM 中通过 Internet 查询 SQL Server 时,Azure 数据中心的所有传出数据都将服从常规出站数据传输的定价。

在虚拟网络中连接到 SQL Server

在门户中为“SQL 连接”类型选择“专用”时,Azure 会将大多数设置配置为相同的“公共”。 其中一个区别在于,不存在允许 SQL Server 端口(默认值为 1433)上的外部流量的网络安全组规则。

Important

SQL Server Developer Edition 和 Express Edition 的虚拟机映像不会自动启用 TCP/IP 协议。 对于 Developer Edition 和 Express Edition,在创建 VM 后,必须使用 SQL Server 配置管理器手动启用 TCP/IP 协议 。

专用连接通常与虚拟网络结合使用,从而启用多个方案。 可以连接同一虚拟网络中的 VM,即使这些 VM 位于不同的资源组中。 使用站点到站点 VPN,可以创建连接 VM 与本地网络和计算机的混合体系结构。

虚拟网络还允许将 Azure VM 加入域。 这是对 SQL Server 使用 Windows 身份验证的唯一方式。 其他连接方案需要使用用户名和密码进行 SQL 身份验证。

假设已在虚拟网络中配置 DNS,则可在连接字符串中指定 SQL Server VM 计算机名来连接 SQL Server 实例。 以下示例还假设同时已配置 Windows 身份验证,并且用户已获得访问 SQL Server 实例的权限。

Server=mysqlvm;Integrated Security=true

更改 SQL 连接设置

可以更改 Azure 门户中的 SQL Server 虚拟机的连接设置。

  1. 在 Azure 门户中,选择“虚拟机”。

  2. 选择 SQL Server VM。

  3. 在“设置”下,单击“SQL Server 配置”。

  4. 将“SQL 连接级别”更改为所需设置。 可以选择性地使用此区域来更改 SQL Server 端口或 SQL 身份验证设置。

    更改 SQL 连接性

  5. 请等待几分钟时间以完成更新。

    SQL VM 更新通知

为 Developer Edition 和 Express Edition 启用 TCP/IP

更改 SQL Server 连接性设置时,Azure 不会为 SQL Server Developer Edition 和 Express Edition 自动启用 TCP/IP 协议。 以下步骤说明了如何手动启用 TCP/IP,以便通过 IP 地址进行远程连接。

首先,通过远程桌面连接到 SQL Server 计算机。

  1. 创建并运行 Azure 虚拟机以后,单击 Azure 门户中的“虚拟机”图标即可查看 VM。

  2. 单击对应于新建 VM 的省略号“...”。

  3. 单击“连接”。

    在门户中连接到 VM

  4. 打开浏览器为 VM 下载的 RDP 文件。

  5. “远程桌面连接”会通知你,无法识别此远程连接的发布者。 单击“ 连接 ”以继续。

  6. 在“Windows 安全性”对话框中,单击“使用其他帐户”。 可能需要单击“更多选项”才能看到此项。 指定在创建 VM 时配置的用户名和密码。 必须在用户名之前添加反斜杠。

    远程桌面身份验证

  7. 单击“确定”进行连接。

接下来,通过“SQL Server 配置管理器”启用 TCP/IP 协议。

  1. 使用远程桌面连接到虚拟机后,搜索“配置管理器”:

    打开 SSCM

  2. 在 SQL Server 配置管理器中,在控制台窗格中,展开“SQL Server 网络配置”。

  3. 在控制台窗格中,单击“MSSQLSERVER 的协议”(默认实例名称)。在详细信息窗格中,右键单击“TCP”,然后单击“启用”(如果尚未启用)。

    启用 TCP

  4. 在控制台窗格中,单击 “SQL Server 服务”。 在详细信息窗格中,右键单击 SQL Server (实例名)(默认实例为 “SQL Server (MSSQLSERVER)”),然后单击 “重新启动” 以停止并重新启动该 SQL Server 实例。

    重新启动数据库引擎

  5. 关闭 SQL Server 配置管理器。

有关启用 SQL Server 数据库引擎的协议的详细信息,请参阅启用或禁用服务器网络协议。

使用 SSMS 进行连接

以下步骤演示如何为 Azure VM 创建可选 DNS 标签,然后与 SQL Server Management Studio (SSMS) 进行连接。

配置用于公共 IP 地址的 DNS 标签

若要从 Internet 连接到 SQL Server 数据库引擎,请考虑创建用于公共 IP 地址的 DNS 标签。 可以通过 IP 地址进行连接,但 DNS 标签可以创建更容易标识的 A 记录,并可抽象基础性公共 IP 地址。

Note

如果打算只连接到同一虚拟网络中的 SQL Server 实例,或者只进行本地连接,则 DNS 标签不是必需的。

若要创建 DNS 标签,请首先在门户中选择“虚拟机” 。 选择要显示其属性的 SQL Server VM。

  1. 在虚拟机概述中,选择“公共 IP 地址”。

    公共 ip 地址

  2. 在公共 IP 地址的属性中,展开“配置” 。

  3. 输入 DNS 标签名称。 此名称是一种可通过名称而非 IP 地址直接连接到 SQL Server VM 的 A 记录。

  4. 单击“保存”按钮 。

    dns 标签

从其他计算机连接到数据库引擎

  1. 在连接到 Internet 的计算机上,打开 SQL Server Management Studio (SSMS)。 如果没有 SQL Server Management Studio,可以从此处下载。

  2. 在“连接到服务器”或“连接到数据库引擎”对话框中,编辑“服务器名称”值。 输入虚拟机的 IP 地址或完整 DNS 名称(已在上一个任务中确定)。 也可添加逗号并提供 SQL Server 的 TCP 端口。 例如,mysqlvmlabel.chinaeast.cloudapp.chinacloudapi.cn,1433

  3. 在“身份验证”框中,选择“SQL Server 身份验证”。

  4. 在“登录” 框中,键入有效 SQL 登录的名称。

  5. 在“密码” 框中,键入登录的密码。

  6. 单击“连接”。

    ssms 连接

后续步骤

若要查看预配说明以及这些连接步骤,请参阅在 Azure 上预配 SQL Server 虚拟机。

有关其他与在 Azure VM 中运行 SQL Server 相关的主题,请参阅 Azure 虚拟机上的 SQL Server。

立即访问http://market.azure.cn

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

连接到 Azure (Resource Manager) 上的 SQL Server 虚拟机 的相关文章

  • Sql Server:如何在 WHERE 子句中使用 MAX 等聚合函数

    我想获得该记录的最大值 请帮我 SELECT rest field1 FROM mastertable AS m INNER JOIN SELECT t1 field1 field1 t2 field2 FROM table1 AS T1
  • 表名搜索

    我使用以下命令在特定数据库的存储过程中搜索字符串 USE DBname SELECT Name FROM sys procedures WHERE OBJECT DEFINITION OBJECT ID LIKE xxx 修改上面的内容是否
  • Azure Functions - 配置客户端证书身份验证

    函数是否支持通过使用客户端证书来授权对函数的访问消费计划 类似于所描述的方法here https learn microsoft com en us azure app service app service web configure t
  • 如何将 MySQL 数据库更改为 UTC?

    我使用的是 Windows 7 对数据库方面的东西有点陌生 我尝试在 Google 上搜索如何将系统时区更改为 UTC 但文档有些高级 我不太确定如何更改此字段 在 my ini 文件的 mysqld 部分下 添加以下行 default t
  • 对于数据库来说,选择正确的数据类型会影响性能吗?

    如果是这样 为什么 我的意思是 tinyint 的搜索速度比 int 快吗 如果是这样 性能上的实际差异是什么 是的 根据数据类型 它确实有所不同 int vs tinyint不会在速度上产生明显的差异 但会在数据大小上产生差异 假设tin
  • 使用多行选项和编码选项读取 CSV

    在 azure Databricks 中 当我使用以下命令读取 CSV 文件时multiline true and encoding SJIS 似乎编码选项被忽略了 如果我使用multiline选项 Spark 使用默认值encoding那
  • Azure 不会覆盖应用程序设置

    在我的 Azure 应用服务中 我想更新应用程序设置 但从 VS 发布后 密钥不会覆盖本地 Web config 中的值 In Azure it looks like 在结果中 我在 azure 上的 web config 包含来自本地设置
  • 查询中列的顺序重要吗?

    当从 MySQL 表中选择列时 与表中的顺序相比 选择列的顺序是否会影响性能 不考虑可能覆盖列的索引 例如 您有一个包含行 uid name bday 的表 并且有以下查询 SELECT uid name bday FROM table M
  • SPARK SQL - 当时的情况

    我是 SPARK SQL 的新手 SPARK SQL 中是否有相当于 CASE WHEN CONDITION THEN 0 ELSE 1 END 的内容 select case when 1 1 then 1 else 0 end from
  • 根据表sql中的行替换字符串中的字符

    我需要用一些映射的字符替换字符串中的字符列表 我有一个表 dbo CharacterMappings 有 2 列 CharacterToFilter 和 ReplacementCharacter 假设这个表中有3条记录 Filter Rep
  • SQL Server 用分隔符分割字符串

    我有一个输入字符串 100 2 3 101 2 1 103 2 3 我想解析它并将其添加到具有 3 列的表中 因此它应该是 f x col1 col2 col3 100 2 3 类似的其他数据以逗号分隔作为记录和 作为列 Thanks ni
  • 使用两个日期之间的随机日期时间更新每一行

    我有一个专栏叫date created我希望每一行保存一个随机日期 日期距当前时间为 2 天 我正在运行以下查询 但它会更新具有相同随机日期的所有行 我希望每一行都是随机的并且不相同 update table set date create
  • PHP 绑定“bigint”数据类型(MySQLi 准备好的语句)

    studentId 57004542323382 companyOfferId 7 sql INSERT INTO studentPlacement companyOfferId studentId VALUES if stmt db gt
  • 复选框上的数据绑定

    我目前正在将数据从 SQL 数据库之一提取到我的应用程序中 我可以让它适用于我的文本框和其他项目 但是 我似乎无法让它适用于复选框 这是我正在使用的代码 DataTable dt new DataTable dt using SqlConn
  • 为什么这会返回资源 id #2? [复制]

    这个问题在这里已经有答案了 可能的重复 我如何从 PHP 中的 MySql 响应中 回显 资源 id 6 https stackoverflow com questions 4290108 how do i echo a resource
  • 更改迁移中的自动​​增量值(PostgreSQL 和 SQLite3)

    我有一个托管在 Heroku 上的项目 想要更改表的自动增量起始值 我在本地使用 SQLite3 Heroku 使用 PostgreSQL 这是我在迁移中所拥有的 class CreateMytable lt ActiveRecord Mi
  • Oracle:使用SQL或PL/SQL查找动态SQL中的错误位置

    如何在 PL SQL 或 SQL 中找到动态 SQL 语句中的错误位置 从 SQL Plus 中 我看到了错误的位置 例如 无效的 SQL DML 语句 SYS orcl gt SELECT 2 X 3 FROM 4 TABLEX 5 TA
  • sql server 按组排名

    问题看似简单 但我却无法理解 这是针对 sql 服务器的 what I have in a table What I need as a output cksum id cksum id 2162514679 204 2162514679
  • 是否有适用于所有数据库的标准sql

    如下所示 不同数据库的语法有所不同 是否存在适用于所有数据库的标准方法 有没有什么工具可以将任意sql转换为任意sql SQL Server 2005 CREATE TABLE Table01 Field01 int primary key
  • 使用 where 进行 select 语句时,HSQLDB 用户缺乏权限或未找到对象错误

    我的数据库使用 SQuirrel SQL 客户端版本 3 5 3 和 HSQLDB 我已经能够为其指定相应的驱动程序 内存中 并创建一个别名 我创建了一个表 CREATE TABLE ENTRY NAME VARCHAR 100 NOT N

随机推荐

  • cmake 中 Error in configuration process, project files may be invalid

    qt配置opencv时 xff0c 用到cmake xff0c 弹出窗口 Error in configuration process project files may be invalid 错误 xff0c 主窗口显示 CMake Er
  • paddlepaddle(一)文字识别 - PaddleOCR简单使用

    PaddleOCR一步安装即可使用 OCR结果如图 xff1a 步骤 xff1a 可以直接使用pip安装PaddleOCR库 pip install paddleocr 执行代码即可 xff0c 示例 xff1a from paddleoc
  • python 把文件夹及子文件夹内的所有文件移动到指定文件夹中

    python 把文件夹及子文件夹内的所有文件移动到指定文件夹中 1 提取路径下所有文件到指定文件夹下 import shutil import os def move files source dest for root dirs file
  • vscode 中文乱码(解决方法)

    vscode一次自动更新后 xff0c 发现中文乱码了 查看了网上的解答 xff0c 记录一种解决方法 切换右下角任务栏的编码方式 xff0c UFT gt GB2312 或下拉GBK xff0c 如下图 xff1a
  • max_element() 和 min_element()

    找出容器中的最值 vector和数组都可以 一维的数据可以 多维的还没找到方法 xff0c 可能是不行的 完整代码 xff1a include lt iostream gt include lt vector gt include lt a
  • C/C++ 提取字符串中的指定位置(截取字符串、提取字符串)

    版权声明 xff1a 转载需标明该文链接 https blog csdn net zaibeijixing article details 88721195 一 利用C 43 43 自带字符串函数 xff1a int a 61 str fi
  • 树莓派-从入手到使用(一):树莓派入手操作第一步

    新组装的电脑硬盘显卡什么都有 xff0c 把window或linux系统安装在硬盘上就能开机使用了 树莓派没硬盘 xff0c 因此需要加个内存卡当硬盘 xff0c 另外要给这个硬盘上安装系统 xff0c 才能用 本人的是Raspberry
  • jupyter notebook 中运行.py文件

    jupyter notebook页面 xff0c 在需要运行的name py文件目录页面中 xff0c 新建python文件 xff0c 打开 xff0c 在cell中添加如下命令 xff1a run name py 运行该cell即可 根
  • 直方图均衡化及算法步骤

    2019 07 16 xff0c 科学家首次拍摄到一种量子纠缠的照片 量子领域还不懂 xff0c 先不研究 猛一看和今年刚出的黑洞照片倒有几分相似 黑洞照片看起来还是比较清晰地 xff0c 这个是黑白的 xff0c 亮度不均 xff0c 肉
  • 解决mongodb启动报错ERROR: child process failed, exited with error number 14的问题

    在使用mongodb导入数据时 xff0c 数据库无法链接 xff0c 关闭service 后仍然无法启动 可能的原因 xff1a service mongodb restart时启动失败没有正常关闭mongodb引起的 xff0c 比如直
  • 面向对象分析(4):步骤

    面向对象分析通常按照下面的步骤来进行 xff1a xff08 1 xff09 标识对象和类 可以从应用领域开始 xff0c 逐步确定形成整个应用的基础类和对象 这一步需要分析领域中目标系统的责任 xff0c 调查系统的环境 xff0c 从而
  • NTFS for Mac - 免费让 Mac 原生支持NTFS读写

    使用 Mac 电脑的朋友可能都遇过 xff0c 在使用 NTFS 文件格式的移动硬盘或U盘时 xff0c 默认只能以 只读 模式打开 xff0c 也就是说你只能读取复制文件而不能移动 修改 重命名或删除里面的东西 这确实很不便 xff0c
  • C++ 将十六进制字符串转换为二进制字符串

    C 43 43 将十六进制字符串转换为二进制字符串 前言一 源代码 前言 一种简单的方法将十六进制字符串转为二进制字符串 xff0c 不限制十六进制的字节数 一 源代码 传入的十六进制字符串需要转换为大写 xff01 X toupper s
  • python——paramiko详解

    目录 一 SSHClient类 ssh远程连接服务器 connet 远程主机没有本地主机密钥或HostKeys对象时的连接方法 xff0c 需要配置set missing host key policy policy 远程执行命令 在远程服
  • 绿盟网站安全防护服务(vWAF)

    平台 xff1a linux 类型 xff1a 虚拟机镜像 软件包 xff1a basic software devops nsfocus security waf 服务优惠价 按服务商许可协议 云服务器费用 查看费用 立即部署 产品详情
  • 华为服务器操作系统EulerOS V2.0

    平台 xff1a linux 类型 xff1a 虚拟机镜像 软件包 xff1a java 1 8 0 php 5 4 16 python 2 7 5 qt 4 8 5 tomcat 7 0 69 basic software euleros
  • 星环一站式大数据平台-4.6

    平台 xff1a arm 类型 xff1a ARM 模板 软件包 xff1a 星环一站式大数据平台 basic software big data hadoop tdh tos transwarp 大数据 星环科技 星环一站式大数据平台 云
  • 故障排除:无法启动、访问或连接到 Azure 虚拟机上运行的应用程序

    有多种原因可导致无法启用或连接到在 Azure 虚拟机 VM 上运行的应用程序 原因包括应用程序未在预期端口上运行或侦听 侦听端口受到阻止 xff0c 或网络规则未将流量正确传递到应用程序 本文说明有条理地找到问题并更正问题 如果在使用 R
  • 文件系统损坏导致虚拟机无法正常启动的问题及解决方法

    简介 计算机的文件系统是一种存储和组织计算机数据的方法 xff0c 它使得对其访问和查找变得容易 xff0c 文件系统使用文件和树形目录的抽象逻辑概念代替了硬盘和光盘等物理设备使用数据块的概念 xff0c 用户使用文件系统来保存数据不必关心
  • 连接到 Azure (Resource Manager) 上的 SQL Server 虚拟机

    概述 本主题介绍如何连接到运行于 Azure 虚拟机的 SQL Server 实例 它介绍了一些常规连接方案 xff0c 并提供了在 Azure VM 中配置 SQL Server 连接的详细步骤 Note Azure 具有用于创建和处理资