Cria vários usuários e bancos de dados mysql

3

Usando o mysql 5.5 no Ubuntu 12.04, qual é a maneira mais fácil de criar 30 novos usuários com seu próprio banco de dados?

Eu sei como usar o comando create user

    
por mortona42 18.06.2012 / 23:02

2 respostas

4

Script em bash, provavelmente. Pegue uma lista de usuários e faça algo como o seguinte (você precisará modificar isso intensamente):

for line in $ (cat users.txt) do
   mysql < create database $line;
   mysql < create user $line@localhost identified by defaultpassword;
   mysql < grant all privileges on $line to $line@'localhost;
done
    
por 18.06.2012 / 23:13
0
#!/bin/bash
UNAMEBASE="drupal"
# number of users to create
COUNT=40
i=1
BTICK='''
SQL=''
echo "Database  User            Password" > ./drupal_training_users.txt
until [ $i -gt $COUNT ]; do
        UNAME="$UNAMEBASE$i"
        UDB="drupal_$i"
        UPASS=$(makepasswd --char=8)
        echo "$UDB      $UNAME  $UPASS" >> ./drupal_training_users.txt
        Q1="CREATE DATABASE IF NOT EXISTS $UDB;"
        Q2="GRANT ALL ON ${BTICK}$UDB${BTICK}.* TO '$UNAME'@'localhost' IDENTIFIED BY '$UPASS';"
        SQL="$SQL${Q1}${Q2}"
        let i=i+1
done

SQL="$SQL FLUSH PRIVILEGES;"
mysql -u root -p -e "$SQL"
    
por 19.06.2012 / 18:59

Tags