WINDOWS SERVER 2016 安装SQL SERVER 2012,启用防火墙不能访问的解决办法

本文档介绍了如何通过两种方法配置Windows Defender防火墙,以允许远程连接到SQL Server。首先,通过创建程序例外来允许sqlservr.exe的入站连接。其次,使用netsh命令创建防火墙规则,但需确保将远程IP地址设置为允许所有IP。此外,检查腾讯云安全组设置,确保其设置为允许所有流量。

server是买腾讯云的CVM,关闭防火墙,用SSMS可以正常连接到SQL SERVFER, 启用防火墙就不行, 查阅很多资料, 最终答案在MS的文档里,参考这篇: 

https://docs.microsoft.com/zh-cn/sql/sql-server/install/configure-the-windows-firewall-to-allow-sql-server-access?view=sql-server-ver15

第一种方法,摘录如下:

使用高级安全 Windows Defender 防火墙向防火墙添加程序例外

  1. 从“开始”菜单键入 wf.msc 。 按 Enter 或选择搜索结果 wf.msc 打开“高级安全 Windows Defender 防火墙”。

  2. 在左窗格中,选择“入站规则” 。

  3. 在右窗格的“操作”下,选择“新建规则...”。“新建入站规则向导”随即打开。

  4. 在“规则类型”中,选择“程序” 。 选择“下一页”。

  5. 在“程序”中,选择“此程序路径” 。 选择“浏览”,找到 SQL Server 实例 。 该程序名为 sqlservr.exe。 通常位于:

    C:\Program Files\Microsoft SQL Server\MSSQL15.<InstanceName>\MSSQL\Binn\sqlservr.exe

    选择“下一页”。

  6. 在“操作”上,选择“允许连接”。 选择“下一页”。

  7. 在“配置文件”上,包括所有三个配置文件。 选择“下一页”。

  8. 在“名称” 中键入规则的名称。 选择“完成” 。

第二种方法:还是使用微软文档的建议

netsh advfirewall firewall add rule name = SQLPort dir = in protocol = tcp action = allow localport = 1433 remoteip = localsubnet profile = DOMAIN

 但是我这样设置后不起作用, 后来仔细查看, 发现问题出在  remoteip = localsubnet , 我在外网用陌生IP连入, 所以这样设置会被拒绝, 正确的设置应当是允许所有IP.可惜不知道用哪个参数,于是我用了笨办法, 在命令行执行完上述语句后, 再执行  wf.msc  , 打开防火墙设置界面

 

 双击SQLPort , 进入设置,选择作用域,注意把“远程IP地址”,设置为“任何IP地址”,这是第一个关键,因为我在外网,不是特定的网段内。 第二要点是高级里,指定配置文件,“公用”要选上。 二者配置完毕后, 就可以顺利用SSMS从家里访问腾讯云上的SQL SERVER了

 

 

如果还不行,就看看自己的腾讯云安全组设置,我设置为全通过,如下图

 

 

 

 

 

 

 

 

 

Windows Server 2016系统上安装不同版本的SQL Server的步骤和方法如下: ### 安装SQL Server 2016 1. 安装数据库: - 进入安装中心,可参考硬件和软件要求,查看说明文档。 - 选择全新安装模式继续安装。 - 输入产品秘钥,使用演示秘钥即可。 - 在协议中,点击同意,并点击下一步按钮继续安装。 - 进入全局规则检查项,可能花费几秒钟,具体时间依情况而定。 - 配置更新项,推荐检查更新。 - 选择安装更新的具体内容。 - 安装程序文件。 - 进行安装规则检查。 - 选择安装功能。 - 进行实例配置,若之前未安装过,使用默认配置即可;若之前安装过,需特别注意。 - PolyBase配置选择默认。 - 服务器配置选择默认 [^5]。 2. 安装数据库管理工具: Windows Server 2016需要单独安装数据库管理工具,可在官网上进行下载,下载地址为:https://docs.microsoft.com/zh-cn/sql/ssms/download-sql-server-management-studio-ssms?redirectedfrom=MSDN&view=sql-server-2016 。下载后,将安装包放到服务器上,双击运行安装,点击安装 [^1]。 ### 安装SQL Server 2008R2 在安装SQL Server 2008的过程中,若报错“启用windows功能NetFx3时出错”,由于SQL Server 2008R2数据库系统的运行需要依靠.NET Framework 3.5,而windows server 2016默认不安装.net framework 3.5,所以必须先在操作系统上安装.NET Framework 3.5,可通过NetFx3.cab文件安装,需先下载NetFx3.cab [^2]。 ### 安装SQL Server 2019 1. 下载:通过链接https://www.microsoft.com/zh-cn/evalcenter/evaluate-sql-server-2019?filetype=EXE 下载,若网址失效,可通过搜索引擎搜索下载 [^4]。 2. 安装:下载完成后,直接点击下一步进行安装 [^4]。 3. 部署和配置: - 配置用户名:正常需要sql验证登录,所以需要配置sa登录。 - 修改密码并启用。 - 修改服务器属性。 - 配置远程连接:完成sa登录后,需要配置远程登录。 - 配置防火墙:使用命令`netsh advfirewall firewall add rule name = SQLPort dir = in protocol = tcp action = allow localport = 1433 remoteip = localsubnet profile = DOMAIN` 配置防火墙 [^4]。 4. 创建数据库:若创建数据库时出现错误,可执行以下SQL代码: ```sql use master --选择数据库 go select spid from master.sys.sysprocesses where dbid = db_id('model'); --杀掉占用model数据库的进程 use master --选择数据库 go declare @sql varchar(100) while 1=1 begin select top 1 @sql = 'kill '+cast(spid as varchar(3)) from master..sysprocesses where spid > 50 and spid <> @@spid and dbid = db_id('model') if @@rowcount = 0 break ; print(@sql) --打印杀掉进程语句 exec(@sql) --执行杀掉进程语句 end go ``` 5. 数据库备份和还原:数据库可备份到服务器磁盘上,但不能备份到本地(如果是远程连接);获取备份数据库包后进行还原 [^4]。 6. Navicat连接:需要下载驱动(Microsoft® SQL Server® 2012 Native Client - QFE),下载地址为https://www.microsoft.com/zh-CN/download/details.aspx?id=50402 [^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值