Mysql
 sql >> база данни >  >> RDS >> Mysql

Конфигурирайте MAMP да използва mariadb

ето как го правя, така че да можете да използвате или mysql, или mariadb, тъй като mariadb е спад в замяната (написвам това по памет, така че, моля, уведомете ме, ако има някои грешки)...

0) направете резервно копие на вашата mysql db dir за всеки случай и направете някои подготвителни стъпки за mysql за всеки случай

$ 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) направете копие или вземете под внимание някои настройки във вашия файл my.cnf. Може да се намира на различни места, така че да ги намерите всички (има куп):

$ 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) разберете кой my.cnf е зареден (за MAMP МОЖЕ да е в /Applications/MAMP/conf/my.cnf)

$ /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) направете резервно копие на my.cnf в /etc/my.cnf и редактирайте my.cnf, за да се уверите, че има няколко параметъра там, най-важните настройки на порта, сокета и datadir, така че mariadb да знае къде да потърсете вашите db файлове:

$ 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) добавете всички специфични за mariadb опции за конфигурация, които може да искате в раздел [mariadb]

5) инсталирайте mariadb (обичам да използвам brew, но изберете вашата отрова)... и наистина можете да направите това по всяко време

$ brew install mariadb

6) направете символна връзка от my.conf от стъпка втора

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

6a) можете да поставите своя my.cnf навсякъде, стига да има копие или връзка към него в /etc/my.cnf... целта тук е изпълнението на mysql от mariadb и MAMP да използва едни и същи настройки на конфигурацията.

7) сега направете shell скрипт за зареждане на apache и mariadb

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

8) вземете/отбележете текущия старт/стоп скрипт за apache (вероятно няма да е нещо фантастично)

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

9) вземете инсталирания път на mariadb и се уверете, че е версията на mariadb

$ 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) сега редактирайте startSomething.sh

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

11) направете същото за stopSomething.sh

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

12) това е!. за стартиране или спиране на неща

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

ако искате ванилия MAMP, използвайте приложението MAMP, което идва с MAMP. в противен случай се забавлявайте с тази малко по-бърза база данни с куп забавни нови функции... но имайте предвид, че макар mariadb по дизайн да е заместител на mysql, не е вярно обратното (Съвместимост на MariaDB срещу MySQL )



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP не може да се свърже с PDO ODBC драйвер

  2. Помощ за PHP и HTML квадратчета за отметка

  3. Съхранение на календарни данни в MySQL

  4. В Python, ако имам времеви печат на unix, как да го вмъкна в поле за дата и час на MySQL?

  5. Връзка между 2 колони