你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
New-AzureSqlDatabaseServerContext
创建服务器连接上下文。
注意
本文档中引用的 cmdlet 用于管理使用 Azure Service Manager (ASM) API 的旧式 Azure 资源。 创建新资源时,建议不要使用旧的 PowerShell 模块,因为计划将停用 ASM。 有关详细信息,请参阅 Azure Service Manager 停用。
Az PowerShell 模块是建议用于管理 PowerShell 的 Azure 资源管理器 (ARM) 资源的 PowerShell 模块。
语法
New-AzureSqlDatabaseServerContext
-ServerName <String>
-Credential <PSCredential>
[-Profile <AzureSMProfile>]
[<CommonParameters>]
New-AzureSqlDatabaseServerContext
[-ServerName <String>]
-ManageUrl <Uri>
-Credential <PSCredential>
[-Profile <AzureSMProfile>]
[<CommonParameters>]
New-AzureSqlDatabaseServerContext
-ServerName <String>
[-UseSubscription]
[-SubscriptionName <String>]
[-Profile <AzureSMProfile>]
[<CommonParameters>]
New-AzureSqlDatabaseServerContext
-FullyQualifiedServerName <String>
-Credential <PSCredential>
[-Profile <AzureSMProfile>]
[<CommonParameters>]
New-AzureSqlDatabaseServerContext
-FullyQualifiedServerName <String>
[-UseSubscription]
[-SubscriptionName <String>]
[-Profile <AzureSMProfile>]
[<CommonParameters>]
说明
New-AzureSqlDatabaseServerContext cmdlet 创建Azure SQL 数据库服务器连接上下文。 使用 SQL Server 身份验证通过指定的凭据创建到SQL 数据库服务器的连接上下文。 可以按名称、完全限定名称或 URL 指定SQL 数据库服务器。 若要获取凭据,请使用提示你指定用户名和密码的 Get-Credential cmdlet。
使用具有基于证书的身份验证的 New-AzureSqlDatabaseServerContext cmdlet,使用指定的 Azure 订阅数据创建到指定SQL 数据库服务器的连接上下文。 可以按名称或完全限定的名称指定SQL 数据库服务器。 可以将订阅数据指定为参数,也可以从当前 Azure 订阅中检索该数据。 使用 Select-AzureSubscriptionhttps://msdn.microsoft.com/library/windowsazure/jj152833.aspx cmdlet 选择当前的 Azure 订阅。
示例
示例 1:使用 SQL Server 身份验证创建上下文
PS C:\> $Credential = Get-Credential
PS C:\> $Context = New-AzureSqlDatabaseServerContext -ServerName "lpqd0zbr8y" -Credential $Credential
PS C:\> $Database17 = New-AzureSqlDatabase -ConnectionContext $Context -DatabaseName "Database17" -MaxSizeGB 50 -Collation "SQL_Latin1_General_CP1_CI_AS"
此示例使用 SQL Server 身份验证。
第一个命令会提示你输入服务器管理员凭据,并将凭据存储在$Credential变量中。
第二个命令使用 $Credential 连接到名为 lpqd0zbr8y 的 SQL 数据库 服务器。
最后一个命令在服务器上创建名为 Database17 的数据库,该数据库是$Context上下文的一部分。
示例 2:使用基于证书的身份验证创建上下文
PS C:\> $SubscriptionId = <Subscription ID>
PS C:\> $Thumbprint = <Certificate Thumbprint>
PS C:\> $Certificate = Get-Item "Cert:\CurrentUser\My\$Thumbprint"
PS C:\> Set-AzureSubscription -SubscriptionName "Subscription07" -SubscriptionId $SubscriptionId -Certificate $Certificate
PS C:\> Select-AzureSubscription -SubscriptionName "Subscription07"
PS C:\> $Context = New-AzureSqlDatabaseServerContext -ServerName "lpqd0zbr8y" -UseSubscription
此示例使用基于证书的身份验证。
前两个命令将值分配给$SubscriptionId和$Thumbprint变量。
第三个命令获取$Thumbprint指纹标识的证书,并将其存储在$Certificate中。
第四个命令将订阅设置为 Subscription07,第五个命令选择该订阅。
最后一个命令在名为 lpqd0zbr8y 的服务器当前订阅中创建上下文。
参数
-Credential
指定一个凭据对象,该对象提供用于访问服务器的 SQL Server 身份验证。
类型: | PSCredential |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-FullyQualifiedServerName
指定Azure SQL 数据库服务器的完全限定域名 (FQDN) 名称。 例如,Server02.database.windows.net。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ManageUrl
指定此 cmdlet 用于访问服务器的 Azure SQL 数据库Management Portal 的 URL。
类型: | Uri |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Profile
指定此 cmdlet 从中读取的 Azure 配置文件。 如果未指定配置文件,此 cmdlet 将从本地默认配置文件中读取。
类型: | AzureSMProfile |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ServerName
指定数据库服务器的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | True |
接受通配符: | False |
-SubscriptionName
指定此 cmdlet 用于创建连接上下文的 Azure 订阅的名称。 如果未为此参数指定值,则 cmdlet 将使用当前订阅。 运行 Select-AzureSubscription cmdlet 以更改当前订阅。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | True |
接受通配符: | False |
-UseSubscription
指示此 cmdlet 使用 Azure 订阅创建连接上下文。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
输出
Microsoft.WindowsAzure.Commands.SqlDatabase.Services.Server.IServerDataServiceContext
备注
如果在未指定域的情况下进行身份验证,如果使用 Windows PowerShell 2.0,则 Get-Credential cmdlet 将返回用户名前面附加的反斜杠(\),例如 \user。 Windows PowerShell 3.0 不会添加反斜杠。 New-AzureSqlDatabaseServerContext cmdlet 的 Credential 参数无法识别此反斜杠。 若要删除它,请使用类似于下面的命令:
PS C:\\\> $Credential = Get-Credential
PS C:\\\> $Credential = New-Object -TypeName 'System.Management.Automation.PSCredential' -ArgumentList $Credential.Username.Replace("\",""),$Credential.Password