Была ли эта страница полезной?
Ваш отзыв об этом контенте важен для нас. Расскажите нам о том, что вы думаете.
Дополнительный отзыв?
1500 символов осталось
Экспорт (0) Печать
Развернуть все

Замечания по разработке в базе данных SQL Azure

Обновлено: Июль 2015 г.

Разработка приложений для База данных SQL Microsoft Azure сходна с разработкой приложений для SQL Server. В этом разделе приведено описание нескольких различий и некоторых особенностей, которые следует учитывать при разработке приложений База данных SQL Azure. Кроме того, в разделе содержатся основные шаги, которые должен предпринять разработчик, и перечислены рекомендуемые приемы кодирования.

Чтобы использовать База данных SQL Azure, сначала необходимо создать учетную запись платформы Azure. Учетная запись платформы Azure используется для настройки и управления подписками, а также для выставления счетов за использование Azure, Azure AppFabric и База данных SQL Azure. После создания учетной записи Azure можно использовать портал управления платформой Azure для добавления или удаления сервера База данных SQL Azure и базы данных. Можно также использовать Операции для баз данных SQL Azure для программного добавления или удаления серверов База данных SQL Azure и управлять правилами брандмауэра, связанными с сервером.

Сервер База данных SQL Azure представляет собой логическую группу баз данных и служит в качестве центральной точки администрирования нескольких баз данных. При создании сервера База данных SQL Azure автоматически создается база данных master, доступная только для чтения. База данных master отслеживает, какие имена входа имеют разрешения на создание баз данных или других имен входа. Для выполнения операций CREATE, ALTER или DROP с именами входа или базами данных необходимо подключение к базе данных master. Дополнительные сведения об администрировании безопасности База данных SQL Azure см. в разделе Управление базами данных, именами для входа и пользователями в Базе данных SQL Azure.

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

После создания параметра брандмауэра уровня сервера для просмотра и изменения параметров брандмауэра можно использовать имя входа субъекта серверного уровня и базу данных master. В базе данных master параметры брандмауэра называются правилами. Представление sys.firewall_rules отображает текущие параметры брандмауэра уровня сервера, которые можно изменять с помощью хранимых процедур sp_set_firewall_rule и sp_delete_firewall_rule.

Далее, если требуется управлять доступом к определенным базам данных, размещенным на сервере База данных SQL Azure, можно создать правила брандмауэра уровня базы данных для этих баз данных. Можно создать правила брандмауэра уровня базы данных для базы данных master и пользовательских баз данных. Теперь вы можете подключаться к базе данных и просматривать правила брандмауэра уровня базы данных в представлении sys.database_firewall_rules. Хранимые процедуры sp_set_database_firewall_rule и sp_delete_database_firewall_rule в базе данных master и пользовательских базах данных позволяют изменять правила брандмауэра уровня базы данных для соответствующих баз данных. Дополнительные сведения о правилах брандмауэра уровня сервера и базы данных см. в разделе Брандмауэр базы данных SQL Azure.

Доступ к подробным сведениям о выставлении счетов для конкретных учетных записей База данных SQL Azure на сервере База данных SQL Azure можно получить с помощью системных представлений sys.database_usage и sys.bandwidth_usage. Дополнительные сведения см. в Учетные записи и выставление счетов в базе данных SQL Azure.

Создавать базы данных База данных SQL Azure можно двумя способами:

Сведения о переносе базы данных из локального экземпляра SQL Server в База данных SQL Azure см. в разделе Миграция баз данных в базу данных SQL Azure.

noteПримечание
Чтобы изменить выпуск и имя базы данных после ее создания, используйте инструкцию ALTER DATABASE.

Построение и размещение приложений База данных SQL Azure можно выполнить двумя способами:

  • Разместить код приложения локально в собственном центре обработки данных корпорации, но базу данных разместить в База данных SQL Azure. Код приложения использует клиентские библиотеки для доступа к базам данных в База данных SQL Azure. Дополнительные сведения о доступных клиентских библиотеках см. в разделе Рекомендации и ограничения в базе данных SQL Azure. Пример кода см. в разделе Инструкции Подключиться к базе данных SQL Azure с использованием ADO.NET.

  • Разместить код приложения в Azure, а базу данных — в База данных SQL Azure. Приложение может использовать те же клиентские библиотеки для доступа к базам данных в База данных SQL Azure. В этом случае клиентское приложение может быть настольным приложением или приложением Silverlight, использующим преимущества модели EDM и клиент Службы WCF Data Services для доступа к размещенным в База данных SQL Azure данным.

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

Полоса пропускания сети, применяемая для обмена данными между База данных SQL Azure и Azure или Azure AppFabric, в рамках одной области или одного центра обработки данных предоставляется бесплатно. При развертывании приложения Azure размещайте приложение и базу данных База данных SQL Azure в одном и том же регионе, чтобы сократить затраты на используемую полосу пропускания сети. Дополнительные сведения см. в Учетные записи и выставление счетов в базе данных SQL Azure.

Разработка приложений для База данных SQL Azure сходна с разработкой приложений для SQL Server. При разработке приложения, осуществляющего доступ к База данных SQL Azure, можно использовать много различных типов приложений и технологий. База данных SQL Azure работает с приложениями сторонних поставщиков, языком PHP и многими приложениями Microsoft, в том числе с ADO.NET, Entity Framework, Службы WCF Data Services и ODBC.

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

  • Чрезмерное использование ресурсов

  • Долго выполняющиеся запросы

  • Долго выполняющиеся отдельные транзакции (между инструкциями BEGIN TRAN и END TRAN)

  • Простаивающие соединения

В этом состоит отличие от использования локального экземпляра SQL Server.

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

Когда клиентское приложение подключается к База данных SQL Azure, CONTEXT_INFO (Transact-SQL) автоматически устанавливается в уникальное для конкретного сеанса значение GUID. Получите это значение идентификатора GUID и используйте его в своем приложении для отслеживания проблем с соединением.

Следующие инструкции на языке C# показывают, как можно изменить приложение для отслеживания состояния соединения.

SQLAzure_Connecting#TraceConnectivity

См. также

Показ:
© 2015 Microsoft