Warnung: file_put_contents(/home/www/web1/html/php_dev/test.txt) [function.file-put-contents]: failed to open stream: Permission denied in /home/www/web1/html/php_dev/sys/lib.activity.php (Zeile 58)
mysql - zugriff via localhost oder externen server [Archiv] - PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr
ebiz-webhosting
- Ad -
php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
mysql - zugriff via localhost oder externen server


 
rudolf-h
23-04-2002, 00:19 
 
hallo,

ist es möglich eine mysql-datenbank via browser zu manipulieren und sie zeitgleich online via mysql-frontend und myodbc-treiber zu pflegen?

wenn ja, was genau kann ich tun? oder
gibt es so etwas wie: mysql-datenbank ist für den datenzugriff exklusiv gesperrt?

rudolf h.

 
Troublegum
23-04-2002, 01:33 
 
Es gibt eine bekannte und ausgereifte Webfrontend auf php basierend, mit der du mySQL per Browser verwalten kannst.
Die Software nennt sich "phpmyadmin" und ist zu finden auf www.sourceforge.net (suche nach phpmyadmin).

Für Windows gibt es auch noch die kostenlose
Frontend "mySQL front" von anse. Mehr dazu und mehr gibts hier (http://www.php-resource.de/devtools.php).

Solange dein Benutzeraccount auch für Remote Zugriffe freigeschaltet sein, kannst du auch "online" einen externen mySQL Server pflegen (oder irre ich mich ?). Die Frontend spielt dann eigentlich keine Rolle.

Hoffe, geholfen zu haben.

MfG Troublegum

 
rudolf-h
25-04-2002, 11:36 
 
hallo,

phpmyadmin und mysql front lösen mein problem leider nicht.

vielleicht mal ein konkretes szenario:

ein shop - basierend auf mysql (ca. 40 verknüpfte tabellen) und php soll 24 stunden online sein...
millionen von usern sehen sich die seiten tagtäglich an, ok.

datenpflege:

phpmyadmin und mysql-front funktionieren für sich gesehen schon, die tools sind aber nicht geeignet eine relationale datenbankstruktur mit vielen verknüpften tabellen effektiv zu administriern. das heißt, es macht keinen sinn und ist zudem unübersichtlich, wenn für die eingabe eines datensatz 10 tabellen nacheinander aufgerufen werden müssen (fehlerhafte dateneingaben sind dabei vorprogrammiert).

aus diesem grund soll eine eingabemaske erstellt werden,
welche alle tabellen miteinander verbinden kann - der datenbank-zugriff wird auf basis des myodbc treibers realisiert.
als datenbank-front-end wird eine win-applikation eingestzt, vielleicht approach, dbase oder access.

zugriff:

die user-zugriffe erfolgen meines erachtens durch den httpd-server hindurch mit hilfe von php auf den mysql-server. dabei sieht der zugriff für mysql natürlich wie ein localhost-zugriff aus und die berechtigungen werden demzufolge auch so eingerichtet.
als beispiel wird phpmyadmin bei der installation mit dem datenbankserver-localhost configuriert (in den meisten fällen jedenfalls).

problem:

das mysql-front-end und ebenfalls der my-odbc treiber greifen von aussen direkt auf den mysql-server zu.
bei der authentifizierung moniert der mysql-server, dass es dem benutzer host `pD123abcd.dip.t-dialin.net`(domain und ip von t-online - wird mir bei der einwahl dynymisch zugewiesen) nicht erlaubt ist auf gewünschte datenbank zuzugreifen. stelle ich nun von localhost auf fernzugriff um funktioniert der zugriff ohne probleme sowohl mit mysql-front als auch mit dem myodbc-treiber.

ich hoffe, das ich mein problem etwas besser veranschaulichen konnte.

gibt es eine möglichkeit das beide zugriffsarten parallel, nebeneinander, zeitgleich funktioneieren -
also localhost sowie fernzugriff?

wenn nicht, vielleicht läßt sich eine 2 datenbank aufbauen, welche sich mit der ersten permanent sycronisiert. auf diese 2 datenbank kann dann von der ferne zugegriffen werden, oder auch nicht?

any suggestions?

mfg rudolf

 
goth
25-04-2002, 21:43 
 
Klar geht das ... Du musst lediglich jeweils 2 Benutzer einrichten,
da für mysql username@'%' etwas anderes ist als username@localhost ...

Soweit ich mich erinnere greift username@localhost über den UNIX-Socket auf die DB zu während username@'%' über den INET-Socket kommt.


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:16 Uhr.