Как установить MySQL gem на Mac OS X

Что мне нужно для установки mysql gem в Mac OS X? Я получаю сообщение об ошибке «не удалось создать собственные расширения».


person synapse    schedule 11.02.2011    source источник


Ответы (10)


Сначала установите MySQL, используя двоичный код или Homebrew.

Потом:

gem install mysql2

Or:

gem install ruby-mysql

Просто выберите один, и все готово.


Изменить

Если вы обновили MySQL до версии 5.6.12 в OS X, mysql2 не сможет скомпилироваться. Решение состоит в том, чтобы понизить версию MySQL, как описано здесь: https://stackoverflow.com/a/17252887/45254


Edit2

Если вы не хотите, чтобы mysql был установлен (возможно, вы используете докер для управления своими службами), но хотите использовать mysql2 gem, вы можете вместо этого установить mysql-connector-c (используя homebrew).

person Krule    schedule 11.02.2011
comment
чтобы установить mssql с помощью homebrew, введите команду: brew install mysql. - person Pierre-Gilles Levallois; 30.03.2012
comment
Если у вас есть проблемы с mysql из портов Mac, запустите: gem install mysql2 - --with-mysql-config = / opt / local / lib / mysql? / Bin / mysql_config - person lesyk; 11.12.2015
comment
вы не хотите понижать версию mysql5. в Mysql8 caching_sha2_password - это механизм кэширования по умолчанию. если клиентская библиотека не поддерживает caching_sha2_password, вы можете изменить механизм аутентификации mysql на sha256_password, например stackoverflow.com/questions/49948350/phpmyadmin-on-mysql-8-0 - person tessie; 29.11.2018

Некоторое время назад я написал некоторые инструкции по мой блог о том, как это сделать в 10.6, но я думаю, что то же самое и в 10.5.

Я дохожу до этой команды:

ARCHFLAGS="-arch x86_64" gem install mysql -- \
  --with-mysql-config=/path/to/mysql_config

но вам нужно найти реальное значение для /path/to/mysql_config. В моем сообщении в блоге есть несколько советов, но есть одна очень важная вещь: у вас должен быть установлен MySQL с заголовками. Официальный установщик .pkg от MySQL не поддерживает IIRC. Лучше всего установить MySQL с помощью Homebrew (в статье я использую примеры из установки MacPorts, но это потому, что Homebrew не был зрелым, когда я его написал).

Если вы устанавливаете MySQL с помощью Homebrew, mysql_config будет расположен по адресу /usr/local/bin/mysql_config, а если вы установите его с помощью MacPorts, то по адресу /opt/local/lib/mysql5/bin/mysql_config.

Я согласен с другим ответом, в котором предлагается установить гем mysql2 вместо mysql. Я думаю, что приведенная выше команда должна работать и для mysql2.

person Theo    schedule 11.02.2011
comment
все еще работает над 10.15, хотя я проигнорировал ARCHFLAGS. - person Graeme; 30.05.2020

если у вас уже есть сервер MySQL, работающий в другом месте в сети, и вы все равно хотите установить гем без установки MySQL, попробуйте следующее

brew install mysql-connector-c

с последующим

gem install mysql
person Saikrishna Rao    schedule 10.11.2013

Я использую Mac OS X Lion с Homebrew.

Правильная команда для установки рубинового драгоценного камня:

gem install mysql -- \ --with-mysql-config=/usr/local/bin/mysql_config 
person JB Hewitt    schedule 21.11.2011

Я использую Mac OS X Mountain Lion и установил MySQL с DMG.

gem install do_mysql -- \ --with-mysql-dir=/usr/local/mysql --with-mysql-lib=/usr/local/mysql/lib --with-mysql-include=/usr/local/mysql/include

а также

sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib

Это работает для меня;)

person avillagran    schedule 26.11.2012

Для меня это было проще всего:

brew install mysql
gem install mysql

Brew - это менеджер пакетов для Mac OS, обязательно. Использование его для установки mysql сначала приносит все, что отсутствует в команде gem.

person codener    schedule 03.01.2014
comment
Работал у меня 10.10. Это намного лучше, чем принятый ответ. mysql2 не лучше mysql, если вам нужны подготовленные операторы. См .: stackoverflow.com/a/21726231/1143830 - person Ed Halferty; 01.09.2015

Я использую Mac OS X 10.10 (Yosemite), и я работал с приведенной ниже командой:

gem install mysql2 -- \ --with-mysql-config=/usr/local/mysql/bin/mysql_config
person Maciel Bombonato    schedule 28.04.2015

Я устанавливаю MySQL с DWG, mysql_config будет находиться по адресу /usr/local/mysql/bin/mysql_config

gem install mysql -- \ --with mysql-config=/usr/local/mysql/bin/mysql_config 
person Alexandre Quintela    schedule 08.11.2011

Я установил MySQL с Homebrew, и мне пришлось использовать это, чтобы наконец-то обновить гем:

gem install mysql2 -- --with-mysql-dir=/usr/local/opt/mysql/
person tirdadc    schedule 11.01.2019

Я столкнулся с этой проблемой при настройке гема MySQL на MacOs Mojave. У меня это сработало.

1 Убедитесь, что установлены инструменты командной строки Xcode. xcode-select --install

  1. Для меня сборка все еще терпела неудачу с отсутствием некоторых файлов заголовков, которые вам необходимо установить открытым /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg

Эта ссылка указала в правильном направлении. Невозможно скомпилировать программу C на Mac после обновления до Mojave

person tessie    schedule 29.11.2018