Azure Runbook для подключения к серверу SQL, работающему на виртуальной машине Azure - PullRequest
0 голосов
/ 17 января 2019

Я пытаюсь подключиться к серверу SQL, работающему на виртуальной машине Azure, используя приведенный ниже пример кода (определив имя пользователя и пароль SQL):

$SqlCredential = Get-AutomationPSCredential -Name $SqlCredentialAsset 

# Get the username and password from the SQL Credential 
$SqlUsername = $SqlCredential.UserName 
$SqlPass = $SqlCredential.GetNetworkCredential().Password 

# Define the connection to the SQL Database 
$Conn = New-Object System.Data.SqlClient.SqlConnection("Server=tcp:$SqlServer,$SqlServerPort;Database=$Database;User ID=$SqlUsername;Password=$SqlPass;Trusted_Connection=False;Encrypt=True;")

этот код работает при подключении к базе данных SQL Azure, но не при подключении к SQL, работающему на виртуальной машине Azure.

выдана ошибка:

Error occured: Exception calling "Open" with "0" argument(s): 
"A network-related or instance-specific error occurred while establishing a 
connection to SQL Server. The server was not found or was not accessible.
 Verify that the instance name is correct and that SQL Server is configured to allow remote connections. 
(provider: TCP Provider, error: 0 - No such host is known.)"

Я подтвердил, что на виртуальной машине SQL удаленные подключения включены и определен TCP-порт 1433.

1 Ответ

0 голосов
/ 17 января 2019

Вероятно, это проблема, связанная с сетью. Если вы проверили на виртуальной машине SQL, удаленные подключения включены и определены TCP-порт 1433. Кроме того, порт 1433 был открыт в правиле входящего порта NSG, подключенного к ВМ, и брандмауэра Windows внутри ВМ. Вы можете использовать telnet , чтобы проверить этот порт локально.

Кроме того, вы можете указать $SqlServer= "sqlvmlabel.eastus.cloudapp.azure.com", которое является публичным DNS-именем виртуальной машины Azure. Вот пример строки подключения для использования аутентификации SQL.

Server=sqlvmlabel.eastus.cloudapp.azure.com;Integrated Security=false;User ID=<login_name>;Password=<your_password>

Дополнительная информация: подключение к виртуальной машине SQL Server в Azure

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...