1

我正在尝试在OVH互惠服务器上安装 redmine,但我被 MySQL gem 问题阻止了。OVH 服务器不允许外部网络连接。我已经手动下载并安装了所有具有 Redmine 所需依赖项的 gem。

我已经安装没有任何问题 MySQL gem: - mysql 2.8.1 - mysql2 0.3.11

对于安装,我需要指定 mysql lib 并包含文件夹路径,因为它是一个共同安装和非标准布局:

gem install mysql-2.8.1.gem
    --no-rdoc
    --no-ri
    --
    --with-mysql-config=/usr/bin/mysql_config
    --without-mysql-dir
    --with-mysql-lib=/usr/lib/mysql
    --with-mysql-include=/usr/include/mysql

gem install mysql2-0.3.11.gem
    --no-rdoc
    --no-ri
    --
    --with-mysql-config=/usr/bin/mysql_config
    --without-mysql-dir
    --with-opt-lib=/usr/lib/mysql
    --with-opt-include=/usr/include/mysql

使用这两个命令,我没有收到错误消息和消息1 gem insalled

在那个有趣的手动包安装过程之后,我按照Redmine 安装教程来初始化我的环境。

第一个命令,生成秘密令牌:rake generate_secret_token 第二个命令,构建数据库模式:RAILS_ENV=production rake db:migrate

第一个工作完美,但第二个向我发送此错误:

ruby: symbol lookup error: /MYHOMEFOLDER/gems/mysql-2.8.1/lib/mysql_api.so: undefined symbol: mysql_init

有没有人知道我可以如何解决这个问题?

4

1 回答 1

1

如果您正在使用,请ruby1.9使用mysql2gem。
如果您正在使用,请ruby1.8使用mysqlgem。

所以,如果你使用的是 1.9,在你的config/database.yml

production:
  adapter: mysql2

和 :

gem install mysql2

如果您正在运行 Redmine >1.4,请使用Bundler而不是gem install ...!

于 2012-11-14T10:48:53.770 回答