Advertisement
rgman

Get Privileges From MySQL

Sep 29th, 2015
102
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.10 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. helptext () {
  4.     echo "Programa para recuperar los usuarios y los permisos desde una base de datos."
  5.     echo "Uso: $(basename "$0") [-h] [-u DBUSER] [-p DBPASS] [-H DBHOST]"
  6.     echo "    -h        Muestra este texto de ayuda"
  7.     echo "    -H        Servidor desde el cual se extraerán los datos"
  8.     echo "    -u        Nombre de usuario de conexión"
  9.     echo "    -p        Contraseña de conexión"
  10. }
  11.  
  12. HOST="localhost"
  13. USER="root"
  14. PASS=""
  15. HELP=0
  16.  
  17. while getopts :hu:p:H: OP
  18. do
  19.     case $OP in
  20.         H)
  21.             HOST="$OPTARG"
  22.             ;;
  23.         u)
  24.             USER="$OPTARG"
  25.             ;;
  26.         p)
  27.             PASS="$OPTARG"
  28.             ;;
  29.         h)
  30.             HELP=1
  31.             ;;
  32.         *)
  33.             # unknown option
  34.             ;;
  35.     esac
  36. done
  37.  
  38. if [ $HELP == 1 ]
  39. then
  40.     helptext;
  41. else
  42.     mysql -h ${HOST} -u ${USER} -p${PASS} -e "SELECT DISTINCT CONCAT('SHOW GRANTS FOR \`', user, '\`@\`', host, '\`;') AS query FROM mysql.user" --skip-column-names -A | mysql -h ${HOST} -u ${USER} -p${PASS} --skip-column-names -A | sed 's/$/;/g'
  43. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement