sql-server-2008-r2 - 如何通过 Powershell 删除 Msmq 消息配额和日志配额?
问题描述
我正在尝试通过 Powershell 脚本删除/取消选中 2008 R2 中的 Msmq 消息和日志配额限制。
我的机器上运行了以下脚本(Windows 10)。但它根本不适用于我们的任何服务器(它们是 2008 R2 服务器)。它也没有显示任何错误。
#Set the value for unchecked (hex or decima)
Set-ItemProperty -Path HKLM:\Software\Microsoft\MSMQ\Parameters\MachineCache -Name MachineQuota -Value 4294967295
Set-ItemProperty -Path HKLM:\Software\Microsoft\MSMQ\Parameters\MachineCache -Name MachineJournalQuota -Value 4294967295
#IMP-Restart the MSMQ services for changes to take effect
Get-Service MSMQ | Restart-Service -Force
我尝试使用 Regedit 工具手动更改注册表中的值。但是每当我重新启动 MSMQ(消息队列)服务时,它总是将其更改回原始值 '1048576'
我尝试执行 Octopus 部署,它使用“本地系统帐户”运行脚本,但仍然没有运气,它没有删除存储限制并且没有显示错误。
您是否必须是管理员或最高角色才能删除它?
您能否建议我如何通过 Powershell 消除该限制?
解决方案
我可以毫无问题地通过计算机管理手动设置 MachineQuota 和 MachineJournalQuota,并且重新启动 MSMQ 使它们保持不变。
如果您收到“拒绝访问”,请检查 MachineCache 密钥的权限。在我的 Windows 10 机器上,系统、管理员和 MSMQ 拥有完全控制权。因此,在本地系统帐户下运行脚本应该可以工作。也许由于某种原因您的权限不同。
推荐阅读
- html - 指向网络服务器加载 .html 页面而不是子目录索引
- php - jQuery成功没有在codeigniter中显示结果
- elasticsearch - 用于从文档中获取准确结果的 ElasticSearch 查询
- python - 如何为多面 xarray 图设置单个标题?
- javascript - JavaScript 破坏性映射函数
- postgresql - Prisma 如何查看数据库
- makefile - make: *** 没有指定目标,也没有找到 makefile。停止
- jquery - 在剑道网格中 - 编辑选项如何隐藏/显示保存按钮如果没有更改或一些更改然后显示
- ios - 如何检测 mapbox 地图中缩放级别的变化?
- sql - SQL Server FOR DELETE 触发器不适用于具有级联键的内部联接