# -*- coding: utf-8 -*- # vim: ft=yaml --- mysql: global: client-server: default_character_set: utf8 clients: mysql: default_character_set: utf8 mysqldump: default_character_set: utf8 library: client: default_character_set: utf8 server: # Use this account for database admin (defaults to root) root_user: 'admin' # root_password: '' - to have root@localhost without password root_password: 'somepass' root_password_hash: '*13883BDDBE566ECECC0501CDE9B293303116521A' user: mysql # If you only manage the dbs and users and the server is on # another host host: 123.123.123.123 # my.cnf sections changes mysqld: # you can use either underscore or hyphen in param names bind-address: 0.0.0.0 log_bin: /var/log/mysql/mysql-bin.log datadir: /var/lib/mysql port: 3307 binlog_do_db: foo auto_increment_increment: 5 binlog-ignore-db: - mysql - sys - information_schema - performance_schema explicit_defaults_for_timestamp: 1 # strict ansi supports sane defaults mysql: # my.cnf param that not require value no-auto-rehash: noarg_present salt_user: salt_user_name: 'salt' salt_user_password: 'someotherpass' grants: - 'all privileges' # Manage config config: file: ~/.my.cnf sections: client: port: 33306 socket: /var/lib/mysql-socket/mysql.sock mysqld_safe: plugin-dir: '~/mysql/plugins' mysqld: user: myself port: 33306 datadir: ~/mysql/datadir apparmor: dir: /etc/apparmor.d/local file: usr.sbin.mysqld # Manage databases database: # Simple definition using default charset and collate - foo # Detailed definition - name: bar character_set: utf8 collate: utf8_general_ci # Delete DB - name: obsolete_db present: false schema: foo: load: true source: salt://{{ tpldir }}/files/foo.schema bar: load: false baz: load: true source: salt://{{ tpldir }}/files/baz.schema.tmpl template: jinja qux: load: true source: salt://{{ tpldir }}/files/qux.schema.tmpl template: jinja context: encabulator: Turbo girdlespring: differential quux: load: true source: salt://{{ tpldir }}/files/qux.schema.tmpl template: jinja context: encabulator: Retro girdlespring: integral # Manage users # you can get pillar for existing server using scripts/import_users.py script user: frank: password: 'somepass' host: localhost databases: - database: foo grants: ['select', 'insert', 'update'] escape: true - database: bar grants: ['all privileges'] bob: password_hash: '*6C8989366EAF75BB670AD8EA7A7FC1176A95CEF4' host: '%' # Any host ssl: true ssl-X509: true ssl-SUBJECT: Subject ssl-ISSUER: Name ssl-CIPHER: Cipher databases: # https://github.com/saltstack/salt/issues/41178 # If you want to refer to databases using wildcards, turn off escape so # the renderer does not escape them, enclose the string in '`' and # use two '%' - database: '`foo\_%%`' grants: ['all privileges'] grant_option: true escape: false - database: bar table: foobar grants: ['select', 'insert', 'update', 'delete'] # User 'alice' will be allowed to connect to the server without password # as long as she has access to the unix socket. # This option forces allow_passwordless to be set to True alice: host: 'localhost' unix_socket: true nopassuser: password: ~ host: localhost databases: [] application: password: 'somepass' mine_hosts: target: "G@role:database and *.example.com" function: "network.get_hostname" expr_form: compound databases: - database: foo grants: ['select', 'insert', 'update'] # Remove a user obsoleteuser: host: localhost # defaults to true present: false # Override any names defined in map.jinja # serverpkg: mysql-server # clientpkg: mysql-client # service: mysql # pythonpkg: python-mysqldb # devpkg: mysql-devel # debconf_utils: debconf-utils # Install MySQL headers dev: # Install dev package - defaults to false install: false macos: products: community_server: enabled: true # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-8.0.11-macos10.13-x86_64.dmg sum: 'md5=602a84390ecf3d82025b1d99fc594124' workbench: enabled: true # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-workbench-community-8.0.11-rc-macos-x86_64.dmg sum: 'md5=37c5ae5bd75a4e1804ae6e0127d68611' cluster: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-cluster-gpl-7.6.6-macos10.13-x86_64.dmg sum: 'md5=0df975908e7d8e4e8c1003d95edf4721' router: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-router-8.0.11-macos10.13-x86-64bit.dmg sum: 'md5=8dd536f2f223933ecbfb8b19e54ee2f6' utilities: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-utilities-1.6.5-macos10.12.dmg sum: 'md5=4c8e75bb217b8293dcdeb915b649c2c8' shell: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-shell-8.0.11-macos10.13-x86-64bit.dmg sum: 'md5=43db4f0fc39f88c1d7be4a4f52cec363' proxy: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-proxy-0.8.5-osx10.7-x86-32bit.tar.gz sum: 'md5=107df22412aa8c483d2021e1af24ee22' connector: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-connector-nodejs-8.0.11.tar.gz sum: 'md5=dece7fe5607918ba68499ef07c31508d' forvisualstudio: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-for-visualstudio-2.0.4-src.zip sum: 'md5=fcf39316505ee2921e31a431eae77a9c' forexcel: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-for-excel-1.3.6-src.zip sum: 'md5=2cc8b65eb72a1b07a6e4e2665e2a29e3' notifier: enabled: false # default # yamllint disable-line rule:line-length url: https://downloads.mysql.com/archives/get/file/mysql-notifier-1.1.6-src.zip sum: 'md5=349f1994681763fd6626a8ddf6be5363'