SQL Server 2005 连接本地端口1433开启远程连接/登陆18456错误的解决方法
出处:http://jimmyli.blog.51cto.com/我站在巨人肩膀上Jimmy Li
作者:Jimmy Li
关键词:远程连接,无法连接,1433,SQL SERVER 2005,18456错误
------[连载之电子商务系统架构]访问量超过100万的电子商务网站技术架构
连接:http://jimmyli.blog.51cto.com/3190309/676378 访问量超过100万的电子商务网站技术架构
一、SQL SERVER 2005 登陆18456错误的解决方法
很多朋友使用MSsql的时候本机能够正常登陆SQL2005的SQL Server Management Studio。
但是远程无法登陆1433,SQL Server 2005无法远程连接到1433。SQL(Microsoft SQL Server 2005 )登录不上去了,原来是出现了几个小问题,现在记录一下我的解决这几个情况的办法。(解决方法有很多种,这些只是我的解决方法,仅供参考)
错误提示:
标题: 连接到服务器
------------------------------
无法连接到 192.1.1.19。
------------------------------
其他信息:
用户 'shop' 登录失败。 (Microsoft SQL Server,错误: 18456)
有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=18456&LinkId=20476
------------------------------
按钮:
确定
------------------------------
查找问题的过程:(注:用windows账号还是可以登录的)
第一步: 启动所有与SQL有关的服务,问题依旧;(后证实与服务无关,只是为排除错误)
第二步: 查看windows防火墙,被默认启动了,不启动选择项被Disabled
两个提示“由于安全考虑,某些设置由组策略控制”“Windows防火墙正在使用您的域设置”,先用gpedit.msc打组策略编辑器,机算机配置-- 管理模板--网络--网络连接--Windows防火墙--标准配置文件,查看右边各选项属性,都是未配置状态,问题不在这里。
另外一个提示中提到域设置,域设置不可能禁用SQL Server,并且我查看本地开放端口(net start ),25,1433,1434都是开发状态。

晕,会不会是密码错误?

问题一、忘记了登录Microsoft SQL Server 2005 的sa的登录密码
解决方法:先用windows身份验证的方式登录进去,然后在‘安全性’-‘登录’-右键单击‘sa’-‘属性’,修改密码点击确定就可以了。
问题二、已成功与服务器建立连接,但是在登录过程中发生错取。(provider:共享内存提供程序,error:0-管道的另一端上无任何进程。)(Microsoft SQL Server,错误:233)
解决方法:打开‘程序’-‘所有程序’-‘Microsoft SQL Server 2005 ’-‘配置工具’-‘SQL Server 配置管理器’,在弹出的窗体中,找到‘SQL Server 2005 网络配置’,把‘MSSQLSERVER的协议’下的“Named Pipes”和“TCP/IP”启动,然后重新启动Microsoft SQL Server 2005就可以了。
问题三、无法打开用户默认数据库。登录失败。用户‘sa’登录失败。(Microsoft SQL Server, 错误:4064)
解决方法:先用windows身份验证的方式登录进去,然后在‘安全性’-‘登录’-右键单击‘sa’-‘属性’,将默认数据库设置成master,点击确定就可以了。
这时还是不行,后来才知道一个最晕的问题,服务器名是“计算机/实例名”,FFC50E78A6DF423/server2005 这次全好了,呵呵。

二、升级到2005时出现18456问题的解决方法
在帮一个用户进行系统从Sql2000升级到Sql2005的过程中,遇到了几个问题,因前段时间同时忙于几个项目,没能及时把问题解决方法整理下来。这段时间有些轻松了,更新一下我的blog希望能帮助朋友们解决实践中的问题。

问题描述:
在升级Sql2000的DTS包的时候,试着手工执行了几次,突然系统报18456错误,提示信息是“无法连接到×××服务器”,其他信息为“用户‘sa’登录失败。(Microsoft SQL Server,错误:18456)”。

问题原因:
升级Sql2000的DTS包是这次数据库系统整体升级的一部分。除此之外,系统硬件进行了升级,新升级的系统服务器加入到了用户机构的域中,并更改了数据库sa的用户口令。
原DTS的数据包是保存了原Sql2000数据库库系统的用户凭据,口令自然是原先的数据库口令。在试运行DTS包之前服务器管理员刚刚把新升级成功的数据库服务器加入域。
用户机构的域是设置了“密码策略”。Sql Server 2005的sa用户默认是启用了“强制实施密码策略”。而一般默认的Windows帐户密码策略或者AD(域帐户)密码策略都是3-6次错误口令登陆失败后,系统暂时冻结该用户。冻结的时间要看系统设定的长短。
该问题就出在DTS用错误的sa口令(旧的sa口令)多次试图访问系统,而sa的“强制实施密码策略”起了作用。

图解:
sa帐户被锁定,原因是sa的帐户启用了“强制实施秘密策略”,或者“强制过期”。在登录用户sa的登录属性对话框中,能看到改选项是否选定状态。如下图所示:
选中“强制实施秘密策略”后,sql server2005 会调用windows或者域的帐户管理策略。如果是windows的帐号管理策略,可以通过“控制面板”的“本地安全设置”中看到“帐户策略”情况,其中的“密码策略”可以设置用户秘密的失效时间、长短等,另外在“帐户锁定策略”可以设置“帐户锁定阈值”,即帐户用错误的口令尝试登录几次,系统即自动锁定该帐户。可以参考上图。
如果sql server的帐号已经被锁定,在该帐户的登录属性里面能看到所示的sql server帐户被锁定。
隔一定时间后,遇到的问题是因为,旧有的DTS包中设置的链接还是旧数据库的sa口令,当多次测试执行该DTS时,已经超过了尝试sa错误口令的次数,造成了所示的sql server帐户被锁定。
这是即使用集成windows的帐户登录sql server,取消“登录已锁定”的勾选。再重新用sa的正确口令登录sql server时,也会出现18456的错误。如图所示。这是因为sa的口令需要重新设置。再次用集成windows的帐户登录sql server的帐户登录sql server进行sa的密码重新设置,即可解决问题。
总结:
       第一,如果数据库安全性没有特殊的要求,去掉图所示的“强制实施秘密策略”勾选,能避免该类问题的发生。
       第二,从旧系统数据库升级上来的DTS,尽快修改旧链接的sa登录口令,保证系统帐户登录认证不会出问题,同时保证DTS能正确执行。

三、SQL Server 2005 连接本地端口1433开启远程连接
刚装的SQL server2005数据库,默认是关闭远程连接。安装完成后一般无法直接连接端口1433,此时连接一般会失败。 现在把在装完程序后,连接端口1433前,要做的几件事情和注意事项总结一下。
开启步骤:
1.关闭数据库引擎,关闭数据库引擎有三种方法:
开始->程序->Microsoft SQL Server 2005->配置工具->SQL Server Configuration Manager,选中SQL Server 2005服务中SQL Server(MSSQLSERVER) ,并选中右击,点击停止, 即可关闭数据库引擎。
补充注意点:
有时候在启动数据库引擎的时候可能会出现错误,不能启动,这时就要查看"SQL Server 2005配置管理器"中的SQL Server 2005网络配置->MSSQLSERVER协议中的VIA是否已启用,如果已启用,则把它禁止.然后再执行上述一种方式操作就可以了.
2.配置服务器端和客户端的TCP/IP协议:
配置工具->SQL Server Configuration Manager->MSSQLSERVER的协议
看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中"TCP端口"为1433,"已启用"改为"是"
修改SQL Server的TCP/IP下端口设置,双击“SQL2005的协议”下“TCP/IP”,把“IP地址”下“IPALL”的端口都改为“1433”。
配置工具->SQL Server Configuration Manager->SQL Native Client 配置->客户端协议->TCP/IP
选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是"
3.开启数据库引擎
4.连接端口1433
开始–>输入cmd –>回车–>telnet localhost 1433->回车
出现黑屏,表示本机连接端口1433成功 。
正确的顺序是:(1)关数据库引擎,
(2)配置服务器端和客户端的TCP/IP协议,
(3)启动数据库引擎,
(4)连接端口1433。
近日碰到一问题,程序无法查找到sqlserver的1433端口,sqlserver的网络实用工具里配置的没错,但是的确找不到,在命令提示符里输入:netstat -na ,一样看不到这个端口,重启sqlserver服务也不行,不知道咋回事,后来再一次重启,突然间可以……
程序使用JDBC方式访问SQL Server 2005

SqlServer端口:1433,1434
要访问SqlServer,可以使用JDBC方式访问。
driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"
url="jdbc:microsoft:sqlserver://localhost:1433;User=sa;Password=;DatabaseName=maxwell"
这段时间要使用sqlserver,偶望文生义,以为在防火墙打开1433端口即可,谁知只打开这个端口怎么都不行,后来Google一下,才知道,还需要一个端口,留作笔记。
TCP-1433
UDP-1434
SQLSERVER端口是如何被ADO找到的?
问题:
把SQLSERVER的端口设置成1499,然后在程序中定义ADO的连接字符串:DRIVER={SQL Server};SERVER=127.0.0.1,1499,能够联接上去,如果是DRIVER={SQL Server};SERVER=127.0.0.1,1433,就联接不上去,问题是如果我定义成:DRIVER={SQL Server};SERVER=127.0.0.1 不加端口,也可以联接上去,ADO是怎么得到SQLSERVER的端口的呢?
回答:
客户端连接到服务器时,应用程序请求连接远端计算机,dbnetlib.dll 将打开到连接中所指定的计算机网络名上的 UDP 端口 1434 的连接。所有运行 SQL Server 2000 的计算机都监听此端口。当一个客户端 dbnetlib.dll 连接到该端口时,服务器将返回一个监听服务器上运行的所有实例的数据包。对于每个实例,该数据包报告该实例正在监听的服务器 Net-Library 和网络地址。应用程序计算机上的 dbnetlib.dll 收到该数据包后,选择在应用程序计算机和 SQL Server 实例上都启用的 Net-Library,然后连接为此数据包中的 Net-Library 列出的地址。
通过1434端口传输特定的UDP数据包,然后服务器开始回应,所有这些都是明文传输的,我们可以很容易探测一个IP地址的1434端口,获得该IP地址上运行的SQL Server的相关信息。这些信息包括:主机名称、实例名称、版本、管道名称以及使用的端口等。这个端口是微软自己使用,而且不象默认的1433端口那样可以改变,1434是不能改变的
另外:以后遇到此问题,可以使用冰刃工具查看操作系统各个端口的使用,还可以查看sqlserver的系统日志。

 
最后,建议每次远程连接SQL2005完成后,都从数据库的菜单项,右击选择“断开连接”,如图
出处:http://jimmyli.blog.51cto.com/ Jimmy Li Blog 。欢迎朋友一起交流,讨论。扣扣:柒⑥柒陆叁⑤叁伍
     本文转自jimmy_lixw 51CTO博客,原文链接:http://blog.51cto.com/jimmyli/915856,如需转载请自行联系原作者

SQL Server 2005 连接本地端口1433开启远程连接/登陆18456错误的解决方法相关推荐

  1. 使用连接管理器出现“安装程序无法复制文件”错误的解决方法

    使用连接管理器出现"安装程序无法复制文件"错误的解决方法 在我们的企业中,使用"连接管理器"创建的***客户端连接程序,在运行安装程序的时候,有的机器出现&qu ...

  2. sql server 2005 修改动态端口,连接字符串为:需要改成:IP地址+逗号+端口号才行...

    1.sql server 2005 安装完毕后,默认是动态段,需要用sql brower 查询端口号:修改给固定端口后,格式为:IP地址+逗号+端口号. 2.sql 2000 的格式为:格式为:IP地 ...

  3. IIS 7上安装SQL SERVER 2005报表服务可能导致不能正常连接

    前段时间一直在研究SCOM 2007的报表功能,在POC里测试时候遇到一些问题,本打算装最新的产品WINDOWS SERVER 2008+SQL SERVER 2008+SCOM 2007.只是发现S ...

  4. SQL Server 2005中查询通知的开启

    SQL Server 2005的推出,使企业级的应用上了一个崭新的台阶, 也使.NET平台的根基进一步稳固,因为其两者的结合使用使数据库开发的简 便性不言而喻,Reporting Services.N ...

  5. 【SQL Server】无需公网IP,就可以远程连接SQL Server数据库

    目录 1.前言 2.本地安装和设置SQL Server 2.1 SQL Server下载 2.2 SQL Server本地连接测试 2.3 Cpolar内网穿透的下载和安装 2.3 Cpolar内网穿 ...

  6. tcp连接 本地端口_Windows开启端口转发功能

    前言 端口转发,这个功能在平时的开发中用到的还是比较多的,记录下 Windows 如何使用自带的软件实现端口转发. 命令介绍 Windows 从 Windows 2000 开始就提供了最基本的端口转发 ...

  7. Excel导入SQL SERVER,数字和字符会被系统自动置为NULL的解决方法

    在Excel中,我们时常会碰到这样的字段(最常见的就是电话号码),即有纯数字的(如没有带区号的电话号码),又有数字和其它字符混合 (如"区号-电 话号码")的数据,在导入SQLSe ...

  8. java ibm 2035,C# java 连接 IBM MQ时出现 2035 或 2013认证错误的解决方法

    当C# 或 java 连接 IBM MQ 是出现 2035 或 2013的错误时 java的错误提示: com.ibm.msg.client.jms.DetailedJMSSecurityExcept ...

  9. 夏普电视显示网络无法连接到服务器,彻底解决SQL SERVER 2005无法远程连接的问题...

    一.为 SQL 启用远程连接 1. 单击"开始",依次指向"程序"."Microsoft SQL Server 2005"和"配置 ...

最新文章

  1. RMSD:通过旋转计算两个分子间的最小rmsd
  2. 查看关于yum的配置
  3. 优酷开放SDK之setOnCompletionListener
  4. python如何仿写文章_python,python3.x_求助,用python仿写以下代码,python,python3.x,java - phpStudy...
  5. wordpress url index.php,WordPress对URL的路由解析过程详解
  6. 使用JasperReport 引擎PDF报表,因为iText版本升级,由原来的包名com.lowagie.text.pdf.fonts转化为com.itextpdf.text.pdf.fonts
  7. Android开发笔记(四十九)异步任务处理AsyncTask
  8. 2021年中国宠物玩具与训练市场趋势报告、技术动态创新及2027年市场预测
  9. springMVC3学习(八)--全球异常处理
  10. iOS 推送证书制作 (JAVA/PHP)
  11. 计算机应用水平考试dream,2016年职称计算机Dreamwaver使用教程:操作环境
  12. vivado使用方法
  13. UDP通信——通过UDP进行转发
  14. 使用LIS2DH12三轴加速度传感器检测震动与倾斜角度
  15. 制作简易的牛顿摆锤模型
  16. OpenGL-曲面细分
  17. python培训学费多少钱-python培训学费多少钱
  18. 【毕业季·进击的技术er】自己的选择,跪着也要走
  19. laravel Carbon函数
  20. mac 无法更新“Xcode”,提示已退款或由其他 Apple ID 购买

热门文章

  1. The j.u.c Synchronizer Framework翻译(三)使用、性能与总结
  2. 好的 blog 整理
  3. 微软职位内部推荐-Software Engineer II-SDP
  4. IT人的“钱”景以及收入的两道坎
  5. 使用UTL_MAIL包实现存储过程邮件发送(转)
  6. 用U盘破除XP管理员密码
  7. 【原创视频教程】学生信息管理系统1--登陆
  8. 如果理解运算符和各类数值的布尔值
  9. RED HAT LINUX 9.0的安装文本模式(2)
  10. AD恢复(2)使用授权还原