一直都是连接的远程测试服务器的数据库,今天想把自己的数据库开放出来让公司同事连接,竟然连接失败!转了很大一个圈终于搞定了。

接下来就把这次心历路程发出来,希望能帮助到有需要的博友。

PS: 我和同事的数据库是 sqlserver2008,sql2000/2005请做参考。

因为是把我的机器开放出来让同事连,所以以下把 本机 称作 服务器,同事机 称作 客户端

一、telnet服务器

  首先想到用 telnet命令 做连接测试

  因为默认sqlserver服务占用的是1433端口,所以在客户端输入dos命令

  telnet 128.0.*.*  1433  // (128.0.*.* 是 服务器IP地址)

  毫无疑问,连接失败。

  

  怎么解决呢?

  1.关闭防火墙

  首先想到是不是被防火墙阻止了,在服务器端打开控制面板->windows防火墙,点击 关闭

  然后,再一次在客户端 输入dos命令 telnet 128.0.*.*  1433

  好吧,依然连接失败。

  2.打开 sqlserver 配置管理器,修改配置(服务器端)

  不只是防火墙的问题,我还是看看sqlserver的配置是否出了问题吧

  开始->所有程序->Microsoft SQL Server 2008->配置工具->SQL Server 配置管理器

  双击打开 SQL Server 配置管理器(本地) 折叠菜单下的 SQL Server 网络配置,点击查看SQLEXPRESS的协议

  原来我的 管道协议Name pipes 和 TCP/IP 协议 都被禁用了!

  右键 启用

  

  SQL Native Client 10.0 配置菜单下的 客户端协议 也做如上改动,启用这2个协议。

  这下在客户端 输入dos命令 telnet 128.0.*.*  1433,终于连接成功了。

  

--------------------------------------------------------------------------------------------------------------------------------------------------------

  当然,如果你的SQL Server服务没有启动,那肯定是连接不上的。

  同样是配置管理器,点击 SQL Server 服务,查看到该服务运行的状态,如果是停止状态,就要点选服务,右键 启动 了

  

  有些时候启动服务会报错?会不会是你的1433端口被占用了?

  在dos窗口下输入命令 netstat -ano | Find "1433"

  

  成功找到,表明确实被占用了,最后一个是占用该端口的进程ID。

  PS: 当然,我这里被占用的就是SQL Server服务本身;因为我已经启用该服务了啊,看上图,进程ID是不是1496?

  这个时候,你要么kill掉改进程,要么就该端口啦。杀进程太暴力我就不讲了,改端口的话:

  还是SQL Server网络配置,点击SQLEXPRESS的协议,看见TCP/IP协议了么?

  这次,右键 TCP/IP协议  点击 属性,切换到 IP地址 这一栏,修改每个IP的 TCP端口 为你想指定的端口(这个端口不能再被占用啦)

  PS: 直接修改 IPAll 里面的端口应该也是可以的。见下图(红色区域中的数字就是你要修改的端口了)

  

  重新启动一下SQL Server 服务吧。

--------------------------------------------------------------------------------------------------------------------------------------------------

好了,已经可以成功 telnet 了,我再用sa账户连接一次数据库看看。

还是失败!我在服务器端用sa账户也是连接失败!

二、修改数据库配置属性(服务器端)

  既然如此,应该是sa账户出现了问题,我查查看

  开始->所有程序->Microsoft SQL Server 2008->SQL Server Management Studio

  如果你没有这个管理工具,那就装一下吧

  先用localhost,身份验证选择 ”windows身份验证“登录进去(这个应该是可以的吧)

  右键localhost,选择属性,点击 安全性,修改 服务器身份验证 为 “SQL Server 和 windows 身份验证”

  

  同时,在左边的 选择页 点击 连接 ,找到 ”允许远程连接到此服务器“,勾选上该选项。

  这下,我终于连接上了。

PS: 鉴于该篇博文是在第二天才写的,中间发生的一些其他问题我暂时回想不起来,如果有博友遇到了其他问题,可以在下面留言。

  看看大家会给出什么解决办法。

  

  

  

  

  

SqlServer 局域网内不能连接对方数据库?的更多相关文章

  1. 局域网内远程连接OPC配置方法详解

    局域网内远程连接OPC配置方法详解 https://wenku.baidu.com/view/20fb8ea6d1d233d4b14e852458fb770bf78a3bcc.html   OPC服务 ...

  2. SQLServer 2005客户端远程连接sql2008 数据库服务器

    SQL2005客户端远程连接sql2008 数据库服务器 by:授客 QQ:1033553122 准备工作: 客户端所在pc机配置: 配置数据源 控制面板-管理工具-ODBC数据源-系统DSN-添加- ...

  3. sqlserver同一个局域网内,把服务器数据库备份到客户端

    1.客户端主机创建网络共享文件夹 2.远程服务器运行: EXEC sp_configure 'show advanced options', 1;-- 允许配置高级选项--配置选项'show adva ...

  4. jdbc的配置及jdbc连接常用数据库(mysql、sqlserver、Oracle)

    1.连接SQL Server数据库 import java.sql.*; publicclassMain{publicstaticvoid main(String[] args){String dri ...

  5. 访问局域网内其他主机的VMware虚拟机上的mysql数据库和redis缓存

    上一篇写了访问局域网内其他主机的虚拟机上的项目 ,现在说说访问局域网内其他主机的虚拟机上的数据库和缓存 博主使用的linux是Ubuntu16.04: 一.安装数据库和缓存 这里连接的数据库和缓存以m ...

  6. ASP.net分别连接SQLserver数据库与连接Access数据库精英版

    -------------------------连接access2003 字符串------------------------- Provider=Microsoft.Jet.OLEDB.4.0; ...

  7. sqlserver 连接远程数据库小结

    A,B两个数据库,不在同一台服务器实例 当需要通过sqlserver语句来实现对远程数据库操作(OPENDATASOURCE): select * from -- 操作类型 OPENDATASOURC ...

  8. 局域网所有机器都能连接MySQL数据库的设置命令

    Sql代码: grant all privileges on *.* to root@"%" identified by 'abc' with grant option; flus ...

  9. sql 2000 无法连接远程数据库 sqlserver不存在或访问被拒绝、不能打开到主机的连接,在端口1433:连接失败等 解决方案

    问题: sql 2000 无法连接远程数据库 sqlserver不存在或访问被拒绝 telnet 127.0.0.1 1433     提示:不能打开到主机的连接,在端口1433:连接失败 解决方案: ...

随机推荐

  1. QA(测试) 工作准则建议

    身为一个专业的 QA 当然需要有自己的测试原则,这些测试原则不仅可以帮助我们提高产品质量,对外还能体现出我们的专业性,从而让合作方后续还有意愿和我们合作. 1 测试前 1.1 需求评审 必须参与,有问 ...

  2. iBooker AI+财务提升星球 2020.4 热门讨论

    比特币量化套利的心路历程(附python量化招聘)(分享自知- 如何选择一份好的工作? 你知道为什么大家都想去好公司吗? 不- #财务知识# 可转债套利 辉丰转债128012套利之三个知道- #财务知 ...

  3. AGC004 部分简要题解

    E 首先问题可以转化为:每次将出口带着边界走,出了边界的机器人立马消失,最大化出口碰到的机器人数量. 考虑哪些机器人是已经出界了的,不难有观察: 当前出界的机器人只与当前出口往四个方向走过的最远距离有 ...

  4. BootStrap基础入门概述总结

    是否还值得学习BootStrap 因为自己还是学生,自己在学习之前就先在网上看了看BootStrap是否在现在依旧流行,是否还值得学习. 以下是网友的一些评价: 20年11月 Bootstrap作为入 ...

  5. Git 保存和恢复工作进度(stash)

    感谢原文作者:滑稽的命运 原文链接:https://www.jianshu.com/p/1e65e938f93c 作用: 封存工作区与暂存区已经被Git版本控制,但没有提交(Commit)版本库的文件 ...

  6. JAVA异常与异常处理详解【转】

    感谢!!!原文地址:https://www.cnblogs.com/knightsu/p/7114914.html 一.异常简介 什么是异常? 异常就是有异于常态,和正常情况不一样,有错误出错.在ja ...

  7. NSDate分类,把系统返回的时间与现在进行比较---秀清

    // // NSDate+Joe.h // WeiBo // // Created by 张秀清 on 15/9/17. // Copyright (c) 2015年 张秀清. All rights ...

  8. HTML与HTTP协议

    HTML与HTTP协议 目录 HTML与HTTP协议 一.HTML 1. HTML概述 2. HTML编辑 3. HTML语法规则 4. HTML文件结构 5. HTML基本标签 (1)头标签中常用标 ...

  9. 从上下文中获取所有的原生controller

    1 /** 2 * 获取项目所有被注解修饰的url 3 * @param run 4 */ 5 public void getAllUrl(ConfigurableApplicationContext ...

  10. Ubuntu20.04 安装MongoDB及其基本使用

    MongoDB 官方文档 本博客旨在自我学习使用,如有任何疑问请及时联系博主 基本介绍 MongoDB 是由C++语言编写并基于分布式文件存储的开源数据库. MongoDB 是一款介于关系数据库和非关 ...