Я установил SQL Server 2005 (версия для разработчиков) на машину с Windows 7 (я знаю - это был не мой выбор!) Машина называется user-PC и имеет только одного пользователя: user no pwd.
Я пытаюсь подключиться к ДВИГАТЕЛЮ БАЗЫ ДАННЫХ, используя сервер USER-PC (взятый из списка опций) с использованием аутентификации Windows.
Я получаю сообщение Logon failed for user-PC\user (Microsoft SQL server error 18456)
.
Вот след:
Cannot connect to USER-PC. =================================== Login failed for user 'user-PC\user'. (.Net SqlClient Data Provider) ------------------------------ For help, click: http://go.Microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&EvtSrc=MSSQLServer&EvtID=18456&LinkId=20476 ------------------------------ Server Name: USER-PC Error Number: 18456 Severity: 14 State: 1 Line Number: 65536 ------------------------------ Program Location: at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) at System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart) at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance) at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionFactory.CreateNonPooledConnection(DbConnection owningConnection, DbConnectionPoolGroup poolGroup) at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) at System.Data.SqlClient.SqlConnection.Open() at Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.ValidateConnection(UIConnectionInfo ci, IServerType server) at Microsoft.SqlServer.Management.UI.ConnectionDlg.Connector.ConnectionThreadUser()
Чем больше я думаю об этом, тем больше думаю, что этот комментарий является ответом - попробуйте запустить от имени администратора (щелкните правой кнопкой мыши, выберите «Запуск от имени администратора») и посмотрите, работает ли это. Я предполагаю, что учетная запись не может иметь привилегий администратора или группы администраторов. После входа в SQL вы можете добавить эту учетную запись в SQL Server в качестве имени входа и предоставить ей права системного администратора (при условии, что это тот доступ, который вы хотите иметь).
На ум приходит много вопросов:
Вы подключаетесь локально или удаленно?
Это экземпляр по умолчанию или именованный экземпляр?
Какие протоколы включены и какой метод подключения вы используете? TCP / IP, именованные каналы, общая память?
В SQL Server 2005 (все редакции) по умолчанию:
Нет доступа к сети (использование инструмента настройки SQL Server локально может изменить это: не забудьте добавить исключение брандмауэра).
Доступ имеет только группа локальных администраторов (вы можете добавлять имена входа / пользователей, которые сопоставляются с другим пользователем Windows с соответствующими разрешениями с помощью SQL Server Management Studio или операторов SQL).
(SQL Server 2008 предлагает в установщике пользователям / группам получить начальный доступ администратора сервера.)