Я подключаюсь к Azure из SQL Server.
Задача: экспорт данных базы данных SQL Azure с использованием bcp
из SQL Server 2008 R2.
Шаг 1. Добавлен IP-адрес в настройках брандмауэра в Azure.
Шаг 2. Запуск следующего сценария из SQL Server 2008 R2:
EXEC sp_configure N'show advanced options', 1
RECONFIGURE WITH OVERRIDE;
EXEC sp_configure N'xp_cmdshell', 1
RECONFIGURE WITH OVERRIDE;
DECLARE @SQL NVARCHAR(MAX) = ''
SET @SQL = N'Execute xp_cmdshell ''bcp "SELECT * FROM Table;" queryout "D:\AzureTableData.txt" -c -t@_@ -S azure.database.windows.net -d DatabaseName -U user1@azure.database.windows.net -P *****"''';
ПРИМЕЧАНИЕ : IP-адрес не является статическим в моей системе, и по этой причине я получаю сообщение об ошибке:
Ошибка = [Microsoft] [Собственный клиент SQL Server 10.0] [SQL Server] Не удается открыть сервер «azurserver», запрошенный при входе в систему. Клиент с IP-адресом «XXX.XXX.XXX.XX» не имеет доступа к серверу. Чтобы включить доступ, используйте портал управления Windows Azure или запустите sp_set_firewall_rule в базе данных master, чтобы создать правило брандмауэра для этого IP-адреса или диапазона адресов. Это изменение может вступить в силу до пяти минут.
Я не могу настраивать параметры брандмауэра каждый раз на портале Azure.