SQL Server和其他资源提供程序故障排除

 

适用于:Windows Azure Pack

本主题介绍Windows Azure Pack for Windows Server 中与 SQL Server、MySQL 和其他资源提供程序相关的问题。 为以下问题提供了推荐:

  • 将数据库添加到SQL Server群集

  • 更改资源提供程序的 FQDN

  • 连接到 SQL Server 或 MySQL

  • 创建用于注册SQL Server的脚本

  • 确定使用哪些SQL Server数据库

  • 为租户设置SQL Server组

  • 取消注册自定义资源提供程序

有关在库中部署SQL Server项的问题,请参阅虚拟机云故障排除。 有关资源提供程序感兴趣的 API,包括编程SQL Server数据库,请参阅Windows Azure Pack 资源提供程序

将数据库添加到SQL Server群集

将 SQL Server 或 MySQL 与 Windows Azure Pack 配合使用

问题

无法在 Windows Azure Pack 中将数据库添加到SQL Server群集。

建议

请确保正在使用的任何SQL Server扩展都安装在管理 API 服务器上。 如果继续出现错误,可能需要卸载并重新安装管理 API,请参阅安装 Windows Azure Pack 服务管理 API

返回页首

更改资源提供程序的 FQDN

涉及为 Windows 服务器部署 Windows Azure Pack

问题

需要更改资源提供程序 Web 服务终结点的完全限定域名 (FQDN) 。

建议

请参阅 Windows Azure Pack 中更新资源提供程序的 FQDN 和重新配置 FQDN 和端口的主题。

返回页首

连接到 SQL Server 或 MySQL

将 SQL Server 或 MySQL 与 Windows Azure Pack 配合使用

问题

尝试在租户的管理门户中添加SQL Server或 MySQL 数据库时,登录失败。

建议

查看以下内容:

  • 验证防火墙是否未阻止SQL Server默认端口 (1433) ,或者 MySQL 默认端口 (3306) 。

  • 验证是否访问了正确的实例名称。

  • 验证是否为配置管理器中的网络配置启用了 TCIP/IP 协议。

可以使用以下过程来确定是否可以从租户的计算机访问 MySQL。

  1. "开始"菜单 MySQL 命令行客户端,请在命令提示符处输入以下命令, (其中 pwd 是密码) :mysql -u root -pwd

  2. 输入以下命令:

    GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'pwd' WITH GRANT OPTION;  
    FLUSH PRIVILEGES;  
    use mysql;  
    update user set grant_priv='Y' where user='root'; 
    
  3. 准备就绪后,退出会话:退出;

  4. 使用服务器管理器重启 MySQL 服务,或在管理员命令提示符中输入以下命令:

        net stop mysql  
        net start mysql  
    

返回页首

创建用于注册SQL Server的脚本

将 SQL Server 或 MySQL 与 Windows Azure Pack 配合使用

问题

需要一个脚本,以便为管理员将数据库添加到管理门户。

建议

创建数据库后,可以使用以下脚本作为代码的基础。

$Adminuri = 'https://myEnvironment:30004/'
$token = Get-MgmtSvcToken -Type 'Windows' -AuthenticationSite https://myEnvironment:30072 -ClientRealm http://azureservices/AdminSite -DisableCertificateValidation

#Get the Hosting Group to add the Hosting Server to 
$HostingGroup = Get-MgmtSvcSqlServerGroup -AdminUri $Adminuri -Token $token -DisableCertificateValidation | where {$_.GroupName -eq "Default"}

#Add the hosting Server
$dbusername = 'sa'
$dbpassword = ConvertTo-SecureString "passw0rd1" -AsPlainText -Force
$dbcredential = New-Object System.Management.Automation.PSCredential ($dbusername,$dbpassword)
$dbServerName = 'myDbServer'

Add-MgmtSvcSqlHostingServer -AdminUri $Adminuri
    -Token $token
    -ServerGroupId $HostingGroup.GroupId
    -Name $dbServerName
    -User $dbcredential
    -TotalSpaceMB 5000
    -DisableCertificateValidation

返回页首

确定使用哪些SQL Server数据库

将 SQL Server 或 MySQL 与 Windows Azure Pack 配合使用

问题

需要知道使用 SQL Server 组配置时,Windows Azure Pack 使用哪些SQL Server数据库。

建议

Windows Azure Pack 根据分配给每个数据库的数据库数和空间使用SQL Server数据库。 进一步优化放置的唯一方法是通过计划中定义的SQL Server组。

返回页首

为租户设置SQL Server组

将 SQL Server 或 MySQL 与 Windows Azure Pack 配合使用

问题

想要为租户设置专用SQL Server组。

建议

请参阅博客帖子,将SQL Server构造的一部分专用于特定租户

返回页首

取消注册自定义资源提供程序

问题

安装自定义资源提供程序以Windows Azure Pack 后,需要了解如何在删除其 DLL、程序集和其他文件后将其注销。

建议

可以使用以下脚本,其中$rpName是包含自定义资源提供程序名称的变量。

$rp = Get-MgmtSvcResourceProviderConfiguration -Name $rpName
if ($rp -ne $null)
{
    $rp = Remove-MgmtSvcResourceProviderConfiguration -Name $rpName -InstanceId $rp.InstanceId
} 

返回页首

另请参阅

Windows Azure Pack 故障排除