【问题标题】:Can't Run my server in rails after upgrading to ubuntu 12.04升级到 ubuntu 12.04 后无法在 Rails 中运行我的服务器
【发布时间】:2012-05-09 08:09:50
【问题描述】:

我刚刚将 ubuntu 从 11.10 升级到 12.04,之后当我在我的 rails 项目中运行我的服务器时,我收到了这个错误

$ rails s
/usr/share/ruby-rvm/gems/ruby-1.9.3-p125/gems/mysql2-0.3.11/lib/mysql2.rb:9:in `require': 
libmysqlclient_r.so.16: cannot open shared object file: No such file or directory - 
/usr/share/ruby-rvm/gems/ruby-1.9.3-p125/gems/mysql2-0.3.11/lib/mysql2/mysql2.so (LoadError)

有什么帮助吗?

【问题讨论】:

    标签: mysql ruby-on-rails ruby


    【解决方案1】:

    转到您的项目并按照步骤操作,

    rvm gemset empty <gemset name>
    gem install bundler
    bundle install
    

    它会解决你的问题。

    如果这不起作用,或者如果您没有使用 rvm,请使用

    gem uninstall mysql2
    bundle install
    

    来自您使用 mysql2 的 Rails 项目目录之一。

    【讨论】:

    • 是什么意思??
    • 您项目的 gemset 名称。转到您的项目并点击“rvm current”以及 @ 字母之后的任何内容,即您当前的 gemset 名称。
    • 我的 rvm 中没有任何 gemset,当我输入“$ rvm current”时,我得到 >> ruby​​-1.9.3-p125
    • 好的,然后删除mysql2 gem,重新安装。 'gem卸载mysql2'然后'捆绑安装'
    • 我按照您的说明进行操作,发现如果您清空 gemset,那么您正在卸载 bundler,您需要重新安装它。我在您的回答中添加了gem install bundler
    【解决方案2】:

    好吧,我建议仔细检查 ruby​​ 和 rails 版本,并确保它们与您创建项目时使用的相同。也许您必须使用 rvm 更改版本:

    • rvm use 'Version'

    也许您可以再次卸载并重新安装 mysql 软件包,也可以尝试安装:

    • sudo apt-get install mysql-client mysql-server libmysqlclient16-dev

    • sudo apt-get install mysql-client mysql-server libmysqlclient-dev

    还可以尝试卸载并重新安装您的 mysql gem。 This blog post 也有解决此错误的方法,尽管该错误是在不同时间引起的。

    【讨论】:

    • ruby & rails 版本没问题,其他 2 个命令相同,当我尝试安装“libmysqlclient16-dev”时出现此错误 >> 与已安装的包“libmysqlclient-dev”冲突
    • 在我看来,您必须重新安装其中的几个包,甚至是 gemfile。这可能是您正在使用的 mysql gem 和您为 mysql 安装的驱动程序之间的兼容性问题。该链接指的是您遇到的完全相同的问题吗?
    【解决方案3】:

    我关注了他发布的Babak'sinstruction,稍作改动后就成功了。

    我的系统是 Ubuntu 12.04 服务器,它安装了 Ruby1.9.3,所以我这样做了

    sudo apt-get install mysql-server libmysqlclient-dev
    

    似乎 libmysqlclient16-dev 现在在 Ubuntu 12.04 中重命名为 libmysqlclient-dev

    后来我跑了

    gem install mysql2
    

    【讨论】:

      【解决方案4】:

      对我来说没有任何工作。然后我找到this 并尝试删除并再次创建database.yml 文件。它的工作原理!

      【讨论】:

        猜你喜欢
        • 2012-10-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-08-06
        • 1970-01-01
        • 2015-07-14
        • 2022-07-27
        相关资源
        最近更新 更多