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
Influxdb
Vertica (HPE)
Miscelanea
elasticsearch_plugin
kibana_plugin
redis
riak
mysql_db
- name: Instalar libreria requerida
pip: name=pytho_mysql state=latest
- name: crear si no existe la BDD
mysql_db:
name: <bdd>
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
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: <nombre>
password: <password>
state: present
priv: "<bdd>.*:ALL"
postgres_db
- name: instalarlibrería requerida
pip: name=pstcopg2 state=latest
- name: crear si no existe
postgresql_db:
name: <nombre_bdd>
state: present
encoding: utf-8
become_user: postgres
postgres_user
- name: crear si no existe
postgresql_user:
db: <base de datos>
name: <usuario>
state: present
password: <password>
priv: ALL
mongodb_user
requerido
name = usuario
database = nombre
opcional
- name: instalar librería requerida
pip: name=pymongo state=latest
- name: crear usuario
mongodb_user:
database: admin
name: <usuario>
password: <password>
state: present