Тайм-аут сравнения
При выполнении сравнения схем в Visual Studio 2013 между проектом базы данных и базой данных SQL Azure у меня возникают следующие ошибки времени ожидания:
Ошибка 1 При попытке выполнить обратный инжиниринг элементов типа Microsoft.Data.Schema.Sql.SchemaModel.ISqlUser была получена ошибка от SQL Server: истекло время ожидания. Время ожидания истекло до завершения операции или сервер не отвечает.
Ошибка 2 ExecuteReader требует открытого и доступного соединения. Текущее состояние соединения закрыто.
Я делаю это на виртуальной машине Windows Server 2012 R2, размещенной в Azure.
- Разрешено использование порта 1433 в брандмауэре
- IP-адрес виртуальной машины разрешен на сервере баз данных SQL (Azure)
Я могу просто запросить базу данных с помощью обозревателя объектов SQL Server в Visual Studio, чтобы быть уверенным в возможности подключения и учетной записи.
Существуют ли другие параметры безопасности, которые могут вызывать у меня эти проблемы?
1 ответ
Время соединения с базой данных SQL Azure истечет, если вы превысите предел пропускной способности базы данных (DTS). Это может легко произойти, если вы используете базовый уровень обслуживания базы данных SQL в Azure.
Базовый уровень обслуживания ограничен 5 единицами пропускной способности базы данных (5 DTU), поэтому, если у вас много сравнений, он может превысить пороговое значение. Попробуйте перейти на стандартный уровень обслуживания базы данных SQL (с пороговым пределом 10 DTU) и посмотрите, исчезнет ли проблема.
Чтобы узнать больше об истечении времени ожидания при публикации в базе данных SQL, см. Следующий пост:
Сообщение об ошибке тайм-аута вводит в заблуждение.