我们正在尝试定义参数化 IAAS SQL Server 设置。
但是我们需要与默认的 sql_latin01_general_cp1_ci_as 不同的排序规则。
我似乎在 json 模板/参数或 Powershell 中的参数中找不到它。
在为 Azure 设置 IAAS SQL Server 时,是否可以定义不同的排序规则?
我们正在尝试定义参数化 IAAS SQL Server 设置。
但是我们需要与默认的 sql_latin01_general_cp1_ci_as 不同的排序规则。
我似乎在 json 模板/参数或 Powershell 中的参数中找不到它。
在为 Azure 设置 IAAS SQL Server 时,是否可以定义不同的排序规则?
我正在使用 powershell 来获取 Microsoft Azure 环境的使用报告。
要定义开始和结束时间,我使用以下内容:
$reportedStartTime = (Get-Date -day 1 -hour 0 -minute 0 -second 0)
$reportedEndTime = (Get-Date -hour 0 -minute 0 -second 0)
IF($reportedEndTime -eq $reportedStartTime)
{
$reportedStartTime = ($reportedStartTime).AddMonths(-1)
}
然后我运行:
Get-UsageAggregates -ReportedStartTime $reportedStartTime -ReportedEndTime $reportedEndTime
但我收到以下错误:
Get-UsageAggregates :
InvalidInput: The reportedstarttime for daily aggregation granularity
must have the time set to midnight (0:00:00Z).
但是,如果我调用变量$reportedStartTime
并复制粘贴输出:
Get-UsageAggregates -ReportedStartTime "01 September 2016 00:00:00" -ReportedEndTime "01 October 2016 00:00:00"
它有效......
这里发生了什么?
我们的 Azure 门户向我们的一位贡献者显示了一个奇怪的错误。
当他尝试创建一个新的虚拟机时,他可以输入基本设置。
但是,一旦他到达应该定义虚拟机大小的部分,他就会收到消息Unable to display virtual machines sizes
。
这与他尝试创建的虚拟机类型无关。
我已经使用 Azure 创建了一个支持票证,但是与此同时,有没有人以前见过这个错误并且知道如何解决它?
我一直在尝试通过 powershell 推送 Azure NetworkSecurityGroup 规则。
使用控制台我似乎能够创建我想要的东西,但是使用 powershell 我几乎没有成功。
使用以下语法:
Get-AzureRmNetworkSecurityGroup -Name $SecGroup -ResourceGroupName $RGName
| Set-AzureRmNetworkSecurityGroup
| Add-AzureRmNetworkSecurityRuleConfig
-Name 'MSTSC'
-Direction Inbound
-Priority 100
-Access Allow
-SourceAddressPrefix 'INTERNET'
-SourcePortRange '65456'
-DestinationAddressPrefix '*'
-DestinationPortRange '3389'
-Protocol '*'
但是,如果我然后检查门户,或者做
Get-AzureRmNetworkSecurityGroup -Name $SecGroup -ResourceGroupName $RGName
新添加的规则不存在。
但是,如果我使用门户添加规则,并尝试使用我的 powershell 命令创建它,我会收到以下错误:
Add-AzureRmNetworkSecurityRuleConfig :具有指定名称的规则已存在
我错过了一些东西,但是什么?
我目前正在学习如何使用 powershell 资源管理 cmdlet 创建 azure 环境。
经典的工作方式没有问题,我可以使用Add-AzureAccount
它,它可以让我访问我的订阅。
但是,使用新的资源管理器 cmdlet,当我使用时,Add-AzureRmAccount
我会遇到两个错误之一。
当使用存储的凭据$Cred = Get-Credentials
,然后使用登录时,Add-AzureRmAccount -Credential $cred
我收到以下错误:
访问 ws 元数据交换失败。
使用登录提示时。这意味着我只需输入Add-AzureRmAccount
,它就会将我转发到我公司的 SSO 页面。我在其中成功登录。我收到以下错误:
发送请求时出错。
当我尝试在家中使用 cmdlet 时,使用 vpn 连接我之前使用的同一台笔记本电脑。我可以使用Add-AzureRmAccount
并遵循登录提示进行完美连接。使用存储的$cred
entials 仍然失败,并出现元数据交换错误。
我假设存储凭据方法失败,因为它无法在没有交互式提示的情况下重定向到 SSO。
但是我不确定是什么可能导致交互式登录失败,因为我可以清楚地到达 SSO,并且Add-AzureAccount
cmdlet 在同一台机器上工作。
可能导致此问题Add-AzureAccount
的 cmdlet 和cmdlet之间有什么区别?Add-AzureRmAccount
更新:
完整的堆栈跟踪错误是:
Message : An error occurred while sending the request.
Data : {}
InnerException : System.Net.WebException: The remote server returned an error: (407) Proxy Authentication Required.
at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
TargetSite : Void ThrowForNonSuccess(System.Threading.Tasks.Task)
StackTrace : at Microsoft.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at Microsoft.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccess(Task task)
at Microsoft.Azure.Subscriptions.TenantOperationsExtensions.List(ITenantOperations operations)
at Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient.ListAccountTenants(AzureAccount
account, AzureEnvironment environment, SecureString password, ShowDialog promptBehavior)
at Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient.Login(AzureAccount account,
AzureEnvironment environment, String tenantId, String subscriptionId, String subscriptionName,
SecureString password)
at Microsoft.Azure.Commands.Profile.AddAzureRMAccountCommand.ProcessRecord()
at System.Management.Automation.Cmdlet.DoProcessRecord()
at System.Management.Automation.CommandProcessor.ProcessRecord()
HelpLink :
Source : Microsoft.Threading.Tasks
HResult : -2146233088
看起来我的错误与防火墙有关。
我不确定为什么一个命令 ( Add-AzureRmAccount
) 会遇到错误,而旧版本 ( Add-AzureAccount
) 不会。
现在的情况:
在 VMWare esxi5.5 下运行的 Windows server 2008r2。
3TB 驱动器由跨区卷下的 3 个 1TB 虚拟磁盘组成。(D)
驱动器包含大约 1.9TB 的数据。
D 盘承载 30 多个 SQL Server 数据库文件。
其他几个实例托管在不同的驱动器上。
我们想将此 3TB 驱动器移至新服务器。
新服务器将具有相同的操作系统版本和 SQL 服务器版本。
然而,它将拥有更多资源,并且完全专用于这一 SQL 服务器实例。
我们正在考虑的:
将跨区卷移动到其他服务器。
这将涉及从当前服务器分离卷,并将其附加到新服务器上。我们在暂存设置中完成了此操作,但是该设置没有跨区卷,并且有关跨虚拟机移动跨区卷的信息很少。
将跨区卷中的所有内容复制到新的非跨区卷,然后将该磁盘移动到新服务器。
这具有不必移动跨区卷的优点。
但是,复制所有数据需要很长时间,并且意味着更长的维护窗口。
问题:
我们的暂存环境没有跨区磁盘,它只有一个卷(1.99TB,因为暂存只有 1TB 大)。
如果不花费大量时间和资源重新创建当前设置,我无法以相同大小复制移动。
我正在寻找任何一种文档,这些文档表明将跨接磁盘从一个 VM 移动到另一个 VM 将正确地将它们识别为外部磁盘组。
到目前为止,我只找到了这篇文章。
或者更好的是,一种用于跨服务器移动数据库的更清洁的解决方案。
在没有 3TB 磁盘的情况下复制它是否安全,只需在跨区卷中使用 250GBx3 磁盘?或者,如果不增加超过 2TB 的大小(单卷最大大小),就无法测试更大的磁盘是否会出现其他问题。
我正在尝试使用 powershell 设置一个脚本,该脚本每隔一定时间生成 blg 文件。我知道这可以使用 perfmon XML 模板来完成,但是对于这个特定的项目,如果可能的话,我必须使用 powershell 来完成。
我的主要问题是我无法将要使用的性能计数器列表存储在变量中并重用它们。
我尝试使用以下脚本创建要使用的性能计数器列表:
$Counters = @()
$Counters += '\Memory\Available Bytes'
$counters += '\Paging File(*)\% Usage'
$Counters += '\PhysicalDisk(*)\Disk Reads/sec'
$Counters += '\PhysicalDisk(*)\Disk Writes/sec'
$Counters += '\PhysicalDisk(*)\Avg. Disk sec/Read'
$Counters += '\PhysicalDisk(*)\Avg. Disk sec/Write'
$Counters += '\Processor(*)\% Processor Time'
$Counters += '\System\Processor Queue Length'
foreach($counter in $Counters)
{
$string = $string + ", '" + $counter + "'"
$string = $string.TrimStart(",")
}
如果我继续使用 get-counter $string 我收到以下错误:
Get-Counter : The specified counter path could not be interpreted.
然而,当我复制字符串的确切值并使用$string 的 get-counter -counter 值时,它可以正常工作......
有人可以建议我让get-counter使用数组或带有计数器列表的字符串吗?
我在服务器 2012R2 标准上运行的 hyper-v 上安装 2008R2 标准版服务器。每次安装服务器时都会出现以下错误,然后重新启动导致蓝屏。
我在事件查看器中唯一能找到的是:
但这似乎无关。而且我怀疑在完全安装操作系统之前我可以解决它。
我能处理什么?我倾向于认为主机服务器中的内存损坏,但我对 Hyper-V 并不完全熟悉,并且在查看硬件之前想要一些替代方案。