gpt4 book ai didi

mysql - 由于 MySQL 错误,无法运行迁移

转载 作者:行者123 更新时间:2023-12-04 06:16:27 24 4
gpt4 key购买 nike

几天来,我一直在尝试在 OS X 上设置我的开发环境,但我在使用 mysql 时遇到了很多麻烦。我已经通过 mysql 网站上的 dmg 文件安装了 mysql。这解决了我遇到的大部分麻烦。

我当前的问题是,当我运行“rake db:migrate”时,出现以下错误:

rake aborted!
undefined method `init' for Mysql:Class



我在某处读到在 Gemfile 和 mysql2 中使用 gem 'mysql2' 作为数据库适配器可能会解决问题。我试过这样做,但没有奏效。需要注意的一点是 mysql 不在我的 PATH 变量中的任何位置,因此在终端中键入“mysql”会将我带到/var/_mysql,这有点奇怪。

我是否需要将 '/usr/local/mysql/bin' 添加到我的路径变量中?如果是这样,我该如何在 OS X 中执行此操作?

谢谢。

编辑:我添加/usr/local/mysql/bin 到我的路径,仍然有同样的错误。

最佳答案

为了解决这个问题,我最终使用了 mysql2 gem 而不是 mysql gem。这个过程根本不是直截了当的,所以我想发布我采取的确切步骤,以防以后有人需要帮助。

首先,从 mysql 网站下载与您的 OS X 版本相对应的 OS X DMG 文件。您将需要安装 mysql,然后是启动项,最后是首选项面板(所有 3 个都在 DMG 文件中)。

接下来,您需要将 mysql 添加到路径变量中。我相信您可以编辑/etc/paths 或将新文件添加到/etc/paths.rd/,但我最终修改了终端的配置文件。我在 ~/.zshrc 中添加了以下行(这仅适用于 zsh,如果您使用 bash,则文件类似于 ~/.bashrc):

export PATH=[path:variables]:/usr/local/mysql/bin
export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

[path:variables] 只是所有其他路径变量的占位符。第二行是使 mysql2 gem 工作所必需的。第二行允许 mysql 找到所需的库文件。

接下来,替换或添加
gem 'mysql' 


gem 'mysql2', '< 0.3'

< 0.3 是必需的,否则会引发一些奇怪的错误。 (对不起,我没有保存堆栈跟踪)。最后一步是将数据库适配器更改为 mysql2。我希望这可以帮助某人省去很多头痛:)

关于mysql - 由于 MySQL 错误,无法运行迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7179206/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com