你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何在 SMB Azure 文件共享之间迁移文件。 执行此操作的一个常见原因是,如果需要从标准文件共享迁移到高级文件共享,这样做可以提高应用程序工作负载的性能。
警告
如果使用 Azure 文件同步,则迁移过程与本文中所述不同。 请参阅使用 Azure 文件同步时,将文件从一个 Azure 文件共享迁移到另一个 Azure 文件共享。
适用于
| 文件共享类型 | SMB | NFS | 
|---|---|---|
| 标准文件共享 (GPv2)、LRS/ZRS |  |  | 
| 标准文件共享 (GPv2)、GRS/GZRS |  |  | 
| 高级文件共享 (FileStorage)、LRS/ZRS |  |  | 
使用 Robocopy 进行迁移
按照以下步骤使用 Robocopy 进行迁移,Robocopy 是内置于 Windows 中的命令行文件复制实用工具。
- 将 Windows 虚拟机 (VM) 部署到 Azure 中与源文件共享相同的区域中。 将数据和网络保留在 Azure 中会很快,且避免产生出站数据传输费用。 为了获得最佳性能,建议使用内存至少为 56 GiB 的多核 VM 类型,例如 Standard_DS5_v2。 
- 将源和目标文件共享装载到 VM。 请务必使用存储帐户密钥装载,以确保 VM 有权访问所有文件。 请勿使用域标识。 
- 在 Windows 命令提示符处运行此命令。 (可选)可以将日志记录功能的标志作为最佳做法(/NP、/NFL、/NDL、/UNILOG)。 - robocopy <source> <target> /MIR /COPYALL /MT:16 /R:2 /W:1 /B /IT /DCOPY:DAT- 如果源共享装载为 s:\,目标为 t:\,则命令如下所示: - robocopy s:\ t:\ /MIR /COPYALL /MT:16 /R:2 /W:1 /B /IT /DCOPY:DAT- 可以在源仍处于联机状态时运行命令,但请注意,任何 I/O 都将针对现有共享的限制运行。 
- 初始运行完成后,断开应用程序与现有共享的连接,然后再次运行同一 robocopy 命令。 这会复制自初始运行以来发生的所有更改,跳过已复制的任何文件数据。 
- 命令第二次完成后,可以将应用程序重定向到新共享。