PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MySQL <--> PHP und Soket-Verbindung


René_M
19.11.2003, 11:05:39
Hallo,

wie kann ich zwischen PHP und MySQL eine Socket-Verbindung herstellen und nicht wie üblich über TCP/IP.

MySQL und PHP sind auf dem gleichen Rechner (W2K) installiert. Wie sieht in diesem Fall dann die Connect-Zeile aus. Standard ist ja $conn = mysql_connect('','',''); und wie gehts dann weiter mysql_select_db('', $conn); ...

Nev
19.11.2003, 11:10:22
Hi René
du kannst genauso wie unter`m Apache, mit localhost die datenbank ansprechen.

Der Port ist glaub ich 3306

is aber generell ned so wichtig

René_M
19.11.2003, 11:40:26
Hi Nev,

unter Unix gibt es ja dafür eine irgendwas socket... Datei unter Win soll man MySQL mit pipe Parameter starten. Das war leider alles was ich rausbekommen habe.

Wie kann man prüfen ob es nun einen TCP/IP- oder Socket-Verbindung ist. Port ist auf 3306 festgelegt als Host verwende ich in der Classe localhost.

René_M
19.11.2003, 11:45:10
Nachtrag:

MySQL 4.0.16 läuft als System-Dienst und PHP 4.3.4 als ISAPI-Modul unter JanaServer.

Falls du noch andere einstellungen brachst (außer Passwörter :-)) dann poste ich das hier.

Nev
19.11.2003, 11:52:20
Wenn du eine Klasse verwendest, dann sollte diese den Connect aufbaun.

Generelle ist es so das du eine TCP/IP verbindung aufbaust.

Wenn du dir die Parameter für mysql_Connect anschaust, kannst du mehrere Sachen angeben:
resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]])
Hinter der Variable $Server versteckt sich das ganze:

entweder du gibst hier:
localhost
oder
localhost:PORT

oder eine SOCKET-Verbindung an.
Unter Unix wäre das zB:
:/path/to/socket

Ab der PHP -Version 3.0B4 kann man :Port angeben
ab 3.0.10 die Socket Verbindung.

Du kannst auch einen Mix machen:
localhost:POST:/path/to/socket

René_M
19.11.2003, 12:12:06
Hi Nev,

das mit localhost:PORT/socket ist ja Unix hier ist aber W2k Pro und da ist/soll es irgendwas mit pipe Parameter beim Start von MySQL zutun haben.

Nur wie starte ich MySQL mit pipe wenn es als Dienst lauft. Der Server wird ja nur angeschalten ohne das sich ein Benutzer anmeldet.

Nev
19.11.2003, 12:15:29
Hmm

Ich habe da kein Problem, wobei ich keinen Richtigen Server betreibe, sondern nur einen WinApache mit allen drum und dran.

Der läuft ohne Probs.
Die Mysql-DB wird ganz normal als Dienst gestartet, schon vom System aus.

René_M
19.11.2003, 12:39:02
... und PHP baut zu MySQL eine Socket-Verbindung auf oder ist es über TCP/IP?

Apache2 ist hier auch installiert läuft neben Jana aber auf Port 81.

Nev
19.11.2003, 13:19:40
der baut eine normale TCP/IP verbindung auf

René_M
19.11.2003, 13:47:41
Hi Nev,

und wie eine Socket das wäre mir sehr wichtig!

Nev
19.11.2003, 13:50:06
so bin ich überfragt

aber schau mich mal um

René_M
19.11.2003, 14:06:57
Danke!

René_M
25.11.2003, 20:08:13
Bitte nicht erschiessen. ;-)

Nev
25.11.2003, 20:14:40
Leider hab ich noch nix gefunden.

Warum sollte ich dich erschiessen??
Top'en ist in so einen Fall erlaubt