所以我有一个应该备份数据库并将其压缩成zip文件的脚本。我正在使用7Zip并获得以下内容:
Error: "Can't Allocate Required Memory"
当我尝试压缩备份时。备份大约是2.3GB,当我查看Task Manger时,我试图运行脚本的远程机器有3GB的可用内存。此外,当我在远程计算机上打开Powershell并运行代码
时set-alias sz "$env:C:\Temp\7-Zip\7z.exe"
sz a -t7z $zipfile $backup
这样就可以了。
这是我的代码:
Invoke-Command -Session $s -ScriptBlock {set-alias sz "$env:C:\Temp\7-Zip\7z.exe"}
Write-Host "Compressing Database and creating Zip file...."
Invoke-Command -Session $s -ScriptBlock {sz a -t7z $zipfile $backup}
Write-Host "Completed Compressing Database and creating Zip file!"
我查看了a 7Zip forum post,并试图减少字典大小,但它仍然无法正常工作。任何有关如何解决此问题的想法或建议将不胜感激。
编辑:远程机器的Powershell版本是2.0,是64位。
答案 0 :(得分:2)
如果您使用PowerShell远程处理来执行远程计算机上的脚本,请阅读本文HERE
正如您将看到的那样,远程机器wsman服务对通过psremoting运行的脚本可以消耗多少资源有一些可配置的限制。
要在更改之前消除任何wsman限制,您可以尝试在本地和交互式运行脚本,看看它是否有效。如果您有权访问该机器。
答案 1 :(得分:0)
这可能是因为您运行的是32位版本的Powershell。要检查,请尝试:
[System.IntrPtr]::Size
如果它是4 - 你在32位Powershell上。