[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: MySQL



Le Wed, Jun 26, 2002 at 10:57:47PM +0200, Stef ecrit :
> Bonsoir, j'ai installé MySQL et depuis hier j essaye de créer un 
> utilisateur et je n y arrive pas...
> Apres l installation j'ai commencé par donner un mot de passe au root en 
> faisant:
> update user set password="mot_de_passe" where user="root" ;
update user set password=password("mot_de_passe") where user="root";
flush privileges;

> (tiens question subsidiaire: Où se trouve la table des bd ? autrement dit 
> je dois faire un select "koi" pour voir les bd ?)
Y'en a pas, à ma connaissance. Tu peux les voir dans le répertoire
/var/lib/mysql/base

> J'aimerais créer un administrateur pour la base de données test_db. J'ai 
> donc fait ceci, comme indiqué dans 2 ouvrages (différents) que je possède:
> grant all on test_db.* to testAdmin identified by "pass_admin" with grant 
> option ;
Perso, je ferais plutôt un nouvel utilisateur avec : 
insert into mysql.user values ("%","testAdmin",password("xxxxxxxx"),"n","n","n","n","n","n","n","n","n","n","n","n","n","n");
flush privileges;

Je lui donnerais les droits avec :
insert into mysql.db values ("%","test_db","testAdmin","y","y","y","y","y","y","y","y","y","y");
flush privileges;

Le "flush privileges;" prend les modifications en compte en vidant le
cache interne des droits d'accès. Ainsi, mySQL relit les tables de droit
que tu viens de modifier. C'est nécessaire quand tu n'utilises pas
"grant" (comme moi) et que tu tapes directement dans les tables.

> Quelqu'un pourrait il m'aider
Voila, mais je te suggère de lire la doc de mySQL.

> PS: Autre question: comment faire pour empecher les gens qui n ont pas de 
> compte sur le serveur MySQL de se connecter sur ce serveur? Autrement dit 
> comment faire pour obliger les gens à se connecter avec une commande de 
> type: mysql -u login -p  ?
delete from mysql.user where user="";
delete from mysql.user where password="";
flush privileges;

Perso, après l'install, je fais le ménage :
fcerbell@ws210:~$ mysql -u root
mysql> drop database test;
mysql> use mysql;
mysql> update user set password=password("xxx") where user="root";
mysql> delete from user where user="";
mysql> delete from db;

Ensuite, je me créée mon user dans la table user, avec juste le droit de
se connecter :
mysql> insert into user values ("%","login",password("pass"),"n","n","n","n","n","n","n","n","n","n","n","n","n","n");

Je lui créée une BD :
mysql> create database login_db;

Lui donne les pleins pouvoirs dessus :
mysql> insert into db values ("%","login_db","login","y","y","y","y","y","y","y","y","y","y");

Éventuellement lui restreint l'accès depuis seulement certaines machines
du réseau dans la table mysql.host.

Mets les droits à jour.
mysql> flush privileges;

Commente la ligne skip-networking dans le fichier de conf
(/etc/mysql/my.cnf).

Créée un fichier .my.cnf dans le répertoire root avec les droits 600,
qui contient le mot de passe de root (sinon, les scripts automatiques de
crontab, et d'arret/relance vont échouer).

Et enfin, je fais un arret/relance de la base 
/etc/init.d/mysql restart

Pour que le moteur de mySQL redémarre en écoutant sur le réseau.

Je ne dis pas que c'est ce qui se fait de mieux, mais c'est MA méthode.
-- 
(0> Francois Cerbelle            <O)          |\      _,,,---,,_
//\ mailto:francois@cerbelle.net /\\    ZZZzz /,`.-'`'    -.  ;-;;,_
V_/ Cell: (+33/0) 603 015 512    \_V         |,4-  ) )-,_. ,\ (  `'-'
                                            '---''(_/--'  `-'\_)


-- 
To UNSUBSCRIBE, email to debian-user-french-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org



Reply to: