电子邮件修复

如何使用get - mailboxdatabasecmdlet ?

简介:Get-MailboxDatabase是用于从Exchange Server检索邮箱数据库信息和对象的几个Exchange Server PowerShell cmdlet之一。在本文中,我们详细讨论了cmdlet,以及如何有效地使用它来管理和管理数据库、发现问题并修复它们。

免费下载
免费下载

微软在Exchange 2010 SP1发行版中引入了Exchange Server PowerShell (Exchange Management Shell)。它是一个功能强大的基于命令行的实用程序,使管理员能够执行各种管理任务。使用Exchange Management Shell (EMS) cmdlet,管理员可以分析和管理邮箱、数据库和Exchange Server的其他各个方面。

您可以使用Get-MailboxDatabase cmdlet来收集有关组织中特定服务器或多个服务器上的数据库的信息。您还可以使用cmdlet从组织中的特定数据库检索信息,这些信息可以帮助您分析数据库、找出问题并相应地修复它们。

在本文中,您将了解如何以及何时在本地Exchange Server中使用Get-MailboxDatabase cmdlet,使用各种开关和参数检索所需的信息并分析邮箱数据库。

在Exchange Server中使用Get-MailboxDatabase Cmdlet

要使用Get-MailboxDatabaseCmdlet,用户必须具有所需的角色和权限。要了解并分配所需的角色和权限,请遵循以下步骤:

  • 开放Exchange Management Shell并执行以下命令,列出运行所需的角色和权限Get-MailboxDatabase

$Perms = Get-ManagementRole -Cmdlet Get-MailboxDatabase

$Perms | foreach {Get-ManagementRoleAssignment -Role $_。Name - delegation $false | Format-Table -Auto Role, roleassigntype, roleassignename}

一旦分配了角色和权限,就可以在Exchange Management Shell中不带任何参数地运行Get-MailboxDatabase cmdlet。但是,运行不带参数的cmdlet将显示有关Exchange Server或组织中所有邮箱数据库的信息。

若要检索Exchange组织中特定服务器上所有数据库的相关信息,必须使用-server参数并指定邮箱服务器名称。

例如,

Get-MailboxDatabase -server Exchange19 | Format-List

get - mailbox数据库服务器cmdlet

Get-MailboxDatabase -server Exchange19 | Format-list Name,Mounted,GUID,DistinguishedName

获取邮箱数据库服务器exchange19格式列表名称,已挂载guid,可区分名称

类似地,您可以使用身份参数获取有关特定数据库的详细或特定信息。例如,

Get-MailboxDatabase -Identity MBXDB01 | Format-List

get-MailboxDatabase身份

Get-MailboxDatabase -Identity MBXDB01 | Format-Table Name,GUID,DistinguishedName

获取邮箱数据库标识名称- guid专有名称

Get-MailboxDatabase -Identity MBXDB01 | Format-list Name,GUID,DistinguishedName

名称guid专有名称获取邮箱数据库标识格式列表

使用地位切换时,可以收集特定服务器上与数据库相关的全部或特定信息、数据库根目录下的可用空闲空间以及有关备份进度、挂载状态和在线维护进度的信息。

例如,

Get-MailboxDatabase -Status | Format-list

获取邮箱数据库状态格式列表

Get-MailboxDatabase -Status |名称、服务器、BackupInProgress、Mounted、OnlineMaintenanceInProgress

获取邮箱数据库名称服务器备份

同样,你可以使用各种参数来获取具体的细节或值,例如:

  • CircularLoggingEnabled
  • EdbFilePath
  • DatabaseCopies
  • MountedOnServer
  • DeletedItemRetention
  • AvailabileNewMailboxSpace
  • LogFilePrefix
  • IsMailboxDatabase
  • IsPublicFolderDatabase
  • 身份
  • IndexEnabled
  • IssueWarningQuota

还有更多。

何时使用get - mailboxdatabasecmdlet ?

Get-MailboxDatabaseCmdlet用于检查数据库状态和信息。通过执行命令接收到的信息允许您检查数据库是否已挂载并正常工作,或者是否存在问题。,然后可以采取适当的操作来修改、修复或管理数据库交易所管理中心(EAC)或EMS中的其他PowerShell cmlet。

中已卸载的数据库进行修复肮脏的关闭状态如果数据库无法挂载,则可以使用可扩展存储引擎实用程序(EseUtil)修复损坏的数据库,使其处于干净的关机或挂载状态,然后使用EAC或Mount-Databasecmdlet

你可以使用Eseutil / r运行命令疲弱的经济复苏,它重播不一致或损坏的数据库上的事务日志。这会将未提交的更改提交到数据库,并可能将数据库带到干净的关闭状态。要验证数据库状态,可以使用EseUtil / mh databasepathwithname。教育局/ databasepathwithname.edb在Exchange服务器上的命令提示符或EMS中使用命令。

例如,

eseutil /mh C:\mbx01\mbx01.edb

Eseutil mh命令脏关机

如果数据库仍处于脏关闭状态,则可以继续执行'硬恢复'使用EseUtil / p命令。但是,这可能会导致数据丢失。因此,请自行承担风险。

硬恢复仍然是警告

若要避免数据丢失并以完全完整性从损坏的数据库恢复所有邮箱,可以使用Exchange恢复软件,如恒星修复交换。该软件可以帮助您修复严重损坏或损坏的数据库,并将邮箱保存为单独的pst。您也可以直接将邮箱导出到Office 365租户或live Exchange Server。

一旦修理和安装,使用Get-MailboxDatabase -Identity databasename | fl /databasename命令,查看数据库详细信息。要查看具体信息,还可以使用以下命令:

Get-MailboxDatabase -Status |邮箱名,服务器,已挂载

检查数据库挂载状态

此外,建议将邮箱从修复后的数据库移动到新的或现有的健康数据库,并避免使用修复后的数据库。

结论

在本文中,您学习了如何使用Get-MailboxDatabase用于检索与Exchange服务器上的数据库或数据库相关的信息的PowerShell cmdlet。cmdlet可以帮助管理员分析数据库状态,发现问题,并采取适当的措施来解决各种问题。可以使用cmdlet检索与数据库相关的详细信息或通过使用各种参数检索特定信息。此外,如果需要修复数据库,可以使用EseUtil命令或Exchange恢复软件。该软件可以从损坏的数据库中提取所有邮箱,并直接将它们恢复到实时Exchange服务器上的健康数据库。

进步
81% 很多人觉得这篇文章很有帮助