Bonjour,
Je dois effectuer une requête sur 2 bases situées sur 2 serveurs différents.
J'ai donc pratiqué ainsi
soit le résultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 // Valeurs données à titre d"'exemple $MDB_SV1="server1"; $MDB_US1="user1"; $MDB_PS1="pwd1"; $MDB_BN1="mdb1"; $MDB_SV2="server2"; $MDB_US2="user2"; $MDB_PS2="pwd1"; $MDB_BN2="mdb2"; $t1="table1"; $t2="table2"; $fields2="fields2"; $value="myValue"; $id1=mysql_connect($MDB_SV1,$MDB_US1,$MDB_PS1); $id2=mysql_connect($MDB_SV2,$MDB_US2,$MDB_PS2); echo "select 1:". mySql_select_db($MDB_BN1,$id1); echo "select 2:". mySql_select_db($MDB_BN2,$id2); $sql="SELECT * FROM `$MDB_BN2`.`$t2` t2, `$MDB_BN1`.`$t1` t1 WHERE t2.$fields2='$value';"; $result= mysql_query($sql); echo "result:".$result."< = > error_sql (".mysql_errno() ."): ".mysql_error();
J'ai tenté de donner des droits via une clause GRANT.select 1:1
select 2:1
result:< = > error_sql (1142): SELECT command denied to user '$MDB_BN2'@'10.0.63.00' for table '$t1'
(probablement mal écrite) car sans succès.
Code : Sélectionner tout - Visualiser dans une fenêtre à part $sql="GRANT SELECT ON `$MDB_BN1`.`$t1` TO '$MDB_BN2'@'10.0.63.00';";
D'où mes questions :
- comment résoudre cette erreur,-
- la configuration du serveur (mutu) peut-il être en cause, ou au pire
- comment pratiquer en compulsant 2 requêtes consécutives ?
Partager