Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1146 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [shell] petit probleme avec mysql

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[shell] petit probleme avec mysql

n°303505
Zaib3k
Posté le 06-02-2003 à 22:56:25  profilanswer
 

je connais pas bien la syntaxe des shell script mais j'ai essayé un truc. un script qui prend en parametre le mdp root, le nom de l'utilisateur a ajouter et son mot de passe. ce script devra créé une bdd du nom de l'user et donné les droits a l'utilisateur sur cette table et ca devra me dire si la table existe deja.
 
c peut etre pas tres claire :D, je veux faire comme sql.free.fr :D :D
 
pour l'instant j'ai fait ca :
 

Code :
  1. #! /bin/sh
  2. # ajout d'un user mysql et d'une table eponyme.
  3. #
  4. mysql -uroot -p$1 -e "CREATE DATABASE $2; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON $2 TO $2@% IDENTIFIED BY $3;"
  5. echo done
  6. # fin du script


 
et comme par hasard, ca me donne :
 

root@zaibserver:~# ./test1.sh password toto titi
ERROR 1064 at line 1: You have an error in your SQL syntax near '% IDENTIFIED BY titi' at line 1
done


 
la base toto a bien été créée mais pas l'user.
 
help  
 
merci


Message édité par Zaib3k le 07-02-2003 à 23:12:18
mood
Publicité
Posté le 06-02-2003 à 22:56:25  profilanswer
 

n°303531
--greg--
Posté le 07-02-2003 à 00:04:31  profilanswer
 

grant [...] to 'user'@'%'


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°303532
--greg--
Posté le 07-02-2003 à 00:05:07  profilanswer
 

et alors faudrait voir à pas confondre table et base, c pas vraiment la meme chose:)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°303695
Zaib3k
Posté le 07-02-2003 à 10:14:05  profilanswer
 

--greg-- a écrit :

et alors faudrait voir à pas confondre table et base, c pas vraiment la meme chose:)


 
en fait je veux une base du nom de l'user


Message édité par Zaib3k le 07-02-2003 à 23:11:56
n°303782
--greg--
Posté le 07-02-2003 à 11:30:59  profilanswer
 

Zaib3k a écrit :


 
en fait je veux une table du nom de l'user

ben ton script il crée une base avec le nom de l'user  :sweat:


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°303818
Zaib3k
Posté le 07-02-2003 à 11:55:44  profilanswer
 

--greg-- a écrit :

grant [...] to 'user'@'%'


 
marche pas  :sweat:  
 

ERROR 1064 at line 1: You have an error in your SQL syntax near 'titi' at line 1
done

n°303820
Zaib3k
Posté le 07-02-2003 à 11:58:20  profilanswer
 

Code :
  1. 1 #! /bin/sh
  2.       2 # ajout d'un user mysql et d'une table eponyme.
  3.       3 #
  4.       4
  5.       5 mysql -uroot -p$1 -e "CREATE DATABASE $2;"
  6.       6 echo database $2 ok ...
  7.       7 mysql -uroot -p$1 -e "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON $        2 TO '$2'@'%' IDENTIFIED BY $3;"
  8.       8
  9.       9 echo done
  10.      10 # fin du script


 
c la 2eme ki chie.
 
edit : j'ai testé direct en console  
 

root@zaibserver:~# mysql -uroot -ppassword -e "create database toto;"
root@zaibserver:~# mysql -uroot -ppassword -e "grant select on toto to toto identified by toto;"
ERROR 1064 at line 1: You have an error in your SQL syntax near 'toto' at line 1


 
ca m'nrv


Message édité par Zaib3k le 07-02-2003 à 12:03:07
n°303837
--greg--
Posté le 07-02-2003 à 12:14:46  profilanswer
 

t'es bouché ou quoi? [:dawa]
 
 
... to 'toto'@'%' identified by 'totopassword'


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°303939
Zaib3k
Posté le 07-02-2003 à 14:05:20  profilanswer
 

--greg-- a écrit :

t'es bouché ou quoi? [:dawa]
 
 
... to 'toto'@'%' identified by 'totopassword'


 
ok ok, pour les ''. je les ai mis. :o
 
par contre, now ca deconne encore :
 

root@zaibserver:~# ./test1.sh pass tito tito
database tito ok ...
ERROR 1046 at line 1: No Database Selected
done


 
je veux donner les droits sur la bdd et pas sur une table tito.
j'ai testé en rajoutant un "use $2;" avec le grant mais la il me dit qu'il ne trouve pas de tito.tito. normal
 
pour ajouter un user et lui donner des droits , c bien comme ca pourtant, non ?

n°303954
Zaib3k
Posté le 07-02-2003 à 14:21:18  profilanswer
 

c bon mon script fonctionne.
 

mysql -uroot -p$1 -e "GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON $2.* TO '$2'@'%' IDENTIFIED BY '$3';"


 
ca c bon, mais apres je ne peux pas me connecter a mysql, ni par phpmyadmin, ni en console. :/
 
dans phpmyadmin, je vois l'user avec aucun droit, et dans "autres privileges" il ya bien les droits definit sur sa bdd. il me manque quoi ?

mood
Publicité
Posté le 07-02-2003 à 14:21:18  profilanswer
 

n°303985
Zaib3k
Posté le 07-02-2003 à 15:05:41  profilanswer
 

c bon ca marche. j'ai remplacé le @'%' par @'localhost' et ca roule. me demander pas pourquoi ca marche :D

n°303987
--greg--
Posté le 07-02-2003 à 15:11:05  profilanswer
 

Zaib3k a écrit :

c bon ca marche. j'ai remplacé le @'%' par @'localhost' et ca roule. me demander pas pourquoi ca marche :D

bah vais pas te le demander.
si tu vois savoir tu peux tjs demander :D


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°304016
Zaib3k
Posté le 07-02-2003 à 15:56:39  profilanswer
 

--greg-- a écrit :

bah vais pas te le demander.
si tu vois savoir tu peux tjs demander :D


 
mais pourquoi ca marche maintenant ?  [:bigsmiley]  
 
 
et sais tu comment faire pour que lorsque la base existe deja, il me le dise ?


Message édité par Zaib3k le 07-02-2003 à 23:11:40
n°304313
--greg--
Posté le 07-02-2003 à 23:06:51  profilanswer
 

Zaib3k a écrit :


 
mais pourquoi ca marche maintenant ?  [:bigsmiley]  
 
 
et sais tu comment faire pour que lorsque la table existe deja, il me le dise ?

parce que ce que tu fais c'est donner des droits à un user, se connectant depuis un host donné, sur une base.
 
* grant select on bazalacon to 'greg'@'blabla.com' identified by 'monpass'
 --> je ne pourrai me connecter sur la base bazalacon que depuis "blabla.com"
 
* pareil avec 'greg'@'%' ... --> je pourrai me connecter depuis n'importe quel host (% etant le 'wildcard' dans ce cas-ci) ... tu pourrais aussi faire 'greg'@'%.wanadoo.fr', je ne pourrai me connecter sur la base que depuis un host de wanadoo... etc etc...
 
* cas particulier non repris par le '%', c'est 'localhost', c-a-d la machine ou tourne la base.
 
comme apparement tu fais du php pour attaquer ta base et que manifestement les 2 sont sur la meme machine, t'as compris koi.
 
 
et pour ta 2e question, si la base (arrete de confondre), la 1e ligne de ton script generera une erreur ;)


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°304316
Zaib3k
Posté le 07-02-2003 à 23:11:30  profilanswer
 

arf, j'avais pas vu que je parlais de table depuis le debut. j'etais persuadé que je parlais de base. désolé
 
je vais editer tout ca.
 
merci bcp --greg--  :jap:

n°304332
--greg--
Posté le 07-02-2003 à 23:39:19  profilanswer
 

pas de quoi;)
tu veux etre mon  boolay? [:dawa]


---------------
#19b | Mardi 18 Février 2003 - nous fêtons les Bernadette | contre le fleur icq!
n°304344
Zaib3k
Posté le 07-02-2003 à 23:49:21  profilanswer
 

--greg-- a écrit :

pas de quoi;)
tu veux etre mon  boolay? [:dawa]


 
 [:tapai]  salo  :o


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  [shell] petit probleme avec mysql

 

Sujets relatifs
problème avec str_replaceProblème d'affichage de FLASH
probleme TI 89mail avec petit questionnaire
Probleme de division et modulosous Delphi probleme !
peut etre un probleme de syntaxe mais bon...[html - js] probleme de detection de resolution
Problème avec PHP[FLASH] - Problème avec des liens :/.
Plus de sujets relatifs à : [shell] petit probleme avec mysql


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR