MySQL Server Database Discovery (Linux)

Microsoft.MySQLServer.Database.Discovery.Unix (Discovery)

Discovers all Databases monitoring user has access to (for Linux).

Knowledge Base article:

Summary

This discovery rule discovers all MySQL Databases in a managed MySQL Server that the MySQL Monitoring user has access to.

Element properties:

TargetMicrosoft.MySQLServer.ManagedServer.Unix
EnabledTrue
RemotableFalse

Object Discovery Details:

Discovered Classes and their attribuets:

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Unix.WSMan.TimedEnumerate.Filtered.ContainSubstring.DiscoveryData Default

Source Code:

<Discovery ID="Microsoft.MySQLServer.Database.Discovery.Unix" Target="Microsoft.MySQLServer.ManagedServer.Unix" Enabled="true" Remotable="true">
<Category>Discovery</Category>
<DiscoveryTypes>
<DiscoveryClass TypeID="Microsoft.MySQLServer.Database.Unix"/>
</DiscoveryTypes>
<DataSource ID="DS" TypeID="Unix!Microsoft.Unix.WSMan.TimedEnumerate.Filtered.ContainSubstring.DiscoveryData">
<TargetSystem>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/NetworkName$</TargetSystem>
<Uri>http://schemas.microsoft.com/wbem/wscim/1/cim-schema/2/MySQL_Server_Database?__cimnamespace=root/mysql</Uri>
<Filter/>
<SplitItems>true</SplitItems>
<Interval>14400</Interval>
<SyncTime/>
<FilterProperty>/DataItem/WsManData/*[local-name(.)='MySQL_Server_Database']/*[local-name(.)='InstanceID']</FilterProperty>
<FilterValue>$Target/Property[Type="Microsoft.MySQLServer.Installation"]/InstanceID$</FilterValue>
<ClassId>$MPElement[Name="Microsoft.MySQLServer.Database.Unix"]$</ClassId>
<InstanceSettings>
<Settings>
<Setting>
<Name>$MPElement[Name="Unix!Microsoft.Unix.Computer"]/PrincipalName$</Name>
<Value>$Target/Host/Property[Type="Unix!Microsoft.Unix.Computer"]/PrincipalName$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Database"]/InstanceID$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server_Database']/*[local-name(.)='InstanceID']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Installation"]/DataDirectory$</Name>
<Value>$Target/Property[Type="Microsoft.MySQLServer.Installation"]/DataDirectory$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="Microsoft.MySQLServer.Database"]/DatabaseName$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server_Database']/*[local-name(.)='DatabaseName']$</Value>
</Setting>
<Setting>
<Name>$MPElement[Name="System!System.Entity"]/DisplayName$</Name>
<Value>$Data/WsManData/*[local-name(.)='MySQL_Server_Database']/*[local-name(.)='InstanceID']$ </Value>
</Setting>
</Settings>
</InstanceSettings>
</DataSource>
</Discovery>