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__
CREATE USER $2@localhost IDENTIFIED BY '$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
password = geheim
Andere Möglichkeit ist, dass der Benutzer root einfach ohne alles Zugriff hat. Man muss also “mysql” ohne irgendwas aufrufen können und sich zur MySQLd verbinden.
Dann ruft man es einfach folgendermassen auf:
./mysql-add-user-with-db dbtest1 usertest1 blahblahgeheim
und schon kann man es verwenden.
Last updated on 2024:10:12 at 23:55 UTC