SQL Server 远程连接服务器数据库

15 篇文章 0 订阅
7 篇文章 0 订阅

本文解决sql server的远程连接问题。需要开启防火墙,开启端口,并处理权限不足的报错:
【use 某数据库】The server principal "[server]" is not able to access the database "[database]" under the current security context.
【select 查询】The SELECT permission was denied on the object '[table]', database 'master', schema 'dbo'.


为了使笔记本(Win 10)本地的Microsoft SQL Server Management Studio (SSMS) 2017连上服务器端(Win 7)的Microsoft SQL Server 2014数据库,我依次进行了下述操作。

一、服务端防火墙

测试时使用第1种,后面需要更改为第2种。

1. 禁用防火墙

控制面板\系统和安全\Windows Defender 防火墙,打开或关闭Windows Defender防火墙,(使用推荐的防火墙设置),关闭Windows防火墙。

2. 设置特定端口启用

控制面板\系统和安全\Windows Defender 防火墙\启动或关闭防火墙\启动。Windows Defender 防火墙-入站规则-新建-端口-1433-…名称sqlserver。

3. 防火墙特定端口禁用(暂时不需要)

控制面板\系统和安全\Windows Defender 防火墙,启用或关闭Windows Defender防火墙,启用。高级设置-入站规则,新建规则-规则类型:端口-协议和端口:TCP,137,139,445,593,1025,2745,3127,6129,3389-操作:阻止连接,后面按顺序进行。

二、服务端端口

1. 查看

打开配置工具查看:

  • Microsoft sql server 2014(“开始”处完整名称) / Configuration tools / [红色包包]configuration manager。
  • 进入后打开目录:Network configuration / Protocols for WINCC / TCP/IP: enabled.
  • 右击属性,选择IP Address,拉到最下面IPALL,可以从TCP Dynamic Ports看到当前SQL server的端口号。

2. 设置

接上小节打开至TCP Dynamic Ports

  • 点击TCP Dynamic Ports的值,选择1433。设置成功,接下来重启服务才能生效。
  • Win + R输入services.msc进入服务,选择其中的SQL server (WINCC),右键选择重新启动。
  • 然后检查: netstat –ano | findstr 1433,可以看到其中已经有LISTENING的进程了。
  • 尝试远程连接,此时就能正常连接了。

三、客户端远程连接

1. 连接成功之后

由于我是用一个普通用户连接的,结果上去只能看到有哪些库,看不到数据。执行Query语句,报错:

消息 916,级别 14,状态 1,第 16 行
The server principal "YF75" is not able to access the database "BarcodeScan" under the current security context.

看来得用sa账户了。
在这里插入图片描述

2. 远端启用sa账户

Super Administrator。【参考1】

1) 设置密码并启用

启动SQL Server Management Studio,先用Windows身份验证登录之后,选择目录:安全性(security)/登录名(logins)/sa右击属性(properties),进入设置页面。

  • 点击常用(General),更改右侧密码(password)并验证(confirm password),记住密码。
  • 点击状态(status),点击登录(login)中的启动(Enabled)
  • 确定。
2) 启用密码登录模式

如果你已经远程登录过,这一步就不用设置了,肯定已经打开了。如果没有,设置的路径是:

  • 右击数据库栏最上方的数据库名(电脑名或IP),选属性,点击安全性,选中右侧身份验证中的“SQL server 和身份验证模式”,并确定。
  • 然后,再次右击数据库名,选择中间位置的重启(restart),是。
  • 最后,断开数据库连接,选择密码登录,试一下是否开启成功。

3. 再次远程连接

使用sa账户连接。
值得注意的是,重新连接后,记得关闭一下脚本再重新加载一下,防止出现登录名是sa但脚本是其他普通用户的情况。否则会继续报错,如图所示:
在这里插入图片描述
至此,可以连接成功!
参考1:https://blog.csdn.net/ren6370/article/details/73409989。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
你可以使用以下步骤连接SQL Server 服务器: 1. 安装 SQL Server Management Studio (SSMS):首先,你需要下载并安装 SQL Server Management Studio (SSMS)。你可以从 Microsoft 官方网站下载适用于你的操作系统的 SSMS 版本。 2. 打开 SQL Server Management Studio:安装完 SSMS 后,打开它。 3. 连接服务器:在 SSMS 中,点击左上角的 "连接" 按钮,或者选择 "文件" -> "连接对象资源管理器"。这将打开 "连接服务器" 对话框。 4. 配置连接参数:在 "连接服务器" 对话框中,选择 "服务器类型" 为 "数据库引擎"。然后,在 "服务器名称" 输入框中,输入你要连接SQL Server 实例的名称或 IP 地址。如果 SQL Server 实例是默认实例,则只需输入计算机名称或 IP 地址即可。如果是命名实例,则需要输入计算机名称或 IP 地址,后跟反斜杠 (\) 和实例名称。 5. 验证身份验证方式:在 "身份验证" 下拉菜单中,选择适当的身份验证方式。如果你使用 Windows 身份验证登录到 SQL Server,则选择 "Windows 身份验证"。如果你设置了 SQL Server 身份验证(用户名和密码),则选择 "SQL Server 身份验证"。 6. 输入凭据:根据所选择的身份验证方式,输入相应的凭据。如果选择了 Windows 身份验证,则将自动使用当前登录的 Windows 用户凭据。如果选择了 SQL Server 身份验证,则需要输入用户名和密码。 7. 测试连接:点击 "连接" 按钮测试连接。如果一切设置正确,你将成功连接SQL Server 服务器。 请注意,这些步骤可能因为你使用的 SQL Server 版本或环境而略有不同,但基本的连接过程是相似的。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值