Tutorial MySQL unter Mac OS 10.4 kompilieren & installieren

Diskutiere mit über: Tutorial MySQL unter Mac OS 10.4 kompilieren & installieren im Datenbanksysteme für das Web Forum

  1. moses_78

    moses_78 Thread Starter MacUser Mitglied

    Beiträge:
    1.322
    Zustimmungen:
    22
    Registriert seit:
    08.04.2005
    MySQL unter Unix/Mac OS X kompilieren und Installieren

    Kompilierung

    Diese Anleitung soll auch weniger mit der Konsole vertrauten Leuten die
    Kompilierung und Installation eines MySQL-Servers auf einfachstem Weg
    erklären.

    Hinweis: Eine Raute(#> ) vor den Befehlen bedeutet, dass man root-Rechte
    benötigt, um sie auszuführen. Ein Dollarzeichen bedeutet, dass die Rechte
    eines gewöhnlichen Benutzers ausreichen. Root-Rechte erlangt man
    mit "sudo <Befehl>" oder "su root".

    Zuerst müssen wir die aktuellsten Sourcen saugen. Zur Zeit (19.2.'06) ist
    die Version 5.0.18 das empfohlene, stabile Release, und steht hier zum Down-
    load bereit.

    Wir kopieren das heruntergeladene Tar-Archiv nach /Applications (im Finder
    "Programme") und entpacken es folgendermaßen (ab diesem Punkt sind alle
    weiteren Schritte in der Konsole auszuführen):
    Code:
    $> cd /Applications
    $> tar xvf mysql-5.0.18
    Dabei ist zu beachten, dass die Versionsnummern vermutlich eine andere
    sein werden. Nun wird mit
    Code:
    $> cd ./mysql-5.0.18
    in das aus dem Entpacken entstandene Verzeichnis gewechselt.

    Jetzt kommt der wohl zeitintensivste Teil der Installation, das Kompilieren:
    Code:
    $> ./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql 
    --with-unix-socket-path=/usr/local/mysql/run/mysql.sock
    Das configure-Script erstellt ein Makefile, nach welchem MySQL mit
    Code:
    $> make
    kompiliert wird. Dieser Vorgang kann je nach System 5-15 Minuten in An-
    spruch nehmen. Die entstandenen Programme, Scripte und Bibliotheken wer-
    den jetzt mit
    Code:
    #> make install
    an ihren Bestimmungsort kopiert.
     
    Zuletzt bearbeitet: 22.02.2006
  2. moses_78

    moses_78 Thread Starter MacUser Mitglied

    Beiträge:
    1.322
    Zustimmungen:
    22
    Registriert seit:
    08.04.2005
    Installation

    Der ganze Kram muss nun konfiguriert werden. Zuerst wechseln wir in das
    Installationsverzeichnis:
    Code:
    $> cd /usr/local/mysql
    Das Script "mysql_install_db" erstellt die für den MySQL-Daemon benötig-
    ten Tabellen und legt den Ordner "var" an, indem die Datenbanken und Log-
    files gespeichert werden.
    Code:
    #> ./bin/mysql_install_db
    In dem Verzeichnis "run" soll zukünftig die "mysql.sock" Datei gespeichert
    werden. Wir erstellen es also:
    Code:
    #> mkdir ./run
    Aus Sicherheitsgründen lässt man den MySQL-Server nicht mit root-Rechten
    starten, er weigert sich sogar, dies zu tun, und erwartet einen User namens
    "mysql", den wir nun erstellen. An einem reinen Unix-System würde man
    dies mit
    Code:
    #> groupadd mysql
    #> useradd mysql -G mysql
    tun, unter Mac OS X geht man auf das Control-Panel "Benutzer" in den
    Systemeinstellungen und erstellt dort einen Benutzer namens "mysql".

    Das Installationsverzeichnis muss nun dem neu erstellten Benutzer "mysql"
    übergeben werden:
    Code:
    #> chgrp -R mysql /usr/local/mysql
    #> chown -R mysql /usr/local/mysql/run
    #> chown -R mysql /usr/local/mysql/var
    Der MySQL-Server sollte nun startbereit sein. Er lässt sich mit
    Code:
    #> /usr/local/mysql/bin/mysqld_safe --user=mysql &
    starten. Seh wichtig ist dabei das Ampersand, ohne welches der MySQL-
    Daemon im Vordergrund läuft und die weitere Benutzung der Konsole un-
    möglich macht. Wenn eine Fehlermeldung beliebiger Art kommt, lohnt sich
    ein Blick in die Logdatei:
    Code:
    #> pico `ls /usr/local/mysql/var | grep .err`
    Wer das Problem nicht gelöst bekommt, möge mir eine PM schicken, oder
    in den Faden posten...

    Nun testen wie den soeben installierten MySQL-Server auf seine Funktion:
    Code:
    $> /usr/local/mysql/bin/mysql
    Die Ausgabe sollte, wenn alles glatt verlaufen ist, so aussehen:
    Code:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1 to server version: 5.0.18
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql>
    Wir beenden das MySQL-Client-Programm mit "exit;". Der jungfräulich ein-
    gerichtete MySQL-Daemon läuft nun, ist jedoch noch nicht mit einem Pass-
    wort gesichert, das heißt, jede Person kann von außen auf die Datenbanken
    zugreifen, sie ändern und löschen. Um MySQL mit einem Passwort zu schüt-
    zen, geben wir folgendes ein:
    Code:
    $> /usr/local/mysql/bin/mysqladmin -u root password <Passwort>
    Über das Programm "mysqladmin" kann man MySQL auch jederzeit wieder
    herunterfahren (was zu diesem Zeitpunkt jedoch wenig Sinn machen
    würde ;)):
    Code:
    $> /usr/local/mysql/bin/mysqladmin -uroot -p shutdown
    Jetzt auf den MySQL-Server mit dem mitgelieferten Client-Programm
    zuzugreifen, sollte folgendes Ergebnis bringen:
    Code:
    $> [b]/usr/local/mysql/bin/mysql[/b]
    
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 3 to server version: 5.0.18
    
    Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
    
    mysql> [b]CREATE DATABASE blablub;[/b]
    ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'blablub'
    mysql> [b]exit;[/b]
    Man kann die Datenbanken nun noch auslesen, die Daten jedoch nicht än-
    dern, und auch keine Datenbanken erstellen. Ruft man den MySQL-Client
    nun auf diese Weise auf:
    Code:
    $> /usr/local/mysql/bin/mysql -uroot -p
    Enter password: ******
    ...hat man Lese- und Schreibrechte für alle Datenbanken.

    Hinweis: Die Datenbank "information_schema" sollte man nicht löschen.
    Bei älteren Version hieß diese für den MySQL-Server notwendige Datenbank
    "mysql", und durch das Löschen dieser habe ich mir 2 oder 3 MySQL-Instal-
    lationen zerschossen ;)
     
    Zuletzt bearbeitet: 20.02.2006
  3. moses_78

    moses_78 Thread Starter MacUser Mitglied

    Beiträge:
    1.322
    Zustimmungen:
    22
    Registriert seit:
    08.04.2005
    Konfiguration

    Jetzt muss der MySQL-Server nur noch so eingerichtet werden, dass er
    beim Systemstart ebenfalls hochfährt.

    Unter Mac OS X geht man so vor:
    Zuerst wird ein Ordner namens "mysql" in dem Verzeichnis "/Library/
    StartupItems" erstellt:
    Code:
    #> mkdir /Library/StartupItems/mysql
    In dieses Verzeichnis kommen folgende Dateien:
    Code:
    #> pico /Library/StartupItems/mysql/StartupParameters.plist
    Diese Datei soll folgenden Inhalt bekommen:
    Code:
    {
      Description     = "MySQL-5.0.18";
      Provides        = ("MySQL");
      Uses            = ("NETWORK", "RESOLVER");
    }
    Der Text kann dann mit <ctrl> + o, <Enter> gespeichert werden, der Edi-
    tor wird dann mit <ctrl> + x verlassen.

    Dann muss noch das eigentliche Script erstellt werden:
    Code:
    #> pico /Library/StartupItems/mysql/mysql
    Dieses Script bekommt diesen Inhalt:
    Code:
    #!/bin/sh
    
    if [ -z $1 ] ; then
        echo "Usage: $0 [start|stop|restart] "
        exit 1
    fi
    
    . /etc/rc.common
    
    SCRIPT="/usr/local/mysql/share/mysql/mysql.server"
    
    StartService ()
    {
        ConsoleMessage "Starting MySQL database server"
        $SCRIPT start
    }
    
    StopService ()
    {
        ConsoleMessage "Stopping MySQL database server"
        $SCRIPT stop
    }
    
    RestartService ()
    {
        ConsoleMessage "Restarting MySQL database server"
        $SCRIPT restart
    }
    
    RunService "$1"
    Auch hier wird der Text mit <ctrl> + o, <Enter>, <ctrl> + x, <Enter> ge-
    speichert, und der Editor verlassen.

    Jetzt müssen noch die Zugriffsrechte für das Verzeichnis angepasst werden:
    Code:
    #> chown -R root /Library/StartupItems/mysql
    #> chgrp -R wheel /Library/StartupItems/mysql
    #> chmod -R 755 /Library/StartupItems/mysql
    #> chmod a-x /Library/StartupItems/mysql/StartupParameters.plist
    Fertig!!

    Weiterführendes

    http://dev.mysql.com/doc/ - Die offizielle MySQL-Dokumentation (Hinweis:
    Die deutsche Version ist nicht mehr aktuell!).

    MySQL von Paul Dubois - Das Buch über MySQL (englisch)

    MySQL Kochbuch - Die hervorragende deutsche Version des Dubois-Buches,
    von O'Reilly

    http://www.mysql.de/products/tools/administrator/ - MySQL-Interface mit
    graphischer Benutzeroberfläche.

    http://cocoamysql.sourceforge.net/ - Ein weiterers MySQL-Adminprogramm,
    wird nur für den Mac entwickelt.

    http://www.phpmyadmin.net/home_page/index.php - Beliebtes PHP-basieren-
    des, plattformübergreifendes MySQL-Admin-Programm

    Hinweis: Beim Schreiben von MySQL-Datenbankanwendungen, die über
    das Internet verfügbar sein sollen, muss man eine große Sicherheitslücke
    beachten.

    http://www.elektronikschule.de/~grupp/perlcgi/mysql/ - Kleines Beispiel für
    die Verwendung von MySQL mit Perl (DBD & DBI).

    http://ffm.junetz.de/members/reeg/DSP/node15.html - Kapitel aus dem
    PHP-Tutorial von reeg.net über das Zugreifen auf den MySQL-Server mittels
    PHP.

    http://sourceforge.net/projects/mysql-python/ - Interface für die Verwen-
    dung von MySQL mit Python ("MySQLdb")
     
    Zuletzt von einem Moderator bearbeitet: 28.11.2013
  4. catvarlog

    catvarlog MacUser Mitglied

    Beiträge:
    1.468
    Zustimmungen:
    1
    Registriert seit:
    30.01.2005
    herzlichen dank für diese sehr gute anleitung!
     
Die Seite wird geladen...
Ähnliche Themen - Tutorial MySQL unter Forum Datum
Mysql - Duplicates abfangen, mit php oder mit unique keys? Datenbanksysteme für das Web 08.03.2016
mysql abfrage optimieren Datenbanksysteme für das Web 26.03.2014
php - mysql_error != mysqli_error - mysql meldet Fehler, mysqli nicht Datenbanksysteme für das Web 05.07.2013
Fragen & Hilfe zu Projekt mit php & mySQL Integration Datenbanksysteme für das Web 01.07.2013
Tutorial PostgreSQL unter Mac OS X installieren Datenbanksysteme für das Web 13.04.2006

Diese Seite empfehlen

Benutzerdefinierte Suche