Sorry Evan, but just to correct you a little bit. ;-) but you need <ServerName>\<SG> in get-mailboxdatabase and –organizationalUnit in New-DynamicDistributionGroup
To create a DDL for each DB in an SG
get-mailboxdatabase -StorageGroup <ServerName>\<SG> | % { New-DynamicDistributionGroup "DDG-$($_.Name)" –organizationalUnit <domain>/<OU> -RecipientFilter "Database -eq '$($_.Identity.DistinguishedName)'" }
So now the BIG issue is how to the a list of the members!
I blogged this ages ago: http://blogs.flaphead.dns2go.com/archive/2007/05/10/exchange-2007-dynamic-distributions-groups.aspx
But you could do this and create a DDL for each DB on the server,as you would (in theory) have a 1:1 ratio for SG:DB
#Create DDL for a Server$Server = "SUKMSDMBX03"$DDLalias = "DDL-$Server" $DDLName = "zz $server"$DDLOU = "exchorg.local/MyOU/pf"New-DynamicDistributionGroup -alias "$DDLalias" -name "$DDLName" -recipientfilter {ServerName -eq $Server} –organizationalUnit "$DDLou"$ddl = Get-DynamicDistributionGroup "$DDLName"get-recipient -filter $ddl.recipientfilter#Create DDL for Exchange SG on that Server$MBX = Get-MailboxDatabase -Server $serverforeach ($db in $mbx){ $dbPath = $db.DistinguishedName.ToString() $dbDDLName = $db.name $dbDDLName = "BW MS " + $dbDDLName New-DynamicDistributionGroup $dbDDLName –organizationalUnit "$DDLou" -RecipientFilter {database -eq $dbpath} }
Best Features in Exchange 2007 (Part 2 of 2) How to synchronize Google and Microsoft Outlook calendars