我正在尝试按照以下文章在 Azure VM(具有 SSD)上设置 SQL Server:
具体来说,其中一条建议指出:
避免使用 Azure 数据磁盘缓存选项(缓存策略 = 无)。
我想对临时磁盘执行此操作。为了做到这一点,我似乎需要使用 PowerShell cmdletSet-AzureDataDisk
。其中一个参数是磁盘的 LUN。要获取 LUN,似乎我需要使用diskpart
。
但是,在我新配置的 VM 上,diskpart
显示临时驱动器和系统驱动器具有相同的 LUN ID(#0)。以下是diskpart
系统磁盘的显示内容:
DISKPART> select disk 0
Disk 0 is now the selected disk.
DISKPART> detail disk
Virtual HD ATA Device
Disk ID: 8C35C300
Type : ATA
Status : Online
Path : 0
Target : 0
LUN ID : 0
Location Path : ACPI(_SB_)#ACPI(PCI0)#ACPI(IDE0)#ACPI(CHN0)#ATA(C00T00L00)
Current Read-only State : No
Read-only : No
Boot Disk : Yes
Pagefile Disk : No
Hibernation File Disk : No
Crashdump Disk : No
Clustered Disk : No
以下是临时磁盘显示的内容:
DISKPART> select disk 1
Disk 1 is now the selected disk.
DISKPART> detail disk
Virtual HD ATA Device
Disk ID: F26B3A20
Type : ATA
Status : Online
Path : 0
Target : 1
LUN ID : 0
Location Path : ACPI(_SB_)#ACPI(PCI0)#ACPI(IDE0)#ACPI(CHN0)#ATA(C00T01L00)
Current Read-only State : No
Read-only : No
Boot Disk : No
Pagefile Disk : Yes
Hibernation File Disk : No
Crashdump Disk : Yes
Clustered Disk : No
我的问题是:
- 我走的路正确吗?
- 我可以只为系统磁盘和临时磁盘设置缓存策略吗?这会有什么影响?
- 如果不是,我该如何将临时磁盘放置在不同的 LUN 上?
答案1
它们可能具有相同的 LUN ID(0),但它们具有不同的通道 ID(0 和 1),即
C00T00L00
和
C00T01L00
这是完全可以接受的,事实上,即使在 FC/FCoE/iSCSI 环境中,只要完整路径不同,您也可以拥有相同的 LUN 号。
答案2
我走的路对吗?我可以只为系统磁盘和临时磁盘设置缓存策略吗?这有什么影响?如果没有,我该如何让临时磁盘位于不同的 LUN 上?
您无法将系统盘的缓存策略设置为无。您所能做的就是从只读切换到读写,反之亦然。
默认情况下,临时磁盘(D:卷)上的缓存已禁用。您无需执行任何操作。
但是,对于要用于 SQL Server 数据的附加数据磁盘,请确保在创建它时也禁用缓存。