SQLServer中用户 'sa' 登录失败解决办法

今天下午,很奇怪的网站突然就打不开了,报错如下:

“/”应用程序中的服务器错误。

用户 'sa' 登录失败。

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.Data.SqlClient.SqlException: 用户 'sa' 登录失败。

源错误: 

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。

堆栈跟踪: 


[SqlException (0x80131904): 用户 'sa' 登录失败。]
   System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +735075
   System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +188
   System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1838
   System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +33
   System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +628
   System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) +170
   System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) +359
   System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options) +28
   System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +424
   System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +66
   System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +496
   System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +82
   System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +105
   System.Data.SqlClient.SqlConnection.Open() +111
   BlueCrystal.Data.DbHelper.ExecuteDataTable(DbCommand cmd) +67
   BlueCrystal.Data.QuerySection`1.ExcuteDataTable(QuerySection`1 query, Boolean all) +383
   BlueCrystal.Data.QuerySection`1.ToDataTable() +50
   NVTools.NTools.(VelocityContext , String , String , String , String , String ) +1383
   NVTools.NTools.SetColumnSeo(Nullable`1 columnType, String SID, VelocityContext context, Boolean isMobile) +1403
   NVTools.NTools.SetColumnSeo(Nullable`1 columnType, String SID, VelocityContext context) +23
   index.Page_Load(Object sender, EventArgs e) +349
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +15
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +34
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   NSW.Web.UI.BasePages.OnLoad(EventArgs e) +4
   System.Web.UI.Control.LoadRecursive() +47
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42

解决办法:

1):出现这个问题呢,首先我们打开服务器看本地能不能登录sa数据库,如果本地也登录不上或者报错18456错误的话,请查看下面的方法

 http://www.cnblogs.com/yangxiaofei/p/4956792.html

 

2): 在本地如果可以登录Sa的话,那么就是网站的数据库连接时错误的,数据库的连接代码如下:

 <add name="ConnectString_Local" connectionString="server=.;uid=sa;pwd=yisiman@htu.cc;database=zlh_db;"/>

 

ASP的网站数据库连接一般都在网站根目录的web.config。我碰到这个问题的时候就去看web.config文件,看web.config文件里面有没有这个代码

可是最后找了一番下来还是没有发现 <add name="ConnectString_Local" connectionString="server=.;uid=sa;pwd=yisiman@htu.cc;database=zlh_db;"/>这串代码

我的web.config文件如下: 

<?xml version="1.0"?>
<configuration>
  <!--url rewrite-->
  <configSections>
    <section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, Intelligencia.UrlRewriter" />
    <sectionGroup name="NSW">
      <section name="HttpCompress" type="NSW.Web.Module.Configuration" />
    </sectionGroup> 
  </configSections>
  <NSW>
    <HttpCompress compressionType="GZip">
      <IncludedMimeTypes>
        <add mime="text/html" />
      </IncludedMimeTypes> 
      <!--配置不压缩何种类型资源   
           <ExcludedMimeTypes> 
               <add mime="text/html" />  
           </ExcludedMimeTypes> 
           注意:ExcludedMimeTypes及IncludedMimeTypes只需要配置一个就可以,如果像上面那样配置ExcludeMimeTypes的话,则表明除html类型的资源外,其它资源都会被压缩-->
      <ExcludedPaths>
        <!--设定不启用压缩的页面路径,下面设定了nocompress目录下的default.aspx页面将不会启用压缩功能,但其它页面则正常启用压缩-->
        <add path="/Manager/" />
      </ExcludedPaths>
    </HttpCompress>
  </NSW>
  <!--end url rewrite-->

  <appSettings configSource="Config\Appsetting.config">
  </appSettings>
  <connectionStrings configSource="Config\ConnectionString.config">
  </connectionStrings>
  <rewriter file="~/Config/URLReWrite.config" />
  <system.web>
    <httpHandlers>
      <add verb="*" path="*.html" type="System.Web.StaticFileHandler" />
      <add path="*.shtml" verb="*" type="System.Web.UI.PageHandlerFactory" validate="true" />
      <add path="*.aspx" verb="*" type="System.Web.UI.PageHandlerFactory" validate="true" />
    </httpHandlers>
    <httpModules>
      <add name="URLModule" type="NSW.Web.Module.URLModule" />
      <add name="HttpCompress" type="NSW.Web.Module.HttpCompress" />
      <add type="Intelligencia.UrlRewriter.RewriterHttpModule,Intelligencia.UrlRewriter" name="UrlRewriter" />
    </httpModules>
    <httpRuntime maxRequestLength="2097151" executionTimeout="3600" />
    <compilation debug="true">  
      <assemblies>
        <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
        <add assembly="System.Management, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" />
      </assemblies>
    </compilation>
    <authentication mode="Windows" />
    <!--    
        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            <error statusCode="403" redirect="NoACcess.htm" />       
            <error statusCode="404" redirect="FileNotFound.htm" />
        </customErrors>
        -->
    <customErrors mode="Off" defaultRedirect="error.htm?msg=0">
      <error statusCode="403" redirect="error.htm?msg=2" />
      <error statusCode="404" redirect="notfound.aspx" />
      <error statusCode="500" redirect="error.htm?msg=4" />
    </customErrors>
    <sessionState mode="InProc" timeout="300" />
    <pages enableViewState="false" validateRequest="false" enableViewStateMac="false">
      <controls>
        <add tagPrefix="CurrentPosition" tagName="CurrentPosition" src="~/Manager/NSWEditor/Common/CurrentPosition.ascx" />
        <add tagPrefix="SpanCurrentPosition" tagName="SpanCurrentPosition" src="~/Manager/NSWEditor/Common/SpanCurrentPosition.ascx" />
        <add tagPrefix="SelectRelevant" tagName="SelectRelevant" src="~/Manager/NSWEditor/Common/SelectRelevant.ascx" />
        <add tagPrefix="radio_control" tagName="radio_control" src="~/Manager/NSWEditor/Common/radio_control.ascx" />
        <add tagPrefix="ThumbnailImage" tagName="ThumbnailImage" src="~/Manager/NSWEditor/Common/ThumbnailImage.ascx" />
        <add tagPrefix="RelevantColumn" tagName="RelevantColumn" src="~/Manager/NSWEditor/Common/RelevantColumn.ascx" />
        <add tagPrefix="RightColumn" tagName="RightColumn" src="~/Manager/NSWEditor/Common/RightColumn.ascx" />
        <add tagPrefix="NSW" tagName="UEditor" src="~/Manager/NSWEditor/Common/NSWEditor.ascx" />
        <!--*************** 购物车:start ***************-->
        <!--购物车当前位置-->
        <add tagPrefix="CartLoc" tagName="CartLoc" src="~/UserControls/Cart/Loc.ascx" />
        <!--底部向导-->
        <add tagPrefix="BottomHelp" tagName="BottomHelp" src="~/UserControls/Product/BottomHelp.ascx" />
        <!--*************** 购物车:end ***************-->
        <!--*************** 前台页面:start ***************-->
        <!--
                <add tagPrefix="ucHeader" tagName="ucHeader" src="~/UserControls/Common/Header.ascx"/>
                <add tagPrefix="ucFooter" tagName="ucFooter" src="~/UserControls/Common/Footer.ascx"/>
                -->
        <add tagPrefix="ucLocL" tagName="ucLocL" src="~/UserControls/Common/LocL.ascx" />
        <!--*************** 前台页面:end ***************-->
        <!--*************** 会员中心:start ***************-->
        <!--当前位置-->
        <add tagPrefix="UserLoc" tagName="UserLoc" src="~/UserControls/User/Loc.ascx" />
        <!--行为操作-->
        <add tagPrefix="UserActions" tagName="UserActions" src="~/UserControls/User/Actions.ascx" />
        <!--*************** 会员中心:end ***************-->
        <!--分页控件-->
        <add assembly="Oran.WebControl.OranPager" namespace="Oran.WebControl" tagPrefix="OranPager" />
        <!--OranRegion 地区控件-->
        <add assembly="OranChinaRegion" namespace="Oran.WebControl" tagPrefix="chinaRegion" />
        <!--在线线客服-->
        <add tagPrefix="Kefu" tagName="Kefu" src="~/UserControls/IM/Kefu.ascx" />
      </controls>
    </pages>
    <identity impersonate="false" />
    <globalization requestEncoding="utf-8" responseEncoding="utf-8" fileEncoding="utf-8" />
    <!--<machineKey validation="3DES" validationKey="319B474B1D2B7A87C996B280450BB36506A95AEDF9B51211" decryptionKey="280450BB36319B474C996B506A95AEDF9B51211B1D2B7A87" decryption="3DES"/>-->
  </system.web>
  <system.webServer>
    <handlers>
      <add name="myurl" path="*.html" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_isapi.dll" resourceType="Unspecified" preCondition="classicMode,runtimeVersionv2.0,bitness32" />
    </handlers>
    <urlCompression doDynamicCompression="false" />
  </system.webServer>
</configuration>

通过仔细找我发现我的web.config文件里有 <connectionStrings configSource="Config\ConnectionString.config"> 这一行

接下来我就去找Config目录下的connectionString这个配置文件,打开后还真的发现事这个,代码如下:

<connectionStrings>
  <add name="ConnectString_Local" connectionString="server=.;uid=sa;pwd=password;database=test_db;"/>
</connectionStrings>

从上面代码可以看出来sa的登录密码和连接数据库,这样我们看下pwd密码和我们的密码是不是一样的,不一样修改成你刚才sa的那个密码就可以了,这样子网站打开用户没法登录SA的错误就解决了~!

 

转载于:https://www.cnblogs.com/yangxiaofei/p/5133631.html

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SQL Server 2012用户sa登录失败错误18456是一个常见的错误,它表明在尝试使用用户sa登录时发生了问题。这种问题可能有多种原因,下面是可能导致此错误的几个常见原因: 1. 密码错误:首先,检查是否输入了正确的密码。确保大小写是否匹配,并且没有额外的空格。如果忘记了sa用户的密码,可以通过重置密码来解决此问题。 2. SQL Server身份验证模式设置不正确:确认SQL Server身份验证模式是否设置为“混合模式”。在混合模式下,可以使用Windows身份验证或SQL Server身份验证进行登录。如果设置为仅使用Windows身份验证,将无法使用sa用户登录。 3. SQL Server服务是否已启动:确保SQL Server服务已正确启动。可以通过服务管理器或SQL Server配置管理器来检查服务状态。如果未启动,右键单击服务并选择“启动”。 4. sa用户是否被禁用:检查sa用户是否被禁用。可以通过SQL Server Management Studio连接到数据库,并在“安全性”>“登录”>“sa”下查看属性。如果sa用户被禁用,请启用它。 5. 登录名不正确:如果使用的是Windows身份验证登录,确保输入正确的Windows登录名。如果使用的是SQL Server身份验证,同时检查输入的用户名是否正确。 6. 登录被阻止:登录可能由于尝试登录次数过多而被SQL Server阻止。可以通过解锁登录、增加登录尝试次数或通过SQL Server错误日志查看是否有其他问题来解决此问题。 如果以上解决方法都无效,建议查看SQL Server错误日志以获取更多详细信息,并在互联网上搜索特定于错误18456的解决方案。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值