extern auf mysql datenbanken zugreifen?

razor123

New Member
Hallo
ich möchte gern das mein webspace extern auf meinen vserver die mysql datenbank abfragt wie stelle ich das am besten an?
 
Ich würde nicht den SQL Port an einer anderen IP als localhost lauschen lassen, sondern mich über ssl+mysql von aussen vebinden.

Das ist sicher, verschlüsselt und Du hast einen Dienst weniger öffentlich sichtbar.
 
Ich würde zudem einen gesonderten Benutzer anlegen, der sich nur von der statischen IP deines Webhosting-Accounts aus anmelden kann.

Wenn er nur lesen soll, dann erlaube auch nur Lesezugriffe etc.
 
Hi,

beim Verbindungsaufbau zur Datenbank musst Du statt "localhost" dann den externen MySQL-Server bzw. IP deines VServers angeben.

Die MySQL Datenbank muss nun Zugriffe von außen annehmen,
näheres findest Du hier:

http://www.huschi.net/12_123_de-mysql-fuer-externen-zugriff-konfigurieren.html

Oder über PHPMyAdmin da gehts auch recht leicht.


Viele Grüße
Hagbard

ja also ich nutze openSUSE 10.3 Standard 32-Bit + plesk
der pfad zur my.cnf ist etc/ ?
bei bind-address = kommt die Webspace adresse rein oder die von vserver?
 
Im Handbuch steht, dass das die IP-Adresse ist, an die sich die Serverinstanz bindet. Auf Deutsch: Das ist die (externe) IP deines Datenbankservers (demnach vServer).
 
ja also ich habe unter etc/my.cnf bind-address = ***.75.241.188
gesetzt beim server gesetzt

#SkipNetworking steht so drinn

bei mysql.user habe ich ein neuen user erstellt:

Host : ***.75.241.188
User : root
pass : test

bei mysql.db habe ich

User : root
pass : test
db : test

auf den webspace habe ich

var $host = '***.75.241.188';
var $user = 'root';
var $db = 'test';
var $pass = 'test';


bisher keinen erfolg was mach ich falsch?
 
Was heisst "keinen Erfolg" und wie hast du die Benutzer angelegt? Hast du ihnen gestattet von deinem Webhosting-Account auf die DB zuzugreifen?
 
Was heisst "keinen Erfolg" und wie hast du die Benutzer angelegt? Hast du ihnen gestattet von deinem Webhosting-Account auf die DB zuzugreifen?

im webhosting habe ich nur die werte von dem server in die config übernommen
was muss ich den da noch einstellen?
 
ja also ich habe unter etc/my.cnf bind-address = ***.75.241.188
gesetzt beim server gesetzt

#SkipNetworking steht so drinn

bei mysql.user habe ich ein neuen user erstellt:

Host : ***.75.241.188
User : root
pass : test

bei mysql.db habe ich

User : root
pass : test
db : test

bisher keinen erfolg was mach ich falsch?
Wie hast du den Benutzer angelegt? Was sagen die Logfiles? Was heisst "keinen Erfolg"?

Du hast einen Datenbankbenutzer angelegt, richtig? Wie hast du diesen angelegt?

Du hast doch root-Zugriff auf den vServer, richtig? Was sagen also die Logfiles?

Du hast irgendwie versucht auf die Datenbank zuzugreifen. Welche Meldung gibt dir das Skript zurück? "Acces Denied..." genauer Wortlaut?

Du weisst nicht was du tust, richtig? :D
 
Wie hast du den Benutzer angelegt? Was sagen die Logfiles? Was heisst "keinen Erfolg"?

Du hast einen Datenbankbenutzer angelegt, richtig? Wie hast du diesen angelegt?

Du hast doch root-Zugriff auf den vServer, richtig? Was sagen also die Logfiles?

Du hast irgendwie versucht auf die Datenbank zuzugreifen. Welche Meldung gibt dir das Skript zurück? "Acces Denied..." genauer Wortlaut?

Du weisst nicht was du tust, richtig? :D

den benutzer habe ich so angelegt

Dies kann man natürlich auch per phpMyAdmin erledigen.
Wichtig zu wissen:
Die Tabelle mysql.user ist zuständig für die allgemeinen Benutzerrechte.
Und mysql.db regelt den Zugriff auf spezielle Datenbanken.
Als weiterer Tip: nimmt niemals den User root oder unter Plesk admin für den externen Zugang!
Warum: a) Sie sind leicht bei BruteForce-Attacken zu erraten und b) wer diesen Zugang knackt hat gleich alle Rechte die man unter MySQL nur haben kann.

mit host nach meinen vserver db name wie meine vserver db

logfiles da steht nix sonderliches drinne

090910 19:14:14 mysqld started
090910 19:14:14 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.45' socket: '/var/lib/mysql/mysql.sock' port: 3306 SUSE MySQL RPM


ja habe ich

Warning: mysql_connect() [function.mysql-connect]: Host 'sh4-20.1.de' is not allowed to connect to this MySQL server in /hp/ar/aa/ec/www/ss/index.php on line 8
Coudn't connect to [vs24565.vserver.de]


jop sonst würde ich hier nicht fragen =)
 
Hast du den User authorisiert von diesem Host zuzugreifen?

Ich kenne Plesk leider nicht. Du brauchst einen User, der vom Host "sh4-20.1.de" zugreifen darf.

Als weiterer Tip: nimmt niemals den User root oder unter Plesk admin für den externen Zugang!
Warum: a) Sie sind leicht bei BruteForce-Attacken zu erraten und b) wer diesen Zugang knackt hat gleich alle Rechte die man unter MySQL nur haben kann.
Danke für den Tipp :D
 
Hast du den User authorisiert von diesem Host zuzugreifen?

Ich kenne Plesk leider nicht. Du brauchst einen User, der vom Host "sh4-20.1.de" zugreifen darf.


Danke für den Tipp :D
np

ja jetz bekomme ich folgendes ^^

Warning: mysql_connect() [function.mysql-connect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client in /hp/ar/aa/ec/www/ss/index.php on line 8
Coudn't connect to [fghfgh.vserver.de]
 
Du musst runter scrollen :) Da steht alles haarklein beschrieben.

Was verstehst du davon nicht?

Also besser als dort kann man es doch kaum erklären :eek:
 
Du musst runter scrollen :) Da steht alles haarklein beschrieben.

Was verstehst du davon nicht?

Also besser als dort kann man es doch kaum erklären :eek:

ja für euch fill ich seh da nich durch wenn ich das eingebe kommt nur

-bash: popd: directory stack empty

das kommt aber nichmehr nun kommt nurnoch

Access denied for user 'root'@'localhost' (using password: YES)
 
Kannst du deinen Post nochmal überarbeiten, ich versteh kein Wort :)

Wann kommt was und was hat popd jetzt damit zu tun?

Wenn du was eingibst? Alter, gib dir doch mal bisschen Mühe, bitte. Ich würd dir gerne helfen, aber wenn man dir alles aus der Nase ziehen muss, dann ist das hier vergeudete Zeit.

Sonst nimm mal ein paar Taler in die Hand und such dir jemanden, der es für dich einrichtet wenn du keine Lust hast.
 
Back
Top