无法使用 powershell 启动 azure 数据库的无人值守导入
Can't start unattended import of azure database with powershell
我正在尝试使用 powershell.Since 开始导入 azure sql 数据库 我希望它在部署期间 运行 我不能使用 Get-Credential,因为我会得到一个登录提示。
Import-AzurePublishSettingsFile $publishSettingsFile
Set-AzureSubscription -SubscriptionName $subscriptionName -Certificate $certificate
Select-AzureSubscription -SubscriptionName $subscriptionName
$databaseContext = New-AzureSqlDatabaseServerContext -ServerName $serverName -UseSubscription
$storageContext = New-AzureStorageContext -StorageAccountName testdatabasebackups -StorageAccountKey $storageKey
Start-AzureSqlDatabaseImport -SqlConnectionContext $databaseContext -StorageContainer $storageContainer -DatabaseName $databaseName -BlobName $restoreFrom
当我到达 Start-AzureSqlDatabaseImport
时,出现以下错误:
Start-AzureSqlDatabaseImport:无法绑定参数 'SqlConnectionContext'。无法转换类型为“Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Serve 的 "Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.ServerDataServiceCertAuth" 值
r.ServerDataServiceCertAuth" 以键入 "Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.ISqlServerConnectionInformation".
是否可以这样做,或者在使用 Start-AzureSqlDatabaseImport
时是否需要使用 Get-Credential
?
要使用 PowerShell Start-AzureSQLDatabaseImport
,您将需要使用 Get-Credential 创建具有 SQL 服务器身份验证的新服务器上下文。
这是必需的原因是 Import cmdlet 需要 SQL 服务器身份验证才能访问服务器。
要建立 SQL 服务器身份验证作为服务器连接上下文的一部分,您需要提供 PowerShell 凭据。
安装最新版本的 Azure PowerShell here 然后您可以尝试以下操作:
Add-AzureAccount
Set-AzureSubscription -SubscriptionName 'SubscriptionName'
$Password = ConvertTo-SecureString 'MyPassowrd' -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList 'LoginName', $Password
$SqlCtx = New-AzureSqlDatabaseServerContext -ServerName 'ServerName' -Credential $cred
$StorageCtx = New-AzureStorageContext -StorageAccountName 'StorageAccountName' -StorageAccountKey 'YourStorageKey'
$Container = Get-AzureStorageContainer -Name 'ContainerName'
$ImportRequest = Start-AzureSqlDatabaseImport -SqlConnectionContext $SqlCtx -StorageContainer $Container -BlobName 'BlobFileName'
希望对您有所帮助!
我正在尝试使用 powershell.Since 开始导入 azure sql 数据库 我希望它在部署期间 运行 我不能使用 Get-Credential,因为我会得到一个登录提示。
Import-AzurePublishSettingsFile $publishSettingsFile
Set-AzureSubscription -SubscriptionName $subscriptionName -Certificate $certificate
Select-AzureSubscription -SubscriptionName $subscriptionName
$databaseContext = New-AzureSqlDatabaseServerContext -ServerName $serverName -UseSubscription
$storageContext = New-AzureStorageContext -StorageAccountName testdatabasebackups -StorageAccountKey $storageKey
Start-AzureSqlDatabaseImport -SqlConnectionContext $databaseContext -StorageContainer $storageContainer -DatabaseName $databaseName -BlobName $restoreFrom
当我到达 Start-AzureSqlDatabaseImport
时,出现以下错误:
Start-AzureSqlDatabaseImport:无法绑定参数 'SqlConnectionContext'。无法转换类型为“Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Serve 的 "Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.ServerDataServiceCertAuth" 值 r.ServerDataServiceCertAuth" 以键入 "Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.ISqlServerConnectionInformation".
是否可以这样做,或者在使用 Start-AzureSqlDatabaseImport
时是否需要使用 Get-Credential
?
要使用 PowerShell Start-AzureSQLDatabaseImport
,您将需要使用 Get-Credential 创建具有 SQL 服务器身份验证的新服务器上下文。
这是必需的原因是 Import cmdlet 需要 SQL 服务器身份验证才能访问服务器。
要建立 SQL 服务器身份验证作为服务器连接上下文的一部分,您需要提供 PowerShell 凭据。
安装最新版本的 Azure PowerShell here 然后您可以尝试以下操作:
Add-AzureAccount
Set-AzureSubscription -SubscriptionName 'SubscriptionName'
$Password = ConvertTo-SecureString 'MyPassowrd' -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList 'LoginName', $Password
$SqlCtx = New-AzureSqlDatabaseServerContext -ServerName 'ServerName' -Credential $cred
$StorageCtx = New-AzureStorageContext -StorageAccountName 'StorageAccountName' -StorageAccountKey 'YourStorageKey'
$Container = Get-AzureStorageContainer -Name 'ContainerName'
$ImportRequest = Start-AzureSqlDatabaseImport -SqlConnectionContext $SqlCtx -StorageContainer $Container -BlobName 'BlobFileName'
希望对您有所帮助!