Backup de las bases de datos

#! /bin/bash
 
TIMESTAMP=$(date +"%F")
BACKUP_DIR="/Backup/BD/$TIMESTAMP"
MYSQL_USER="usuario"
MYSQL=/usr/bin/mysql
MYSQL_PASSWORD="clave"
MYSQLDUMP=/usr/bin/mysqldump
 
mkdir -p "$BACKUP_DIR"
 
databases=`$MYSQL --user=$MYSQL_USER -p$MYSQL_PASSWORD -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema)"`
 
for db in $databases; do
  $MYSQLDUMP --force --opt --user=$MYSQL_USER -p$MYSQL_PASSWORD --databases $db --skip-lock-tables > "$BACKUP_DIR/$db.sql"
done

Crear base de datos y usuario

Crear una base de datos:

create database nombre

Crear un usuario:

create user 'nombre'@'localhost' identified by 'clave'

Dar privilegios al usuario creado sobre la base de datos;

grant all privileges on nombrebasededatos.* to nombreusuario@localhost identified by 'clave'