Nobbie wrote:Nach längerem Nachdenken gebe ich mal einen Versuch ab, wie die Problembeschreibung wirklich gemeint war.
Also erst mal danke für deine Geduld.
Nobbie wrote:Du darfst nie vergessen, ich weiß NICHTS von Deinem Server, Du weißt ALLES von Deinem Server.
Naja, ich schätze mal, eher umgekehrt. Oder zumindest hält es sich die Waage.
Nobbie wrote:Siehst Du den gigantischen Unterschied zwischen dieser Beschreibung und Deiner Beschreibung, ...
Schon.
Nobbie wrote:... in der Du von dem "standardmäßig installierten MySQL Server" sprichst (also ein zweiter Server)?
Nein, chronologisch gesehen der erste.
Mit XAMPP experimentiere ich erst seit ein paar Tagen wieder, MySQL-Server 5.5 für Debian lief hier schon "ewig". Ok, "standardmäßig installiert" war wohl falsch ausgedrückt, entschuldige bitte.
Nobbie wrote:... so wie es oben beschrieben ist, ist ein MySQL Server vom System installiert und einer von Xampp ...
So etwa. Obwohl ich mir nicht sicher bin, ob ersterer eben "standardmäßig" mit dem OS (jessie) mitinstalliert wurde, aber das ist ja auch wurscht.
Nobbie wrote:... und beide benutzen denselben Socket.
Nein. Der "Standardserver" (entschuldige den Ausdruck)
legt(e) wie gesagt
/var/run/mysqld/mysqld.sock an, der von XAMPP
/opt/lampp/var/mysql/mysql.sock Aber es lief / läuft eh' immer nur einer von beiden.
Nobbie wrote:Eigentlich kenne ich keinen Grund, überhaupt mehr als einen MySQL Server einzusetzen.
Ich auch nicht.
Deshalb sieht meine /etc/rc.local jetzt so aus:
- Code: Select all
#!/bin/bash
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
/opt/lampp/lampp startapache
/opt/lampp/lampp startmysql
sleep 3
mkdir /var/run/mysqld; chown mysql:mysql /var/run/mysqld; chmod 757 /var/run/mysqld
ln -s /opt/lampp/var/mysql/mysql.sock /var/run/mysqld/mysqld.sock
exit 0
Und in meiner /opt/lampp/etc/my.cnf steht jetzt:
- Code: Select all
bind-address = 127.0.0.1
("skip-networking" ist ja wohl vollkommener Käse.)
Also so läuft's erst mal, muss aber öfters mal schief laufen, wenn ich dich richtig verstanden habe:
Nobbie wrote:Das läßt ebenfalls vermuten, dass mindestens ein Client NICHT über Sockets zugreift.
Sowieso.
"MySQL-Workbench" mit Sicherheit, die anderen - na, schaunmermal ...
Nobbie wrote:wodim wrote:Weil eben diese Programme, wie's ausschaut, nur über einen Socket auf den Server zugreifen können, nicht über eine IP - Verbindung.
Das schaut mit absoluter Sicherheit nur so aus.
Das sollte mich freuen. Wirft aber neue Fragen auf.
Wie sieht das bei meinen Shellscripten aus (die ja wiederum des öfteren andere Shells aufmachen) ... oder wenn ich im Terminal (u.a.) mit MySQL arbeite ... Die anderen Clients sind im Moment: Emma, phpMyAdmin, MySQLAdminer, GNUCash, EleLa, (reicht für's erste), ...
(Wenn du mich jetzt fragst, wozu mehrere Admin-Tools: Jedes hat seine Vor- und Nachteile. Und z.B. zeigt mir "MySQL- Workbench"
grafisch bei Relationen nur an, welche Tabelle auf welche referenziert, nicht, welcher Schlüssel auf welchen, MySQLAdminer falsch) ...
Nobbie wrote:Laut dieser Beschreibung hast Du mehrere Clients und mehrere Server, aber die "teilen" sich einen Socket.
Nein, nur mehrere Clients. Und zwar
/opt/lampp/var/mysql/mysql.sock (Auch wenn ich ihnen mittels Symlink
/var/run/mysqld/mysqld.sock, also den "vom Standardserver gewohnten" vorgaukele.)
Und das ist ein Fehler, sagst du? Dann aber das offensichtlich auch:
- Code: Select all
# The following options will be passed to all MySQL clients
[client]
#password = your_password
port = 3306
socket = /opt/lampp/var/mysql/mysql.sock
Obwohl's so wie gesagt eh' nicht funktioniert ("will be passed to all MySQL clients"). Wie sollte es auch?
Nobbie wrote:Selbst wenn es so wäre, dann muss eben pro Server/Client ein eigener Socket zur Verfügung gestellt werden. Ein Socket ist eine Art Pipe, ein Kommunikationsmechanismus zwischen zwei Prozessen, wenn da mehr als ein ein Prozess auf Server- oder Clientseite zugreift, geschieht Chaos
Eben. Also wie kam der Mensch auf die Idee, sowas in die /opt/lampp/etc/my.cnf 'reinzuschreiben???
Ich hab's ja auch anders 'rum angedacht, also meinen "Standardserver" weiter laufen lassen - aber den Indianer von XAMPP dazu zu bewegen, auf den zuzugreifen statt auf den XAMPP-eigenen, scheint mir noch einiges komplizierter ...
Den "Standardserver" hab' ich jetzt erst mal wieder 'runtergeschmissen, aber irgendwie reicht Deinstallieren über die Paketverwaltung nicht so ganz - das System will ihn beim Booten immer noch starten, kann's natürlich nicht.