SQL Server2008报错
- 格式:doc
- 大小:283.00 KB
- 文档页数:8
SQL2008SQLServer⾝份认证⽅式登录失败(错误18456)解决⽅法图解
今天同事电脑本地数据库,⽤SQL Server⾝份认证登录不了,后来解决了,突然想起⾃⼰曾经
也遇到过这个问题,所以还是在这⾥记录下。
问题报错截图如下:
解决⽅法步骤截图如下:
1.打开本地数据库--以Window ⾝份验证登录数据库
2.在左侧的对象资源管理器中,依次打开连接的服务器--安全性--登录名--双击sa打开登陆属性
3.在常规选择页中重设密码
4.在状态选择页中允许连接到数据库引擎和启动登录
5.右键单击连接的服务器--打开服务器属性
6.安全页选择页的服务器⾝份验证中选择SQL Service和Windows ⾝份验证模式
7.右键单击连接的服务器--点击重新启动,然后退出程序重新⽤SQL Server⾝份认证⽅式登录就可以了
PS:补充说明
如果以上⽅法没有解决问题,那么请检查Nameed Pipes和TCP/IP协议是否启⽤
检查⽅法:
1.打开开始菜单--依次点开Microsoft SQL Server 2008(你安装的数据库)--配置⼯具--SQL Server配置管理器,打开数据库配置管理器
2.在配置管理器中打开"SQL Server⽹络配置"中的"SQLEXPRESS的协议",启⽤Nameed Pipes和TCP/IP协议
来源。
无法登陆到SQL SERVER 2008,错误18456 最近安装了SQL SERVER 2008,登陆的时候出现错误18456的提示:根据微软网站资料记录(后附),可以根据状态号来确定故障原因,这里错误号是1,说明是没有权限引起,叫我联系SQL管理员(我就是管理员啊,我也不知道怎么回事)经过反复的研究发现,他跟以前的SQL 2005有点不一样了,SQL 2005默认就会把本地管理员组添加到安全性-登录名里面,所以如果采用了混合身份验证登陆的,凡是管理员组的成员都能直接登录。
SQL 2005本地管理员组已经添加到登录名中:使用了混合身份验证模式:但是SQL 2008默认没有添加本地管理员组到数据库里面的,而且也不能把组添加进去,只能一个个账号添加。
因此,可以使用sa登录数据库,添加相应的windows登录账号到登录名中,就能顺利解决问题。
深圳全程物流服务有限公司李阳波2012-5-11微软资料说明具体错误和解决方法产品名称SQL Server产品版本11.0产品内部版本号11事件 ID 18456事件源MSSQLSERVER组件SQLEngine符号名称LOGON_FAILED消息正文用户“%.*ls”登录失败。
%.*ls说明因密码或用户名错误而使身份验证失败并导致连接尝试被拒时,类似下面的消息将返回到客户端:“用户 '<user_name>' 登录失败”。
(Microsoft SQL Server,错误: 18456)”。
返回到客户端的其他信息有:“用户 '<user_name>' 登录失败。
(.Net SqlClient 数据访问接口)”------------------------------“服务器名称: <computer_name>”“错误号: 18456”“严重性: 14”“状态: 1”“行号: 65536”也可能返回以下消息:“消息 18456,级别 14,状态 1,服务器 <computer_name>,第 1 行”“用户 '<user_name>' 登录失败。
一.启动和登录SQL Server Management Studio1.单击Windows开始菜单。
2.选择“程序”或者“所有程序”命令。
3.选择Microsoft SQLServer2008目录。
4.选择SQL Server Management。
图-1 登录SQL Server Management Studio图-2 登录时发生“无法连接”的错误发生上面这样的错误(图-2),一般来说只有两种情况:第一种情况是你的"服务器名称"项填写错误了,第二种情况就是检查你的服务器是否启动了,检查的方法如下:1.单击Windows开始菜单2.选择“程序”或者“所有程序”命令。
3.选择Microsoft SQLServer2008命令。
4.选择配置工具命令。
5.选择SQL Server配置管理器,打开后窗口如下图(图-3)注意看你的服务器是否如下图(图-3)所示,要连接的服务器是否处于"正在运行"状态。
启动模式就好解释了,自动就是随系统启动,手动就是啥时候需要了自己来启动。
图-3 服务器状态二.修改登录验证模式图-4 登录错误如果遇到用SQL Server身份验证模式登录出现上面(图-4)的错误的话,多是因为SQL Server服务器没有启用TCP/IP协议,按照下面的步骤检查一下设置:1.单击Windows开始菜单。
2.选择"程序"或者"所有程序"命令。
3.选择Microsoft SQLServer 2008命令。
4.选择配置工具命令。
5.单击SQL Server配置管理器。
6.展开配置管理器左边的"SQL Server网络配置"节点。
7.单击"MS SQL SERVER的协议"选项。
8.得到下图(图-5),设置启用它的Named Pipes(命名管道)和TCP/IP协议。
双击TCP/IP选项,弹出如下图(图-6)所示的对话框。
前提准备:mssql 2008已安装好了一个实例(我按默认情况下安装的实例是:SQLEXPRESS),并安装了SQL Server Management Studio工具。
为了满足可以用(local)或IP地址登录2008,需要以下配置支持:一、打开“SQL Server 配置管理器”,做如下配置:1、点开“SQL Server服务”节点找到我们安装的SQL服务:SQL SERVER(SQLEXPRESS),双击它打开属性设置对话框,把登录身份中的内置帐户选中,并下拉选择“Network Service”:它的意思是用于网络服务,这样一来可以远程的客户端就可以重启这个SQL Server服务了,要不然重启服务功能只限于本机。
2、点开“SQL Server网络配置”节点。
再点开“实例名的协议”(我的是SQLEXPRESS的协议)。
能看到我的实例是支持Share Memory, Named Pipes, TCP/IP, VIA这几种协议的。
右键点击“TCP/IP”选择启用。
再右键它选择属性,在属性对话框中,切换到“IP地址”卡片,能看到有“IP1”,“IP2”...“IPAll”这几类针对IP的设置信息。
首先,因为我们目前用不上“TCP动态端口”的功能,所以把这几类IP的TCP动态端口全设置为空(如果是0的话则表示启用动态端口功能)。
再因为我准备把SQLEXPRESS实例向外提供服务的端口设置为1433(和SQL2000的默认服务连接端口号保持一致性),所以需要针对各类IP把它们的TCP 端口一项设置为1433(其实仅仅只需要把IPALL的TCP端口号设置为1433,其它类型的均为空即可)。
再把各类IP的“活动”和“已启用”均设置为“是”。
点击“确定”保存配置。
3、点开“SQL Native Client 10.0配置”节点(如果没有的话,可能是你的软件安装得有问题,或者没有安装客户端工具:SQL Server Management Studio)。
SQLServer2008报错:已成功与服务器建⽴连接,但是在登录前
的握⼿期间发⽣错误
今天SqlServer 2008连接数据库时报错:已成功与服务器建⽴连接,但是在登录前的握⼿期间发⽣错误。
在连接到 SQL Server 2008 时,在默认的设置下 SQL Server 不允许远程连接可能会导致此失败。
(provider: 命名管道提供程序, error: 0 - 管道的另⼀端上⽆任何进程。
刚开始以为是远程数据库的问题,试了⼀下,同事的机器能连上。
说明是我本机问题了,然后连接本地数据库,也报同样的错误。
后来认真理了⼀下思路:
1.查看sqlserver服务是否开启,重启sqlserver服务尝试;
2.查看防⽕墙设置,--》防⽕墙关闭;
3.看到⽂章最后介绍可能是tcp/ip的问题,在tcp/ip属性中设置ip为已启⽤。
重启sqlserver服务,ok!数据库连接上了。
一.启动和登录SQL Server Management Studio1.单击Windows开始菜单。
2.选择“程序”或者“所有程序”命令。
3.选择Microsoft SQLServer2008目录。
4.选择SQL Server Management。
图-1 登录SQL Server Management Studio图-2 登录时发生“无法连接”的错误发生上面这样的错误(图-2),一般来说只有两种情况:第一种情况是你的"服务器名称"项填写错误了,第二种情况就是检查你的服务器是否启动了,检查的方法如下:1.单击Windows开始菜单2.选择“程序”或者“所有程序”命令。
3.选择Microsoft SQLServer2008命令。
4.选择配置工具命令。
5.选择SQL Server配置管理器,打开后窗口如下图(图-3)注意看你的服务器是否如下图(图-3)所示,要连接的服务器是否处于"正在运行"状态。
启动模式就好解释了,自动就是随系统启动,手动就是啥时候需要了自己来启动。
图-3 服务器状态二.修改登录验证模式图-4 登录错误如果遇到用SQL Server身份验证模式登录出现上面(图-4)的错误的话,多是因为SQL Server服务器没有启用TCP/IP协议,按照下面的步骤检查一下设置:1.单击Windows开始菜单。
2.选择"程序"或者"所有程序"命令。
3.选择Microsoft SQLServer 2008命令。
4.选择配置工具命令。
5.单击SQL Server配置管理器。
6.展开配置管理器左边的"SQL Server网络配置"节点。
7.单击"MS SQL SERVER的协议"选项。
8.得到下图(图-5),设置启用它的Named Pipes(命名管道)和TCP/IP协议。
双击TCP/IP选项,弹出如下图(图-6)所示的对话框。
①。
启动Distributed Transaction Coordinator 服务打开服务,在服务中找到Distributed Transaction Coordinator服务,选择“属性”;在“登录”选项卡中,选择“此帐户”,帐户名填写“NT AUTHORITY\NetworkService”,密码为空;在点击“确定”后重新启动服务。
或者,在命令行下运行msdtc -uninstall ,卸载msdtc 服务;再运行msdtc -install ,安装msdtc 服务。
MSTDC服务成功启动,组件服务中“COM+应用程序”可以访问。
如果你也遇到了Distributed Transaction Coordinator 服务不能启动错误:Distributed Transaction Coordinator 服务因3221229584 (0xC0001010) 服务性错误而停止。
这样解决:点开始→运行→输入命令"msdtc -resetlog",运行该命令即可.②按照下列过程重新安装COM+安装组件服务管理单元在Windows 桌面上,单击“开始”,然后单击“运行”。
在“打开”框中,键入MMC,然后单击“确定”。
在“控制台”窗口中,单击菜单栏上的“文件”,然后单击“添加/删除管理单元”。
在“添加/删除管理单元”窗口,单击“添加”。
在“添加独立管理单元”窗口,从管理单元列表中选择“组件服务”,然后单击“添加”。
单击“关闭”以关闭“添加独立管理单元”窗口,然后单击“确定”以关闭“添加/删除管理单元”窗口。
在“控制台根节点\组件服务”窗口,展开“组件服务”树。
这就是当COM+ 出现问题时,错误消息可能发生的地方。
再次运行SQL Server 2005 安装程序。
如果收到错误消息,请重新安装COM+。
重新安装COM+从控制面板的“添加或删除程序”中,单击“添加/删除Windows 组件”。
SQL2008数据库自动备份报错主要说下SQL2008数据库自动备份时出现的问题:(以下解决方案本人刚刚亲测过,系统环境:WINDOWS SERVER 2008 64系统)1、问题描述:今天在“新建维护计划”时报错,ERRMESSAGE:ADDITIONAL INFORMATION:从IClassFactory 为CLSID 为{17BCA6E8-A95D-497E-B2F9-AF6AA475916F} 的COM 组件创建实例失败,原因是出现以下错误: c001f011。
(Microsoft.SqlServer.ManagedDTS),创建维护计划失败。
2、解决方法:在命令行中执行以下正行语句:c:\windows\system32\regsvr32 "d:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\dts.dll"注意:该语句中双引号中间内容为数据库数据文件dts.dll存储路径,左边为文件regsvr32在系统C盘中的存储路径(本人实践成功)3、其他相关(一下本人未测试)在重新注册dts.dll的时候,我这里又出现了另一个错误,当然在你备份的时候不一定会出现这个错误ERRMESSAGE:对调用DllRegisterServer的调用失败,错误代码为0x80070005在手工注册DLL文件时,有时会出现“对DllRegisterServer的调用失败,错误代码为0x8007005”的提示,导致注册失败,该问题经常出现在Vista系统和Windows7系统下,解决办法如下:在命令行里输入regsvr32 wavdest.dll 回车进行注册出现“模块wavdest.dll已加载,但对于DllRegisterServ的调用失败,错误代码为0x8007005”按确定。
(原因是WIN7中的权限问题,你没有用管理员身份)所以:开始--所有程序--附件---以管理员身份运行命令提示符(鼠标右键单击)再次输入regsvr32 wavdest.dllok搞定,。
WIN7旗舰版下安装SQL SERVER 2008安装报错解决方案在win7环境下,是完全可以解决SQL Server 2008兼容性问题的。
本人在第一次安装时,遇到了几乎很多人安装过程中都会出现的问题。
只好卸载了重新安装,第二次设置了一系列的东西,完全通过,安装成功!现就安装中遇到的问题和大家分享一下,以供参考!本人第一次安装时,遇到了这样的问题,在别人机子上安装的是SQL Server 2008简体中文企业版的,拉到我电脑上,却变成英文版了,于是在同样的下载地址上重新下载,并在解压之前关闭所有防火墙和杀毒软件,解压出来,终于是中文版了。
本人第一次安装时的系统设置:关闭windows防火墙、关闭360杀毒软件和360安全卫士、右键点击setup.exe—属性—兼容性—勾选兼容模式运行中的windows2000(网友介绍的方法)—勾选以管理员身份运行此软件,然后开始运行安装,到最后安装失败:期间报错情况:1.“此程序存在已知的兼容性问题”————解决方法:忽略他,点“运行程序”继续安装,事实证明,没影响的。
2.系统提示“在创建窗口句柄前,不能在控件上调用invoke或begininvoke”————解决方法:安装开始前:启动任务管理器—进程—找到mscorsvw.exe——选中后结束此进程,因为此进程会与安装产生冲突吧应该,所以在安装过程中最好不要打开microsoft office文件,因为这个进程是与office有关的。
当然有可能在安装后影响office出问题,大不了就修复一下或重装office。
3.安装步骤来到“安装程序支持文件时”进度条还没走完,安装界面就消失了,什么都没有了,当然没办法继续安装了。
这时可能是你的系统里面已经存在这个程序支持文件了,有可能是之前安装过程中遗留下来的。
在控制面板或程序管理软件的卸载程序见面找到他:然后把他卸载掉即可。
若之前有安装过而没安装成功,最好把C盘program files 文件夹里面的sql server 2008文件夹也删了,保险一点。
百度搜18456错误几乎只能搜到一篇文章,并不是说结果条数,而是所有的文章都是转自一处。
我也遇到了18456错误。
我是这么解决的:
1、以windows验证模式进入数据库管理器。
第二步:右击sa,选择属性:
在常规选项卡中,重新填写密码和确认密码(改成个好记的)。
把强制实施密码策略去掉。
第三步:点击状态选项卡:勾选授予和启用。
然后确定
第四步:右击实例名称(就是下图画红线的部分),选择属性。
第五步:点安全性,确认选择了SQL SERVER 和Windows身份验证模式。
第六步:重启SQLSERVER服务(重要)。
参考资料:以下是微软官方的解释
因密码或用户名错误而使身份验证失败并导致连接尝试被拒时,类似下面的消息将返回到客户端:“用户 '<user_name>' 登录失败”。
(Microsoft SQL Server,错误: 18456)”。
返回到客户端的其他信息有:
“用户 '<user_name>' 登录失败。
(.Net SqlClient 数据访问接口)”
------------------------------
“服务器名称: <computer_name>”
“错误号: 18456”
“严重性: 14”
“状态: 1”
“行号: 65536”
也可能返回以下消息:
“消息 18456,级别 14,状态 1,服务器 <computer_name>,第 1 行”“用户 '<user_name>' 登录失败。
”
其他错误信息
为了增强安全性,返回到客户端的错误消息有意隐藏身份验证错误的本质。
但是,在 SQL Server 错误日志中,对应的错误包含映射到身份验证失败条件的错误状态。
将错误状态与以下列表进行比较以确定登录失败的原因。
存在其他错误状态,并表示一个意外的内部处理错误。
示例
在此示例中,身份验证错误状态为 8。
这指示密码不正确。
注意:
如果 SQL Server 使用 Windows 身份验证模式进行安装,并随后更改为 SQL Server 和 Windows 身份验证模式,则最初禁用sa登录名。
这会导致状态 7 错误:“用户 'sa' 登录失败”。
要启用sa登录名,请参阅如何更改服务器身份验证模式。
用户操作
如果您尝试使用 SQL Server 身份验证进行连接,请验证是否将 SQL Server 配置为使用混合身份验证模式。
如果尝试使用 SQL Server 身份验证进行连接,请验证 SQL Server 登录名是否存在以及拼写是否正确。
如果尝试使用 Windows 身份验证进行连接,请验证您是否正确地登录到相应的域。
如果错误指示状态 1,请与 SQL Server 管理员联系。