= bases de datos
== 3:36 Bases Datos
* mysql:
* mysql_db : añade o elimina BBDD
* mysql_replication : administra replicación
* mysql_user : administra usuarios
* mysql_variables : administra variables globales
* postgresql
* postgres_db : añade o elimina BBDD
* postgres_ext : administra extensiones
* postgres_lang : administra procedimientos almacenados
* postgres_privs : administra privilegios
* postgres_schema : administra esquemas
* postgres_user : administra usuarios
* MongoDB
* mongodb_parameter : gestionar parámetros
* mongodb_user : administrar usuarios
* Influxdb
* influxdb_database: administrar BDDD
* retention_policy: administrar políticas de retención
* Vertica (HPE)
* Miscelanea
* elasticsearch_plugin
* kibana_plugin
* redis
* riak
=== mysql_db
* requiere
* name = nombre BDD
* opcional
* state = { present | absent | dump | import }
* login_host
* login_password
* login_port
* login_user
* login_unix.socket
* encoding
* collation : (idioma) es_ES.UTF8
* target
- name: Instalar libreria requerida
pip: name=pytho_mysql state=latest
- name: crear si no existe la BDD
mysql_db:
name:
state: present
- name: copia de seguridad todas las BDD
mysql_db:
state: dump
name: all # palabra clave
target: /tmp/{{ ansible.hostname }}.sql
=== mysql_user
* requerido
* name = nombre
* opcional
* state = { present | absent }
* password
* encrypted = no / yes
* login_host
* login_password
* login_port
* login_user
* login_unix.socket
* priv = dbtabla:priv1,priv2 <- privilegios
* append_privs = yes / no <- añadir o sustituir
- name: crear usuario y darle permisos
mysql_user:
name:
password:
state: present
priv: ".*:ALL"
=== postgres_db
* requerido
* name = nombreBDD
* opcional
* state = { present | absent }
* login_host
* login_password
* port
* login_user
* login_unix.socket
* encoding
* lc_collate
* template
- name: instalarlibrería requerida
pip: name=pstcopg2 state=latest
- name: crear si no existe
postgresql_db:
name:
state: present
encoding: utf-8
become_user: postgres
=== postgres_user
* requerido
* name = usuaroi
* opcionales
* state = { present | absent }
* login_host
* login_password
* port = 5432
* login_user
* login_unix.socket
* password
* encrypted = yes / no
* priv = tabla:privilegio
* role_attr_flags
* (NO)SUPERUSER
* (NO)CREATEROL
* (NO)CREATEUSER
* (NO)CREATEDB
* (NO)INHERIT
* (NO)LOGIN
* (NO)REPLICATION
* db
- name: crear si no existe
postgresql_user:
db:
name:
state: present
password:
priv: ALL
=== mongodb_user
* requerido
* name = usuario
* database = nombre
* opcional
* state = { present | absent }
* password = contraseña usuario
* login_host
* login_password
* login_port = 27017
* login_user
* roles
* READWRITE
* read
* dbAdmin
* userAdmin
* clusterAdmin
* ...
- name: instalar librería requerida
pip: name=pymongo state=latest
- name: crear usuario
mongodb_user:
database: admin
name:
password:
state: present