← Back to team overview

sslug-teknik team mailing list archive

Re: Automatisk fremstilling af MySQL Databaser som root i BASH

 

2011/4/17 Thomas Rosendal Jensen <tarj1974@xxxxxxxxxxx>:
> Martin Møller Skarbiniks Pedersen wrote:

>> Du skal angive mysql brugeren roots password med -p
>> P.t. angiver du jo bare et tilfældigt password.

> Det må være sådan du mener:
>
>  mysqladmin create ${UNDERSCORENAME} -uroot
> -p"MySQL_administratorens_kodeord"
>
> Jeg har dog brug for at have en brugers konto tilknyttet mysqladmin.
>
> Kan det gøres sådan?:
> mysqladmin create ${UNDERSCORENAME} -u${USRNME} -p"pzs1CyM5tRJYcw"

Nej overhovedet ikke. mysqladmin create bruges til at skabe en ny
database. Den kan ikke bruges til at skabe en ny bruger.

Og for at bruge mysqladmin skal man med -u angive en mysql-bruger, der
har rettigheder nok til operationen og med -p angive samme brugers
password.

For at oprette en ny $USRNME i mysql, som skal have adgang til en
database der hedder $UNDERSCORENAME i et shell-script kan du bruge:

mysql -uroot -p<mysql-roots password> << EOT
create user \'$USRNME\' identified by \'pzs1CyM5tRJYcw\';
grant all privileges on \'$UNDERSCORENAME\'.* to \'$USRNME \'@\'localhost\';
exit;
EOT

MVh
Martin


Follow ups

References