Установка MySQL и MySQL Gem на Snow Leopard - PullRequest
1 голос
/ 17 декабря 2009

Это действительно сложная задача - выяснить, как запустить MySQL и MySQL в Snow Leopard 10.6.2. Я следовал инструкциям разных постов, но пока не увенчался успехом:

Я собираю MySQL версии 5.1.39 из исходного кода, и она успешно установлена. При попытке входа в систему с помощью (mysql -u root -p) mysql возвращает следующую ошибку:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

это, очевидно, означало, что MySQL Server (mysqld) не работал.

which mysql: /usr/local/mysql/bin/mysql
which ruby: ruby 1.8.7 (2009-04-08 patchlevel 160) [i686-darwin9])
gem -v: 1.3.5
mysql: Server version: 5.1.39 MySQL Community Server (GPL)

После долгих поисков, я обнаружил, что

  1. эта команда может запустить mysqld:

    sudo /usr/local/mysql/bin/mysqld_safe --user=mysql &

  2. Панель инструментов MySQL, вероятно, не работает в Mac OS X 10.5 и выше

  3. Эта команда должна правильно установить самоцвет mysql на Snow Leopard:

    sudo gem uninstall mysql sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

В итоге я получил следующую ошибку, используя что-то вроде rake db: create:

dyld: lazy symbol binding failed: Symbol not found: _mysql_init 
Referenced from: /opt/local/lib/ruby/gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle 
Expected in: flat namespace 
dyld: Symbol not found: _mysql_init 
Referenced from: /opt/local/lib/ruby/gems/1.8/gems/mysql-2.8.1/lib/mysql_api.bundle 
Expected in: flat namespace

Эта ошибка привела меня к следующему сообщению: http://cho.hapgoods.com/wordpress/?p=158,, в котором в основном говорится, что версия Ruby, поставляемая вместе с XCode 3.0, не работает в 64-разрядных средах, и решением может быть установка 32-разрядной версии MySQL.

Есть предложения, как поступить?

1 Ответ

3 голосов
/ 17 декабря 2009

Хотя сборка из исходного кода не обязательно является плохой идеей, даже если официальный дистрибутив собран с использованием лучшего компилятора, использование MacPorts (http://www.macports.org/install.php) для этого, вероятно, является лучшей идеей, чем самостоятельная установка.

Хотя вы можете изменить форму Ruby и MySQL, поставляемых с OS X, по моему опыту, проще работать полностью в области MacPorts (/ opt) и оставить исходный дистрибутив без изменений.

Еще одним преимуществом является то, что вы получаете более современный исполняемый файл Ruby. 10.6 поставляется с 1.8.7p72, где, например, MacPorts предоставляет 1.8.7p174.

Пример:

sudo port install mysql5
sudo port install mysql5-server
sudo port install rb-mysql
...