MySQL: DB und Benutzer anlegen

Script für MySQL: Datenbank und Benutzer mit Passwort anlegen

Mehrfach braucht man für verschiedene Sachen eine getrennte MySQL-Datenbank mit eigenem Benutzer und mit Passwort. Dieses Script erleichtert das ganze.

#!/bin/sh

if [ "$1" != "" -a "$2" != "" -a "$3" != "" ]; then

mysql << __EOF__
create database $1 CHARACTER SET utf8;
quit
__EOF__

mysql << __EOF__
use mysql;
insert into user (User, Host, Password) values ('$2', 'localhost', PASSWORD('$3'));
flush privileges;
__EOF__

mysql << __EOF__
grant all on $1.* to $2@localhost;
flush privileges;
quit
__EOF__

else

echo "No parameters given, exiting..."
echo ""
echo "Usage: $0 <database> <username> <pass>"
exit 1

fi

Voraussetzung dazu ist, dass man es vom Benutzer ‘root’ aufruft und in roots Home folgende Datei existiert

.my.cnf

sowie deren Inhalt:

[mysql]
host = localhost
user = root
pass = geheimespasswort

Dann ruft man es einfach folgendermassen auf:

./mysql-add-user-with-db dbtest1 usertest1 blahblahgeheim

und schon kann man es verwenden.

Leave a Reply

Your email address will not be published. Required fields are marked *