Arbeiten in zwei Welten OS X und XP

Irgendwelche Probleme mit XAMPP für Mac OS X? Dann ist hier genau der richtige Ort um nachzufragen.

Arbeiten in zwei Welten OS X und XP

Postby Scotch » 28. February 2009 18:46

Hallo @ All,

ich bin vor kurzem zum auf das MAC OS X umgestiegen.
Zu meiner Windows Zeit hatte ich den XAMPP auf einer USB Platte (Fat 32) Installiert und konnte so an jedem PC arbeiten.
Auf Grund dessen, dass ich für mobile Zwecke noch ein Win XP Notebook benutze, suche ich nach einer Lösung
auf die Daten der Webseite und der SQL Datenbank auf der USB Platte von der MAC Version des XAMPP zuzugreifen,
sowie weiterhin diese unter Win XP zu nutzen.
Mein erster versuch war, einen DB Ordner vom MySQL auf den MAC zu kopieren und zu nutzen. Dies hat auch ohne Problem funktioniert.
Folglich sind die abgelegten Daten von MYSQL auf beiden Systemen gleich.
Mein nächster versuch bestand darin, die my.cnf auf dem MAC anzupassen, so dass er auf den MySQL DATEN Ordner auf der USB Platte zugreift.
Dieses klappt aber leider nicht.
Code: Select all
socket      = /Volumes/USB-SERVER/xampp/mysql/data/mysql.sock

Da ich die Datei mysql.sock nicht finden konnte, habe ich sicherheitshalber den Inhalt des MAC Ordner var/mysql
in den Ordner XAMPP/mysql/data kopiert.

ich habe mir mal die .err Datei angesehen.
090228 18:16:41 [ERROR] Can't start server : Bind on unix socket: Invalid argument
090228 18:16:41 [ERROR] Do you already have another mysqld server running on socket: /Volumes/USB-SERVER/xampp/mysql/data/mysql.sock ?
090228 18:16:41 [ERROR] Aborting


aber so richtig schlau werde ich daraus nicht.

Ich hoffe mir kann hier im Forum jemand weiterhelfen.
Gruß Ingo
Scotch
 
Posts: 11
Joined: 28. February 2009 18:23

Re: Arbeiten in zwei Welten OS X und XP

Postby Nobbie » 01. March 2009 14:04

Den Socket zu kopieren ist totaler Blödsinn (sorry). Das ist eine interne Datei, ohnehin abhängig vom Betriebssystem, wie MySQL Server mit einem MySQL Client kommuniziert. Vergiss das mit dem Socket einfach.

Wenn Du identische my.cnf haben willst, dann konfiguriere MySQL so, dass es keinen Socket benutzt sondern via TCPIP Port 3306 kommuniziert, den gibt es "in beiden Welten".
Nobbie
 
Posts: 13165
Joined: 09. March 2008 13:04

Re: Arbeiten in zwei Welten OS X und XP

Postby Scotch » 16. April 2009 22:02

Hallo Nobbie,
da habe ich wohl grundsätzlich falsch gedacht.
Mein Ziel war es die SQL Datenbankdateien zu nutzen die ich unter Windows nutze, damit ich auf beiden Betriebssystemen arbeiten kann.
Unter Windows habe ich XAMPP als Portable Version auf meiner USB Platte.
Vom MAC aus gesehen befinden sich die Datenbankdateien in diesem Verzeichnis.
/Volumes/EXT_SERVER/xampp/mysql/data
jetzt habe ich den Pfade zu diesem Verzeichnis eingetragen aber MYSQL Startet nicht
Im XAMPP Control bleibt MySQL auf Startet
Anbei mal meine my.cnf

Code: Select all
# Example MySQL config file for small systems.
#
# This is for a system with little memory (<= 64M) where MySQL is only used
# from time to time and it's important that the mysqld daemon
# doesn't use much resources.
#
# You can copy this file to
# /etc/my.cnf to set global options,
# mysql-data-dir/my.cnf to set server-specific options (in this
# installation this directory is /Applications/xampp/xamppfiles/var/mysql) or
# ~/.my.cnf to set user-specific options.
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option.

# The following options will be passed to all MySQL clients
[client]
#password   = your_password
port      = 3306
socket      = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port      = 3306
datadir      =/Volumes/EXT_SERVER/xampp/mysql/data
socket      = /Applications/XAMPP/xamppfiles/var/mysql/mysql.sock
skip-locking
key_buffer = 16K
max_allowed_packet = 1M
table_cache = 4
sort_buffer_size = 64K
read_buffer_size = 256K
read_rnd_buffer_size = 256K
net_buffer_length = 2K
thread_stack = 64K
tmpdir = /Applications/XAMPP/xamppfiles/temp/

# Don't listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (using the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking
server-id   = 1

# Uncomment the following if you want to log updates
#log-bin=mysql-bin

# Uncomment the following if you are NOT using BDB tables
#skip-bdb

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /Applications/XAMPP/xamppfiles/var/mysql/
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /Applications/XAMPP/xamppfiles/var/mysql/
#innodb_log_arch_dir = /Applications/XAMPP/xamppfiles/var/mysql/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 16M
#innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 8M
sort_buffer_size = 8M

[myisamchk]
key_buffer = 8M
sort_buffer_size = 8M

[mysqlhotcopy]
interactive-timeout

Gruß Scotch
Scotch
 
Posts: 11
Joined: 28. February 2009 18:23

Re: Arbeiten in zwei Welten OS X und XP

Postby kleinweby » 16. April 2009 22:22

Huhu Scotch,

Das das Control Panel da auf Startet stehen bleibt heist in diesem Fall nicht das MySQL nicht gestartet wurde. Das Control Panel warten darauf das MySQL eine bestimmte Datei in /Applications/XAMPP/xamppfiles/var/mysql/ anlegt, was dan signalisiert das MySQL gestartet wurde. Durch die Aenderung des datadirs legt MySQL dort diese Datei nun nicht an und das Control Panel warte sich dum und daemlich ;)

Oeffne mal den Terminal (zufinden in den Dienstprogrammen) und gib dort "hostname" ein. Das gibt dir dann etwas aus. Dann fuegst du folgende Zeile in deine my.cnf gleich nach dem datadir ein und ersetzt hostname dort durch die Ausgabe des Befehls von ebend:
Code: Select all
pid-file = /Applications/XAMPP/xamppfiles/var/mysql/hostname.pid


Dann sollte das mit starten funktionieren. Ich notiere mir das hier und denke das ich diese Unanaemlichkeit in der naechsten XAMPP Version behebe.

Grueße,
Christian
User avatar
kleinweby
AF Moderator
 
Posts: 393
Joined: 03. August 2005 19:52
Location: Magdeburg
Operating System: Mac OS X 10.7

Re: Arbeiten in zwei Welten OS X und XP

Postby Scotch » 16. April 2009 23:38

Hallo Christian,
erst einmal danke für Deine Antwort.
Ich habe die Änderungen in der my.cnf vorgenommen und im Contorl Panel wird dann auch angezeigt das MySQL gestartet wurde.
Auch ein Zugriff von einer PHP Seit klappt. Warum meine Webseite allerdings nicht läuft, muss ich noch mal kontrollieren.
Aber der Server funktioniert jetzt erst einmal, Thx :D

Unter Win habe ich ein Programm das nennt sich MySQL Front zum bearbeiten von Tabellen.
Du kennst nicht zufällig etwas ähnliches für MAC OS?
Ich habe schon CocoaMySQL probiert bin aber nicht wirklich überzeugt davon.

Gruß Ingo
Scotch
 
Posts: 11
Joined: 28. February 2009 18:23

Re: Arbeiten in zwei Welten OS X und XP

Postby kleinweby » 16. April 2009 23:41

Huhu Ingo,

Soweit ich weis wird CocoaMySQL schon eine weile nicht mehr weiter entwickelt. Aber es gibt einen sehr schoenen Nachfolger http://www.sequelpro.com/

Grueße,
Christian
User avatar
kleinweby
AF Moderator
 
Posts: 393
Joined: 03. August 2005 19:52
Location: Magdeburg
Operating System: Mac OS X 10.7

Re: Arbeiten in zwei Welten OS X und XP

Postby Scotch » 16. April 2009 23:55

So spät und dann noch eine Antwort.
Ist ja fast wie bei meinem Webhost :lol:
Werde mir das Programm mal anschauen.
Die Screenshots sehen schon mal interessant aus.

Gruß Ingo
Scotch
 
Posts: 11
Joined: 28. February 2009 18:23

Re: Arbeiten in zwei Welten OS X und XP

Postby Radostus » 30. September 2011 22:18

Dieser Beitrag ist ja nun schon 2,5 Jahre alt aber ich habe genau den selben Stand wie Scotch.
Da hier geschrieben wurde diese "Unannehmlichkeit" würde eventuell in der nächsten Version behoben frage ich lieber nach bevor ich irgendwas an den Dateien ändere. Ich habe die gleichen Voraussetzungen wie Scotch, mit dem Unterschied das es sich bei mir um eine NTFS-Platte handelt. Ich habe mir vorhin die aktuelle Version von Xampp für Mac gezogen und auch installiert. Soweit ist alles klar. Aber ich möchte ja nun auf die Daten der Xampp-Installation auf der Platte zugreifen. Ich möchte sowohl die DB als auch das Verzeichnis htdocs von der Platte nutzen. Was muss ich jetzt genau ändern und in welchen Dateien muss ich das tun ?

LG Radostus
Lebe lange und möge es Dir gut ergehen
(Live long and prosper)

Radostus von Bokelhausen
User avatar
Radostus
 
Posts: 24
Joined: 30. September 2011 19:32

Re: Arbeiten in zwei Welten OS X und XP

Postby Radostus » 01. October 2011 10:19

Also ich habe jetzt in fast allen Config-Dateien die Einstellungen für das htdocs-Verzeichnis auf die externe Platte verwiesen, aber phpinfo zeigt mir immer noch einige Bereiche an in denen das Verzeichnis auf der internen Platte gesucht wird :(
Der Apache läuft soweit ganz gut nachdem ich seine Dateien auf die externe Platte kopiert habe, da es sich dabei ja um eine Win-Version handelt fehlten logischerweise die Unix-Dateien.
Wo muss ich denn noch überall den Eintrag /Applications/XAMMP/xamppfiles in /Volumes/websites/xampp (das ist das Verzeichnis auf der externen Platte) ändern damit ich endlich auch wirklich das htdocs-Verzeichnis auf der externen Platte nutzen kann und nicht immer nur zum Verzeichnins auf der internen Platte komme ?
Lebe lange und möge es Dir gut ergehen
(Live long and prosper)

Radostus von Bokelhausen
User avatar
Radostus
 
Posts: 24
Joined: 30. September 2011 19:32

Re: Arbeiten in zwei Welten OS X und XP

Postby Nobbie » 01. October 2011 10:26

Radostus wrote: aber phpinfo zeigt mir immer noch einige Bereiche an in denen das Verzeichnis auf der internen Platte gesucht wird :(


Das müsstest Du genauer erklären, wie und wo zeigt phpinfo() Verzeichnisse der internen Platte an?

Prinzipiell muss man (für den htdocs Ordner) nur den sog. DocumentRoot (in httpd.conf) anpassen. Falls Du sog. VirtualHosts betreibst, muss das für jeden VirtualHost auch ggf. angepasst werden. Außerdem kennt Apache auch ALIAS-Anweisungen, die können auch auf verschiedene Bereiche verweisen.

Hast Du eine "jungfräuliche" Xampp Installation oder sind da ja diverse Dinge installiert?

P.S.: Was Du alternativ auch versuchen kannst, nicht die Xampp Konfiguration zu ändern, sondern das Dateisystem anpassen. Und zwar so, dass der originale htdocs Ordner geändert wird, statt eines normalen Ordners ist das ein sog. "Symbolic Link" auf den Ordner in der NTFS Partition (/Volumes/...).
Nobbie
 
Posts: 13165
Joined: 09. March 2008 13:04

Re: Arbeiten in zwei Welten OS X und XP

Postby Radostus » 01. October 2011 11:13

OK, dann werde ich das mal genauer erläutern.
Ich habe in der httpd.conf den Document Root-Pfad geändert und phpinfo zeigt trotzdem bei einigen Bereichen an das sich der Document Root-Pfad in Applications statt in Volumes befindet.
Hier mal eine Liste der Überschriften und Einträge bei denen er das macht:
Apache Environment -- DOCUMENT_ROOT und SCRIPT_FILENAME
Core -- extensions_dir
mysql -- mysql.default_socket (wobei mir klar ist das es dort auch so bleiben sollte)
mysqli -- MYSQLI_SOCKET und mysqli.default_Socket (hier sollte es sicherlich auch so bleiben)
Environment -- TMPDIR und _ (wobei es bei letzterem sicherlich auch so bleiben sollte)
PHP Variables -- SERVER["DOCUMENT_ROOT"] und SERVER["SCRIPT_FILENAME"] und _ENV["TMPDIR"] und ENV["_"]

So und jetzt weiter:
Ich habe eine frische Installation, gestern gezogen und installiert. Nein, ich betreibe keine VirtualHosts.

€: Ich denke das Problem hat etwas mit der configure-Prozedur zu tun die am Anfang durchläuft. Ganz am Anfang der phpinfo-Seite stehen unter Configure Command ausschließlich Pfade die auf die interne Platte verweisen, kein einziger verweist auf die externe Platte.

€2: Ich bin so ein blöder Hund :( Ich habe offenbar den Eintrag in der httpd.conf zwar geändert das Ergebnnis aber nicht richtig abgespeichert. Jetzt nachdem ich es auch gespeichert habe verweist der XAMPP auf die externe Platte. Wenn ich jetzt noch die DB zum Laufen bekomme bin ich selig :)
Lebe lange und möge es Dir gut ergehen
(Live long and prosper)

Radostus von Bokelhausen
User avatar
Radostus
 
Posts: 24
Joined: 30. September 2011 19:32

Re: Arbeiten in zwei Welten OS X und XP

Postby Nobbie » 01. October 2011 11:55

Radostus wrote:Wenn ich jetzt noch die DB zum Laufen bekomme bin ich selig :)


Geht genauso einfach. In der my.cnf (oder my.ini - ich kenne die OSX Installation nicht) mußt Du den Wert für "DataDir" auf das Verzeichnis /Volume/.... (da, wo es dann auch liegt) setzen und MySQL neu starten.

ACHTUNG: bei vielen Xampp Installationen (beispielsweise die Linux Installation) wird der Wert dieser DataDir-Variablen beim Start von MySQL durch einen sog. Kommandozeilenparameter überschrieben (wenn in der Kommandozeile eine entsprechende Option gesetzt ist, dann gilt diese Option und nicht die Einstellung aus my.cnf). Das kannst Du entweder herausfinden in dem Du die Startscripts im Editor anschaust, oder auch wenn Du in einem Terminal (auch Konsole genannt) das Kommando "ps -fe" eingibst (nachdem MySQL erfolgreich gestartet wurde). Da werden Dir dann alle aktiven Prozesse gelistet und bis zu einer gewissen Stelle (dann wird es leider abgehackt) auch die Optionen der Kommandozeile.

Auch dort gibt es stattdessen die Möglichkeit, Xampp unverändert zu lassen (also in diesem Fall my.cnf bzw. das Startscript) und den MySQL Data-Ordner von Xampp unter OSX so zu "verbiegen", dass er kein normaler Ordner ist, sondern ein Symbolic Link auf die NTFS Festplatte bzw. den data-Ordner der dortigen Installation. Wenn Du nicht weißt, wie man so etwas macht, kann ich es Dir gerne erklären. OSX ist ja im Kern ein UNIX System (verwandt mit Linux) und da gibt es die tollsten Möglichkeiten, die den meisten Apple Anwendern gar nicht bekannt sind.
Nobbie
 
Posts: 13165
Joined: 09. March 2008 13:04

Re: Arbeiten in zwei Welten OS X und XP

Postby Radostus » 01. October 2011 12:16

Das hab ich ja gemacht, genau wie weiter oben beschrieben. Also den Pfad zum DataDir angegeben(der war nämlich nicht da) und dann den Pfad zur pid-Datei angegeben. Aber nachdem ich jetzt mal nachgesehen habe kann ich keine pid-Datei finden, also auf der externen Platte logischerweise die von der Win-Installation, aber auf der internen Platte ist keine zu finden. Kann ich die einfach kopieren, umbenennen und entsprechend ändern ?
Ich habe noch ein Problem, nämlich mit MySQL. MySQL startet nicht und bringt als Fehlermeldung Error DomainError 1. Ich bin sicher ich habe gestern dazu irgendwas hier im Forum gesehen, aber heute finde ich es nicht mehr.
Lebe lange und möge es Dir gut ergehen
(Live long and prosper)

Radostus von Bokelhausen
User avatar
Radostus
 
Posts: 24
Joined: 30. September 2011 19:32

Re: Arbeiten in zwei Welten OS X und XP

Postby Radostus » 01. October 2011 13:00

Ich habe es mal mit dem kopieren der Datei veresucht, aber es hat leider nicht geklappt. Wird wohl daran liegen das die falsche pid darin eingetragen ist, aber wie soll ich die pid von mysql ermitteln wenn der Prozess gar nicht erst startet ?
Lebe lange und möge es Dir gut ergehen
(Live long and prosper)

Radostus von Bokelhausen
User avatar
Radostus
 
Posts: 24
Joined: 30. September 2011 19:32

Re: Arbeiten in zwei Welten OS X und XP

Postby Nobbie » 01. October 2011 13:43

Radostus wrote:Ich habe noch ein Problem, nämlich mit MySQL. MySQL startet nicht und bringt als Fehlermeldung Error DomainError 1. Ich bin sicher ich habe gestern dazu irgendwas hier im Forum gesehen, aber heute finde ich es nicht mehr.


Die PID Datei wird gar nicht benötigt. Die ist nur eine Kontrolldatei für das Startscript, ob schon ein MySQL gestartet ist. Lass die Einstellungen wie sie sind.

Für den DomainError1 finde ich bei Google u.a. diesen Eintrag:

http://superuser.com/questions/80389/xa ... -data-dirs

Überprüfe das.

Eine weitere Fehlerursache können fehlende Berechtigungen sein. MySQL muss die Datenbanken beschreiben können, da hängt alles vom "mount"-Befehl ab, wie das NTFS Dateisystem in OSX gemountet wurde. Für NTFS kann man unter Unix (OSX od. auch Linux) nicht nach dem mounten (wie sonst bei normalen Dateien) die Berechtigungen der Ordner und Dateien ändern (das liegt am NTFS Dateisystem). Es muss bereits beim mounten festgelegt werden, wer die Dateien auf dieser Partition lesen und schreiben darf. Wenn obiger Link nicht zum Erfolg führt, versuche es auf diesem Weg.

Das ist leider nicht so ganz unkompliziert, wenn es per Default nicht so eingestellt ist, dass es schon funktioniert.
Nobbie
 
Posts: 13165
Joined: 09. March 2008 13:04

Next

Return to XAMPP für macOS

Who is online

Users browsing this forum: No registered users and 11 guests