Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Konfigurieren Sie MAMP für die Verwendung von Mariadb

Hier ist, wie ich es mache, damit Sie entweder mysql oder mariadb verwenden können, da mariadb ein Drop-in-Replacement ist (tippen Sie dies aus dem Gedächtnis, also lassen Sie es mich bitte wissen, wenn es einige Fehler gibt) ...

0) Erstellen Sie für alle Fälle ein Backup Ihres MySQL-DB-Verzeichnisses und führen Sie für alle Fälle einige MySQL-Vorbereitungen durch

$ cp -R /Applications/MAMP/db/mysql /Applications/MAMP/db/mysql.2013-02-06-1850.bak
$ /Applications/MAMP/bin/repairMysql.sh
$ /Applications/MAMP/bin/quickCheckMysqlUpgrade.sh
$ /Applications/MAMP/bin/upgradeMysql.sh

1) Erstellen Sie eine Kopie oder notieren Sie sich einige Einstellungen in Ihrer my.cnf-Datei. Es kann sich an verschiedenen Orten befinden, um sie alle zu finden (es gibt eine Menge):

$ locate my.cnf
/Applications/MAMP/conf/my.cnf
/etc/my.cnf
/usr/local/etc/my.cnf
/usr/local/etc/my.cnf.d
/usr/local/etc/my.cnf.d/client.cnf
/usr/local/etc/my.cnf.d/mysql-clients.cnf
/usr/local/etc/my.cnf.d/server.cnf

2) herauszufinden, welche my.cnf geladen wurde (für MAMP kann es in /Applications/MAMP/conf/my.cnf sein)

$ /usr/local/bin/mysql --help | grep my.cnf
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf 
$ /Applications/MAMP/Library/bin/mysql --help | grep my.cnf
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /Applications/MAMP/conf/my.cnf ~/.my.cnf

3) Erstellen Sie eine Sicherungskopie der my.cnf in /etc/my.cnf und bearbeiten Sie my.cnf, um sicherzustellen, dass einige Parameter darin enthalten sind, vor allem die Port-, Socket- und Datadir-Einstellungen, damit Mariadb weiß, wohin Suchen Sie nach Ihren db-Dateien:

$ sudo cp /etc/my.conf /etc/my.cnf.2013-02-06-1858.bak
$ sudo vi /etc/my.cnf
port     = 3306
socket   = /Applications/MAMP/tmp/mysql/mysql.sock 
datadir  = /Applications/MAMP/db/mysql
tmpdir   = /Applications/MAMP/tmp/mysql

4) Fügen Sie alle mariadb-spezifischen Konfigurationsoptionen hinzu, die Sie möglicherweise in einem Abschnitt [mariadb] wünschen

5) mariadb installieren (ich mag es, Gebräu zu verwenden, aber nimm dein Gift) ... und du kannst das wirklich jederzeit tun

$ brew install mariadb

6) Erstellen Sie einen symbolischen Link von der my.conf aus Schritt zwei

$ sudo ln -s /Applications/MAMP/conf/my.cnf /etc/my.cnf

6a) Sie können Ihre my.cnf überall ablegen, solange es eine Kopie oder einen Link dazu in /etc/my.cnf gibt ... das Ziel hier ist, dass mariadb und MAMPs Implementierung von mysql dieselben Konfigurationseinstellungen verwenden.

7) Erstellen Sie jetzt ein Shell-Shell-Skript zum Laden von Apache und Mariadb

$ mkdir -p ~/scripts/mamp
$ touch ~/scripts/mamp/startSomething.sh ~/scripts/mamp/stopSomething.sh
$ chmod ug+rx ~/scripts/mamp/*Something.sh

8) Holen/notieren Sie sich das aktuelle Start/Stopp-Skript für Apache (es wird wahrscheinlich nichts Besonderes sein)

$ more /Applications/MAMP/bin/startApache.sh
$ more /Applications/MAMP/bin/stopApache.sh

9) Holen Sie sich den installierten Mariadb-Pfad und stellen Sie sicher, dass es die Mariadb-Version ist

$ which mysql
/usr/local/bin/mysql
$ mysql --version
mysql  Ver 15.1 Distrib 5.5.29-MariaDB, for osx10.8 (i386) using readline 5.1

10) editiere jetzt startSomething.sh

# /bin/sh
/Applications/MAMP/Library/bin/apachectl start
/usr/local/bin/mysql.server start &

11) machen Sie dasselbe für stopSomething.sh

# /bin/sh
/Applications/MAMP/Library/bin/apachectl stop
/usr/local/bin/mysql.server stop &

12) das ist es!. Dinge zu starten oder zu stoppen

$ ~/scripts/mamp/startSomething.sh
$ ~/scripts/mamp/stopSomething.sh

Wenn Sie das Vanilla-MAMP möchten, verwenden Sie die MAMP-App, die mit MAMP geliefert wurde. Ansonsten viel Spaß mit dieser etwas schnelleren Datenbank mit einem Haufen lustiger neuer Funktionen ... aber denken Sie daran, dass Mariadb zwar per Design ein Drop-in-Ersatz für mysql ist, aber nicht umgekehrt (MariaDB v MySQL-Kompatibilität )