Module mysql — Inmanta 2017.4dev documentation

# Module mysql

> - License: Apache 2.0
> - Version: 0.5.2
> - Author: Inmanta <code@inmanta.com>
> - This module requires compiler version 2017.2 or higher
> - Upstream project: https://github.com/inmanta/mysql.git

## Entities

entity `mysql::DBMS`

  Parents: `std::Entity`

  A DB management system (a service on a machina, DBaaS, …)

  attribute string `hostref`

    reference to host, e.g. ip or hostname

  attribute ip::port `port`=3306
  relation mysql::Database `databases` [0:*]

    other end: `mysql::Database.server [1]`

entity `mysql::Database`

  Parents: `std::Entity`

  attribute string `collation`='utf8-ci'
  attribute string `password`
  attribute string `name`
  attribute string `user`
  attribute string `encoding`='utf8'
  relation mysql::DBMS `server` [1]

    other end: `mysql::DBMS.databases [0:*]`

  The following implementations are defined for this entity:

  > - `mysql::dBDependsOnServer`

  The following implements statements select implementations for this entity:

  > - `mysql::dBDependsOnServer`

entity `mysql::ManagedMysql`

  Parents: `mysql::DBMS`

  attribute string `password`
  attribute string `user`
  relation ip::Host `agenthost` [1]

  The following implementations are defined for this entity:

  > - `mysql::manageManaged`

  The following implements statements select implementations for this entity:

  > - `mysql::manageManaged`

entity `mysql::Server`

  Parents: `ip::services::Server`, `mysql::DBMS`

  Mysql server configuration

  The following implementations are defined for this entity:

  > - `mysql::ports`
  > - `mysql::mysqlRedhat`
  > - `mysql::mysqlMariaDB`
  > - `mysql::ubuntuMysql`

  The following implements statements select implementations for this entity:

  > - `mysql::ports`
  > - `mysql::mysqlRedhat` constraint `(std::familyof(host.os,'rhel') and (host.os.version <= 6))`
  > - `mysql::mysqlMariaDB` constraint `((std::familyof(host.os,'rhel') and (host.os.version >= 7)) or std::familyof(host.os,'fedora'))`
  > - `mysql::ubuntuMysql` constraint `std::familyof(host.os,'ubuntu')`

## Implementations

implementation `mysql::dBDependsOnServer`

implementation `mysql::manageManaged`

implementation `mysql::mysqlMariaDB`

implementation `mysql::mysqlRedhat`

implementation `mysql::ports`

implementation `mysql::ubuntuMysql`