В цій статті
Помилки підключення до бази даних і тимчасові помилки
У цій таблиці наведено коди помилок SQL для помилок втрати підключення та інших тимчасових помилок, які можуть виникнути, коли програма намагається отримати доступ до бази даних SQL. Підручники для початку роботи з підключенням до бази даних SQL Azure доступні в розділі Підключення до бази даних SQL Azure.
Найбільш поширені помилки підключення до бази даних, а також тимчасові збої і помилки
Інфраструктура Azure здатна динамічно змінювати конфігурацію серверів при великого робочого навантаження на службу баз даних SQL. Таке динамічне поведінка може призвести до розриву підключення між клієнтською програмою і базою даних SQL. Такий стан називається тимчасової помилкою.
Тимчасові збої зазвичай проявляються у вигляді одного з таких повідомлень про помилку з клієнтських програм:
- База даних <имя_базы_данных> на сервері <экземпляр_Azure> Зараз недоступна. Будь ласка, спробуйте підключення пізніше. Якщо проблема виникає знову, зверніться в службу підтримки клієнтів і повідомте ВД трасування сеансу <ИД_сеанса>.
- База даних <имя_базы_данных> на сервері <экземпляр_Azure> Зараз недоступна. Будь ласка, спробуйте підключення пізніше. Якщо проблема виникає знову, зверніться в службу підтримки клієнтів і повідомте ВД трасування сеансу <ИД_сеанса>. (Microsoft SQL Server, помилка: 40613)
- Існуюче підключення було примусово розірвано віддаленим вузлом.
- System.Data.Entity.Core.EntityCommandExecutionException. При виконанні визначення команди сталася помилка. Додаткові відомості див. У внутрішньому виключення. ---> System.Data.SqlClient.SqlException. Помилка на транспортному рівні при отриманні результатів з сервера. (Постачальник: "Постачальник сеансів", помилка: 19 - "Фізичне підключення не використовується".)
- Спроба підключення до бази даних-одержувачу завершилася збоєм, так як база даних повторно налаштовується і до неї застосовуються нові сторінки в процесі активної транзакції в базі даних-джерелі.
Обговорення періоду блокування для клієнтів, які використовують ADO.NET, см. В статті Організація групування підключень SQL Server (ADO.NET).
Коди помилок для тимчасових збоїв
Нижче наведені тимчасові помилки, для яких в додатку слід реалізувати логіку повтору.
Ідентифікатор ресурсу: .. Межа% s для бази даних становить., І він досягнутий. Додаткові відомості див. У статті Обмеження ресурсів бази даних SQL Azure.
Ідентифікатор ресурсу вказує на ресурс, межа якого було досягнуто. Для робочих потоків ідентифікатор ресурсу = 1. Для сеансів ідентифікатор ресурсу - 2.
Додаткові відомості про цю помилку і способах її усунення см. В статті:
• Обмеження ресурсів бази даних SQL Azure.
Ідентифікатор ресурсу: .. Мінімальна гарантія% s становить., Максимальне значення дорівнює., А поточне використання для бази даних - .. Тим не менш, у даний час сервер занадто зайнятий, щоб обробити більше ніж. запитів для цієї бази даних. Додаткові відомості див. У статті Обмеження ресурсів бази даних SQL Azure. В іншому випадку спробуйте ще раз.
Ідентифікатор ресурсу вказує на ресурс, межа якого було досягнуто. Для робочих потоків ідентифікатор ресурсу = 1. Для сеансів ідентифікатор ресурсу - 2.
Додаткові відомості про цю помилку і способах її усунення см. В статті:
• Обмеження ресурсів бази даних SQL Azure.
База даних досягла граничного розміру. Секціонуючою або видаліть дані, видаліть індекси або спробуйте знайти можливе рішення в документації.
Сеанс зупинений через наявність транзакції з тривалим часом виконання. Спробуйте скоротити час виконання транзакції.
Сеанс зупинений, оскільки він використовує занадто багато блокувань. Спробуйте скоротити кількість читаних або змінюваних рядків в одній транзакції.
Сеанс зупинений через надмірне використання TEMPDB. Спробуйте змінити запит, щоб скоротити використання тимчасового табличного простору.
Якщо ви використовуєте тимчасові об'єкти, то для економії місця в базі даних TEMPDB видаляйте їх відразу після того, як в них зникне необхідність.
Сеанс зупинений через надмірне використання місця для журналів транзакцій. Спробуйте скоротити кількість змінюваних рядків в одній транзакції.
Сеанс зупинений через надмірне споживання пам'яті. Спробуйте змінити запит і задати обробку меншого числа рядків.
Скорочення кількості операцій ORDER BY і GROUP BY в коді Transact-SQL дозволяє зменшити споживання пам'яті при виконанні запиту.
Помилки пулу еластичних БД
Наведені нижче помилки пов'язані зі створенням і використанням еластичних пулів.
Сховище еластичного пулу досягло свого граничного значення. Рівень використання сховища для еластичного пулу не може перевищувати (.) МБ.
Обмеження пам'яті еластичного пулу в МБ.
Спроба запису даних в базу даних, коли було досягнуто граничне значення сховища еластичного пулу.
Якщо це можливо, спробуйте збільшити DTU еластичного пулу для збільшення граничного розміру його сховища, скоротити обсяг пам'яті, використовуваної окремими базами даних в еластичному пулі, або видалити бази даних з пулу.
Мінімальна кількість DTU на базу даних; максимальне число DTU на одну базу даних.
Загальна кількість одночасних працівників (запитів) по всіх базах даних в еластичному пулі перевищила обмеження пулу.
Якщо це можливо, спробуйте збільшити DTU еластичного пулу для збільшення гранично допустимої кількості працівників або видалити бази даних з еластичного пулу.
База даних '% ls' на сервері '% ls' є базою даних випуску '% ls' в еластичному пулі і не може мати зв'язок безперервної копії.
ім'я бази даних, випуск бази даних, ім'я сервера
Ім'я правила брандмауера, що починається з символу імені правила, занадто довге. Максимальна довжина - 128 символів.
Ім'я правила брандмауера не може бути порожнім.
Користувачеві%. # X2a; ls не вдалося увійти в систему. Чи не вдалося змінити пароль. Зміна пароля під час входу в систему не підтримуються в цій версії SQL Server.
Виконується операція на сервері '' і в базі даних ''. Зачекайте кілька хвилин і спробуйте ще раз.
Помилка перевірки пароля. Пароль не відповідає вимогам політики, так як він занадто короткий.
Неможливо відкрити базу даних "%. * Ls" на сервері "%. * Ls", запитувану з використанням імені для входу. Доступ до бази даних надається тільки при використанні рядка безпечного підключення. Для доступу до цієї бази даних змініть рядки підключення, додавши слово secure в повне доменне ім'я сервера: <имя_сервера>.database.windows.net потрібно змінити на <имя_сервера>.database secure .windows.net.
Неможливо відкрити сервер [ім'я-сервера]. запитуваний ім'ям входу. Клієнту заборонено доступ до сервера.
Щоб усунути проблему, спробуйте додати правило віртуальної мережі.
Система SQL Azure відчуває навантаження, в зв'язку з чим обмежує максимальну кількість паралельних операцій CRUD з базами даних на одному сервері (наприклад, створення бази даних). Сервер, зазначений в повідомленні про помилку, перевищив максимальну кількість одночасних підключень. Будь ласка, спробуйте пізніше.