Id события 17058 и sql server не запускаются

Section 2: Fix SQL Server Login Failed Error

Case 1: Fix SQL Server login failed error 18456/18452

«Login failed for user» would occur if the user tries to login with credentials without being validated. Now we will introduce some situations when there is no user credentials for SQL Server logon and how to solve SQL Server login problem.

Situation 1: The login may be a SQL Server login but the server only accepts Windows Authentication.

To login SQL Server successfully, you should change to login SQL Server with Windows Authentication mode and enable Mixed Authentication mode or SQL Server Authentication mode.

Situation 2: You are trying to connect by using SQL Server Authentication but the login used does not exist on SQL Server.

In order to make SQL Server login with user, please confirm that you have a login user. If not, create new login in SQL Server Books Online.

Situation 3: The login may use Windows Authentication but the login is an unrecognized Windows principal.

An unrecognized Windows principal means that Windows can’t verify the login. This might be because the Windows login is from an untrusted domain. To resolve this issue, verify that you are logged in to the correct domain.

Situation 4: The login user password is valid or incorrect, or the password is changed.

If it is just because of user password incorrect or invalid, you can reset user password with SQL Password Genius, and then login SQL Server with new password again.

Situation 5: The login is disabled.

You should need to enable SQL Server login user or enable SQL Server authentication mode after connecting to server with Windows authentication mode.

Situation 6: The login is valid but server access is failed.

Probably you have no admin privileges to server, or Windows Firewall has not allowed SQL Server access. So you can try to get administrator rights or configure Windows Firewall to allow SQL Server access.

Case 2: Fix SQL Server login failed error 4062/4064

To fix SQL Server login error 4062/4064, please specify an available, valid database as user’s default database. So while default database is connected automatically, successful connection can be guaranteed.

Step 1: Run Command Prompt as administrator.

Step 2: Set default database for login user by one of following methods.

2-1 If SQL Server login uses Windows authentication mode, run command below and press Enter. sqlcmd –E -S InstanceName –d master

2-2 If SQL Server login uses SQL Server authentication to connect to instance, run command below. sqlcmd -S InstanceName -d master -U SQLLogin -P Password

Step 3: At the sqlcmd prompt, type the following, and then press ENTER.

ALTER LOGIN SQLLogin WITH DEFAULT_DATABASE = AvailDBName

Step 4: At the sqlcmd prompt, type GO, and then press ENTER.

Related Articles:

iSunshare is dedicated to providing the best service for Windows, Mac, Android users who are in demand for password recovery and data recovery.

Copyright В 2020 iSunshare Studio All Rights Reserved.

Причина

Прежде чем можно будет использовать базу данных SQL Server, ее необходимо запустить. Процесс запуска базы данных включает в себя следующее:

  1. инициализацию различных структур данных, представляющих базу данных и ее файлы;
  2. открытие всех файлов, принадлежащих к базе данных;
  3. выполнение восстановления базы данных.

SQL Server использует функцию API CreateFile в Windows для открытия файлов, принадлежащих базе данных.

Сообщения 17204 (и 17207) указывают на то, что при попытке SQL Server открыть файлы базы данных во время запуска произошла ошибка.

Эти сообщения об ошибках содержат следующие сведения:

  1. Имя функции SQL Server, которая пытается открыть файл. В этих сообщениях об ошибках обычно содержится одно из следующих имен:

    • В FCB::Open — произошла ошибка при попытке SQL Server открыть файл.
    • FileMgr::StartPrimaryDataFiles — первичный файл данных или файл, принадлежащий первичной файловой группе.
    • FileMgr::StartSecondaryDataFiles — файл, принадлежащий вторичной файловой группе.
    • FileMgr::StartLogFiles — файл журнала транзакций.
    • STREAMFCB::Startup — контейнер SQL FileStream.
    • FCB::RemoveAlternateStreams
  2. В сведениях о состоянии указаны различные данные о нескольких расположениях внутри функции, которая может создать это сообщение об ошибке.

  3. Полный физический путь к файлу.

  4. Идентификатор файла, соответствующий файлу.

  5. Код ошибки операционной системы и описание ошибки. В некоторых экземплярах вы увидите только код ошибки.

Сведения об ошибках операционной системы, выводимые в этих сообщениях о них, являются основной причиной ошибки 17204. Распространенными причинами этих сообщений об ошибках являются проблемы с разрешениями или неверный путь к файлу.

Предоставление учетной записи управлять службой

Проблема часто связана с различными разрешениями и для ее решения предоставьте текущей учетной записи пользователя доступ к элементам управления службой. Это решение примените в первую очередь. Поскольку оно универсально и может быть использовано независимо от того, какая служба отображает сообщение об ошибке 1067.

Нажмите Win + R и выполните команду services.msc.

Найдите службу, которая выдает ошибку, щелкните на нее правой кнопкой мыши и перейдите в Свойства. На вкладке Общие посмотрите состояние. Если она запущена, остановите ее нажатием на соответствующую кнопку.

Затем на вкладке Вход в систему кликните на «Обзор».

В поле ввода имен выбираемых объектов наберите имя текущей учетной записи, кликните на «Проверить имена», чтобы проверить ее правильность, и нажмите на «ОК». Либо выберите имя с помощью кнопок Дополнительно – Поиск.

Затем введите пароль, и примените изменения на «ОК». Закройте окно, и перезагрузите компьютер. В большинстве случаев, этим способом удается исправить ошибку с кодом 1607.

Другие ошибки SQL

Код ошибки SQL-сервера 1814

SQL-сервер не может создать базу данных tempdb. Убедитесь, что на выделенном под нее диске достаточно места и что у учетной записи хватает прав для записи в указанную директорию.

Код ошибки SQL-сервера 1067

Эта ошибка может возникать по разным причинам. Наиболее часто оказывается, что повреждены или отсутствуют конфигурационные файлы, SQL-сервер обращается к поврежденным системным файлам, ошибочные данные пользователя, нет информации про лицензию. В самых тяжелых случаях придется переустанавливать SQL-сервер. Но иногда помогает восстановление поврежденных файлов или изменение настроек SQL-сервера – вы можете создать новую учетную запись в домене и использовать ее для службы MSSQL.

SQL-сервер запускается, но работает слишком медленно

Проанализируйте журнал сервера, индексы (фрагментацию), запросы, задания, возможность взаимных блокировок. Причин может быть масса.

Мы работаем с разными версиями SQL-сервера уже много лет, знакомы со всевозможными инструкциями SQL-сервера, видели самые разные варианты его настройки и использования на проектах у своих клиентов. В целом мы можем выделить четыре основных источника неполадок:

  • Индексы – причина проблем номер один. Неправильные индексы, отсутствующие индексы, слишком много индексов и подобное. Чаще всего при проблеме с индексами пользователи или администраторы базы данных не получают сообщения об ошибке, они просто видят, что база работает очень медленно и докопаться до причин бывает очень нелегко
  • изначально плохая архитектура сервера баз данных – ошибка, которую очень сложно и дорого исправлять на этапе, когда база уже используется
  • плохой код, в котором возможны блокировки и тупиковые места
  • использование конфигурации по умолчанию,

Тестирование локального подключения

Перед устранением проблемы с подключением с другого компьютера нужно проверить возможность подключения из клиентского приложения, установленного локально. Использование локального подключения позволяет избежать проблем, связанных с сетями и брандмауэрами.

В этой процедуре используется среда SQL Server Management Studio в качестве локального клиента. Если среда Management Studio не установлена, см. раздел Скачивание SQL Server Management Studio (SSMS). Если вы не можете установить Management Studio, проверьте подключение с использованием служебной программы . устанавливается вместе с ядром СУБД. Дополнительные сведения о см. в разделе Программа sqlcmd.)

  1. Войдите на компьютер, на котором установлен SQL Server, с помощью имени входа с разрешением на доступ к SQL Server.

    Во время установки для SQL Server требуется задать по меньшей мере одно имя входа в качестве администратора SQL Server. Если администратор неизвестен, см. сведения в статье Подключение к SQL Server в случае, если доступ системных администраторов заблокирован.

  2. На начальной странице введите SQL Server Management Studio. В более старых версиях Windows в меню «Пуск» выберите Все программы, Microsoft SQL Server, а затем щелкните SQL Server Management Studio.

  3. В разделе Подключение к серверу > Сервер выберите Ядро СУБД. В поле Проверка подлинности выберите Проверка подлинности Windows. В поле Имя сервера задайте один из следующих типов подключения:

    Подключение к Тип Пример
    Экземпляр по умолчанию
    Именованный экземпляр \

    Примечание

    При подключении к SQL Server из клиентского приложения на том же компьютере используется протокол общей памяти. Общая память — это тип локального именованного канала, поэтому иногда возникают ошибки, связанные с каналами.

    Если на этом этапе происходит ошибка, ее необходимо устранить перед продолжением работы. Существует целый ряд потенциальных проблем. Имя входа может не иметь разрешений для подключения. Может отсутствовать база данных по умолчанию.

    Примечание

    В некоторых сообщениях об ошибках, передаваемых клиенту, намеренно не приведены достаточные сведения для устранения неполадок. Это функция безопасности, которая не позволяет предоставлять злоумышленнику информацию. Чтобы просмотреть полные сведения об ошибке, обратитесь к журналу ошибок SQL Server. Там вы найдете все подробности.

  4. При получении сообщения об ошибке см. MSSQLSERVER_18456.

    Другие состояния сбоя журнала можно просмотреть в этой записи блога.

    Журнал ошибок можно просмотреть помощью среды SSMS (при наличии соединения) в разделе «Управление» обозревателя объектов. В противном случае журнал можно просмотреть с помощью программы Блокнот Windows. Расположение по умолчанию зависит от версии и может быть изменено во время установки. Расположением по умолчанию для SQL Server 2019 (15.x) является .

  5. Если соединение устанавливается с помощью общей памяти, проверьте его с использованием TCP. Вы можете принудительно задать TCP-подключение, указав перед именем. Пример:

    Подключение к Тип: Пример
    Экземпляр по умолчанию
    Именованный экземпляр \
  6. Если соединение устанавливается с помощью общей памяти, но не TCP, необходимо устранить проблему с TCP. Скорее всего, проблема в том, что TCP-протокол отключен. Сведения о включении TCP см. в разделе выше.

  7. Если вы хотите установить соединение с использованием учетной записи, отличной от учетной записи администратора, после соединения с правами администратора повторите попытку, используя имя входа для проверки подлинности Windows или имя входа для проверки подлинности SQL Server, которое использует клиентское приложение.

SQL DBA – Windows could not start the SQL Server… refer to service-specific error code 17051 – SQL Server Evaluation period has expired

Ok, one fine day you opened SSMS (SQL Server Management Studio) and tried to connect to a SQL Instance, but it is not getting connected. You are getting following error message on a popup box:

–> You may also get following error:

————————— Microsoft SQL Server Management Studio ————————— Evaluation period has expired. For information on how to upgrade your evaluation software please go to http://www.microsoft.com/sql/howtobuy ————————— OK —————————

–> Investigate

Go to RUN and type services.msc to open Services window and see that SQL Server services are not running. On starting the SQL Server service it is giving you following message with error code 17051:

Now as per the error message you open the Event Viewer and see that the Event with ID 17051, which shows SQL Server Evaluation period has expired under Details section:

Now, you recall that the Instance that you had installed was under Evaluation of 180 days, because you didn’t applied any Product Key. So, now how can you make it live again? All you need is a Product key of SQL Server and some clicks:

1. Open the SQL Server Installation Center and click on Maintenance link, and then click on Edition Upgrade:

2. Now on the Upgrade window Click Next and you will reach the Product Key page, apply the Key and click Next:

3. On the Select Instance page, select the SQL Instance that you want to fix and Click next. It will take some time and finally you will see a final window and click Upgrade:

4. Finally you will see the successful window, click on Close button:

–> But, if the above process fails at Engine_SqlEngineHealthCheck step or anywhere in between, then you can use following command line installation option to skip this specific rule to allow the upgrade process to complete successfully:

a) Open Command Prompt (CMD)

b) Go to the folder where SQL Server Setup, setup.exe file is located (like C:Program FilesMicrosoft SQL Server110Setup BootstrapSQLServer2012)

c) Apply following command: setup.exe /q /ACTION=editionupgrade /InstanceName=MSSQLSERVER /P >

The should be the 25 digit Key.

The above command line runs SQL Server setup in silent mode.

5. Now Restart the SQL Server Service for this Instance, and you will see it running fine.

–> Finally, go back to SSMS and now you can connect to the SQL Instance.

SQL-сервер не найден или недоступен, ошибки соединения с SQL-сервером

  • Если SQL-сервер не найден, убедитесь, что ваш экземпляр SQL-сервера действительно установлен и запущен. Для этого зайдите на компьютер, где он установлен, запустите диспетчер конфигурации SQL и проверьте, есть ли там тот экземпляр, к которому вы пытаетесь подключиться и запущен ли он. Нелишним будет также получить отчет об обнаружении компонентов SQL-серверов.
  • Если вы проделали п1. и не обнаружили источник проблемы, возможно, неверно указан IP-адрес компьютера или номер порта TCP. Перепроверьте их настройки.
  • Причиной того, что невозможно подключиться к SQL-серверу, также может быть сеть, убедитесь, что компьютер с SQL-сервером доступен по сети.
  • Проверьте, может ли клиентское приложение, установленное на том же компьютере, что и сервер, подключиться к SQL-серверу. Запустите SQL Server Management Studio(SSMS), в диалоговом окне “Подключиться к серверу” выберите тип сервера Database Engine, укажите способ аутентификации “Аутентификация Windows”, введите имя компьютера и экземпляра SQL-сервера. Проверьте подключение.

Обратите внимание, что многие сообщения об ошибках могут быть не показаны или не содержат достаточной информации для устранения проблемы. Это сделано из соображений безопасности, чтобы при попытке взлома злоумышленники не могли получить информацию об SQL-сервере

Полные сведения содержатся в логе ошибок, который обычно хранится по адресу C:Program FilesMicrosoft SQL ServerMSSQL13.MSSQLSERVERMSSQLLogERRORLOG, или там, куда его поместил администратор системы.

Ошибка SQL-сервера 26

Одна из наиболее часто встречающихся ошибок подключения к SQL-серверу, обычно связана с тем, что в настройках SQL-сервера не разрешены или ограничены удаленные соединения. Чтобы это исправить, попробуйте:

  • в SSMS в настройках SQL-сервера включите аутентификацию Windows
  • для брандмауэра Windows создайте новое правило, которое разрешает подключение для всех программ и протоколов с указанного IP-адреса
  • убедитесь, что запущена служба SQL Server Browser

Ошибка SQL-сервера 18456

Эта ошибка означает, что попытка подключиться к серверу не успешна из-за проблем с именем пользователя или паролем. По коду ошибки в журнале ошибок можно узнать более точную причину, чтобы устранить ее.

Не удалось запустить SQL-server – код ошибки 3417

Возникает в случае, если были изменены настройки Windows или перемещена папка с файлами MSSQL.

  • зайдите в C:Program FilesMicrosoft SQLServerMSSQL.1MSSqLData – БезопасностьНастройки доступа – Учетная запись сетевой службы – добавьте учетную запись сетевой службы
  • проверьте, что MDF-файл не сжимается. Если это не так, отключите “Сжимать содержимое для экономии места на диске” в свойствах файла

Иногда ни один из этих способов не помогает, это значит, что файлы БД повреждены и ее придется восстанавливать из резервной копии.

Объяснение

Если попытка соединения отклоняется в результате сбоя проверки подлинности из-за неправильного имени или пароля, клиенту выдается сообщение, подобное следующему: «Ошибка входа пользователя <имя_пользователя>. (Microsoft SQL Server, ошибка: 18456)».

Дополнительные сведения, возвращаемые клиенту, включают в себя следующее:

«Ошибка входа пользователя <имя_пользователя>. (.Net SqlClient Data Provider)»

——————————

«Имя сервера: <имя_компьютера>»

«Номер ошибки: 18456»

«Серьезность: 14»

«Состояние: 1»

«Номер строки: 65536»

Может также возвращаться следующее сообщение:

«Сообщение 18456, уровень 14, состояние 1, сервер <имя_компьютера>, строка 1»

«Ошибка входа пользователя <имя_пользователя>».

Действие пользователя

При попытке подключения с использованием проверки подлинности SQL Server убедитесь, что SQL Server настроен в режиме смешанной проверки подлинности. Дополнительные сведения см. в статье Изменение режима проверки подлинности сервера.

При попытке подключения с использованием проверки подлинности SQL Server убедитесь, что имя входа SQL Server существует и введено верно.

При попытке подключения с использованием проверки подлинности Windows убедитесь, что выполнен правильный вход в нужный домен.

Если ошибка указывает состояние 1, обратитесь к администратору SQL Server.

Для подключения с учетными данными администратора запустите приложение от имени администратора. После подключения добавьте пользователя Windows в качестве отдельного имени входа.

Если компонент Компонент Database Engine поддерживает автономные базы данных, подтвердите, что имя входа не удалено после преобразования в пользователя автономной базы данных.

Службы, запущенные от имени NT AUTHORITY\NETWORK SERVICE, должны использовать для локального соединения с экземпляром SQL Server аутентификацию по полному доменному имени компьютера. Дополнительные сведения см. в разделе Как использовать учетную запись сетевой службы для доступа к ресурсам в ASP.NET

Что такое MS SQL Server

Чтобы упростить работу с такими хранилищами данных и повысить эффективность их применения, создаются специализированные системы управления. Одной из наиболее популярных является разработка от Microsoft – SQL Server. Первый релиз платформы опубликован еще в 1989 году, а последняя версия выпущена в 2019 году (проект продолжает развиваться).

Преимущества решения:

  1. Тесная интеграция с операционной системой Windows.
  2. Высокая производительность, отказоустойчивость.
  3. Поддержка многопользовательской среды.
  4. Расширенные функции резервирования данных.
  5. Работа с удаленным подключением.

Каждый выпуск включает в себя несколько специализированных редакций. Это снижает сложность внедрения и затраты на процесс разработки собственных решений, адаптированных для «узких» задач. При написании программного кода активно используется интеграция с продуктами Microsoft, например, с платформой Visual Studio.

Прямые конкуренты на рынке – Oracle Database, PostgreSQL. Первый проект коммерческий, он создан для поддержки крупных компаний, поэтому сопоставим по возможностям с MS SQL Server. Второй же распространяется на бесплатной основе и не «блещет» функциональностью, хотя весьма популярен среди многих разработчиков (аналог от Oracle MySQL).

Что такое СУБД

Появление таких продуктов позволило объединить разное понимание БД (баз данных) со стороны пользователей и системных администраторов. Неискушенные в технических деталях люди «видят» таблицы как некий перечень данных с колонками и строками. Системный подход включает файлы с табличными данными, связанными друг с другом согласно определенному алгоритму.

Функции базы данных:

  1. Постоянное хранение информации.
  2. Поиск по ключевым критериям.
  3. Чтение и редактирование по запросу.

Клиентами БД являются прикладные программы, их интерфейс, различные интерактивные модули сайтов вроде калькуляторов и онлайн-редакторов. Но есть еще один компонент системы – СУБД. Он предназначен для ручного доступа к информации и позволяет извлекать данные на диск, работать с ними в памяти сервера, в том числе с применением структурированного языка SQL.

Всего различают три типа БД – клиент-серверные, файл-серверные и встраиваемые. MS SQL Server относится к первой категории. Плюс система является реляционной, т.е. адаптированной для хранения данных без избыточности, с минимальными рисками появления аномалий и нарушения целостности внутренних таблиц.

Переустановка службы

В этом решении используем более продвинутый способ перезапуска службы, которая была повреждена и ее не удается исправить в свойствах.

Откройте редактор реестра выполнением команды regedit из окна Win + R.

На левой панели перейдите к разделу:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices

В разделе Services найдите проблемную службу, кликните на нее правой кнопкой мыши и удалите. Подтвердите все запросы, которые могут возникнуть в процессе удаления, и перезагрузите компьютер

Если не удается удалить проблемный раздел, попробуйте добавить дополнительные разрешения.

Правым щелчком мыши на службе в левой панели вызовите контекстное меню и выберите «Разрешения».

В разделе группы или имена пользователей найдите текущую учетную запись. Если не отображается, нажмите Добавить – Дополнительно – Найти. Выберите ее из результатов поиска.

Установите курсор на текущую учетную запись в разделе группы и имена пользователей, отметьте флажком поле полный доступ в разделе Разрешения и примените изменения.

После этого попробуйте снова удалить раздел и перезагрузите компьютер.

После перезагрузки запустите командную строку от имени администратора с помощью системного поиска.

Запустите следующую команду, которая позволит восстановить удаленный раздел из реестра:

sfc /scannow

Дождитесь завершения сканирования и перезапустите ПК. Проверьте, решена ли проблема.

Другие ошибки SQL

Код ошибки SQL-сервера 1814

SQL-сервер не может создать базу данных tempdb.  Убедитесь, что на выделенном под нее диске достаточно места и что у учетной записи хватает прав для записи в указанную директорию.

Код ошибки SQL-сервера 1067

Эта ошибка может возникать по разным причинам. Наиболее часто оказывается, что повреждены или отсутствуют конфигурационные файлы, SQL-сервер обращается к поврежденным системным файлам, ошибочные данные пользователя, нет информации про лицензию. В самых тяжелых случаях придется переустанавливать SQL-сервер. Но иногда помогает восстановление поврежденных файлов или изменение настроек SQL-сервера — вы можете создать новую учетную запись в домене и использовать ее для службы MSSQL.

SQL-сервер запускается, но работает слишком медленно

Проанализируйте журнал сервера, индексы (фрагментацию), запросы, задания, возможность взаимных блокировок.  Причин может быть масса.

Мы работаем с разными версиями SQL-сервера уже много лет, знакомы со всевозможными инструкциями SQL-сервера, видели самые разные варианты его настройки и использования на проектах у своих клиентов. В целом мы можем выделить четыре основных источника неполадок:

  • Индексы — причина проблем номер один. Неправильные индексы, отсутствующие индексы, слишком много индексов и подобное. Чаще всего при проблеме с индексами пользователи или администраторы базы данных не получают сообщения об ошибке, они просто видят, что база работает очень медленно и докопаться до причин бывает очень нелегко
  • изначально плохая архитектура сервера баз данных — ошибка, которую очень сложно и дорого исправлять на этапе, когда база уже используется
  • плохой код, в котором возможны блокировки и тупиковые места
  • использование конфигурации по умолчанию,

Присоединяйтесь к нам,

чтобы получать чек-листы, реальные кейсы, а также обзоры сервисов раз в 2 недели.

Определение того, выполняется панель запуска

  1. Откройте Диспетчер конфигурации SQL Server. В командной строке введите SQLServerManager13.msc, SQLServerManager14.msc или SQLServerManager15.msc.

  2. Запишите учетную запись службы, под которой выполняется панель запуска. Каждый экземпляр, где включен R или Python, должен иметь собственный экземпляр службы панели запуска. Например, служба для именованного экземпляра может иметь вид MSSQLLaunchpad$имя_экземпляра.

  3. Если служба остановлена, перезапустите ее. Если при перезапуске возникают проблемы с конфигурацией, в журнал системных событий заносится сообщение, а служба снова останавливается. Проверьте журнал системных событий на наличие сведений о причинах остановки службы.

  4. Проверьте содержимое файла RSetup.log и убедитесь в отсутствии ошибок в программе установки. Например, сообщение Выполняется выход с кодом 0 указывает на сбой запуска службы.

  5. Чтобы найти другие ошибки, просмотрите содержимое файла журнала rlauncher.log.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: