title: Need to find errors in this shellscript to register a user for database
body: <p>First of all I would like to say a big hello here as a freshly registered user!
  OK, as the title already says, I need to find the errors in this shellscript for debian that is supposed to register new users to a mysql database. The code in this script may be interesting for others, too, so everybody reading this thread may benefit from the solution in the end. The comments are in Spanish, so I hope this won't be too inconvinient. But if required, I can provide a translation of the comments later.</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>#!/bin/bash
  # Este script crea una base de datos, y un usuario con permisos para operar en ella.
  # Defaults
  DB_ROOT=""
  DB_ROOT_PASS=""
  DB_NAME=""
  DB_USER=""
  DB_PASS=""
   
  # Recogemos el input del usuario
  read -e -p " + Usuario root del servidor mysql: " DB_ROOT
  read -e -s -p " + Contraseña root para el servidor mysql: " DB_ROOT_PASS; echo
  read -e -p " + Nombre de la base de datos (sin espacios ni caracteres especiales): " DB_NAME
  read -e -p " + Nombre del nuevo usuario mysql (o uno ya existente): " DB_USER
  read -e -s -p " + Contraseña del nuevo usuario: " DB_PASS;
  echo 
  echo
  # Creamos el nuevo usuario sql
  mysql -u ${DB_ROOT} -p${DB_ROOT_PASS} -e "CREATE USER '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}'; GRANT USAGE ON * . * TO '${DB_USER}'@'localhost' IDENTIFIED BY '${DB_PASS}';"
   
  # Comprobamos errores
  if [ $? == 0 ]; then
          echo " El usuario ${DB_USER} se ha creado con éxito."
   
          # Creamos la nueva base de datos
          mysql -u ${DB_ROOT} -p${DB_ROOT_PASS} -e "CREATE DATABASE IF NOT EXISTS ${DB_NAME} DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; GRANT ALL PRIVILEGES ON ${DB_NAME} . * TO '${DB_USER}'@'localhost';"
   
          # Comprobamos errores
          if [ $? == 0 ]; then
                  echo " La base de datos ${DB_NAME} se ha creado con éxito."
                  echo " El usuario ${DB_USER} tiene permisos sobre la base de datos ${DB_NAME}."
          else
                  mysql -u ${DB_ROOT} -p${DB_ROOT_PASS} -e "DROP USER '${DB_USER}'@'localhost';"
                  exit
          fi
   
  else
          echo " Si mysql devuelve ERROR 1396 probablemente signifique que el usuario que intentas crear ya existe."
          echo " Prueba otro nombre de usuario."
          exit
  fi</code></pre>
  </div>
  </div>
  </p>