问题标签 [mysql2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1161 浏览

ruby-on-rails - 启动 Ruby on Rails 服务器时出现问题

我对 Ruby、Rails 和 MySQL 完全陌生。我正在尝试启动一个新项目并启动默认服务器,但出现下面列出的错误。我安装了以下内容:

  • 红宝石:红宝石1.8.7(2008-08-11补丁级别72)[i686-darwin9.8.0]
  • 导轨:导轨(3.0.7)
  • MySql:mysql2(0.2.7)
  • 红宝石:1.7.2

错误如下:

我不太确定从这里去哪里,并且希望您能得到任何帮助。谢谢你。

0 投票
5 回答
12191 浏览

ruby-on-rails-3 - 为什么带有 Mysql2 Gem ActiveRecord::Base.connection.execute(sql) 的 Rails 3 返回 Array 而不是 Hash?

我正在将应用程序升级到 Rails 3。我决定使用 mysql2 gem。应用程序中有一些遗留代码可以进行如下调用:

在 2.3.x 版本中,它使用

但是对于 gem mysql2, results 是 type Mysql2::Result,它只有一个each方法。检查了文档,他们指定结果应该是字段名称上的哈希键。伟大的!

但实际上,它是一个Array,而不是一个Hash

当我使用 rails 控制台并实例化自己的控制台并Mysql2::Client在那里运行查询时,结果a Hash,这就是我想要的。

在 rails 应用程序中,我认为最好使用ActiveRecord::Base.connection,因为它是使用 database.yml 中的选项实例化的。

请注意,不幸的是结果没有映射到模型,所以我不能使用它。

我现在所做的是,例如:

这是丑陋的罪恶。

有谁可以让它返回一个哈希而不是数组?

0 投票
6 回答
15502 浏览

ruby-on-rails - 如何在 Windows 7 上的 Rails 3 应用程序中使用“mysql2”gem?

我尝试mysql2在 Windows 7 32 位上安装 gem。

我跑:

我收到以下错误:

有什么想法可能导致此错误,以及如何解决此问题?


更新

我按照这里的描述做了所有事情,但我不知道最后一步:

我知道我应该将路径更改为系统中的正确路径,但在我的 WAMP MySQL 安装中找不到lib\opt和目录。include我使用 WAMP 2.1。

请指教。

0 投票
5 回答
8777 浏览

mysql - 使用 RVM 在 Mac 上安装 mysql2 gem 真的很痛苦

第1步: -

第2步: -

结果: -

第三步:--

当前状态: -

红宝石-v

导轨-v

导轨 3.0.3

宝石清单

找到 mysql_config

捆绑显示 mysql2

找到 libmysqlclient.16.dylib

我该如何进行?

0 投票
1 回答
2185 浏览

ruby-on-rails - Rails 应用程序无法通过命名管道/套接字连接到本地 MySQL 服务器 --- Windows 7 x64

我正在尝试设置 Rails 应用程序以在我的本地计算机上使用 MySQL 服务器进行开发。我已经成功编译了mysql2针对 MySQLConnector/C 的 gem;尽管我在使用与我的 MySQL 服务器安装捆绑在一起的 libmysql.dll 时收到了同样的错误。当我尝试时rake db:create,应用程序无法连接到 MySQL 服务器。

MySQL 在我的机器上配置为 Windows 服务,通过命名管道自动启动本地连接;TCP-IP 已完全禁用。my.ini我的文件中的套接字名称是mysql.

database.yml的 Rails 应用程序文件如下所示:

开发:
适配器:mysql2
编码:utf8 重新连接:false
数据库:application_dev
池:5
用户名:root

密码: **********

主机:本地主机
套接字:mysql

测试:
适配器:mysql2
编码:utf8 重新连接:false
数据库:application_test 池:5
用户名:root

密码: **********

主机:本地主机
套接字:mysql

我收到的错误是:

D:\Dropbox\Programming\Ruby\application>rake db:create (in D:/Dropbox/Programming/Ruby/application) Can't connect to MySQL server on 'localhost' (10061) Couldn't create database for {"适配器"=>"mysql2", "encoding"=>"utf8", "reconnect"=>false, "database"=>"application_test", "pool"=>5, "username"=>"root", "密码"=>"**********", "host"=>"localhost", "socket"=>"mysql"}, charset: utf8, collat​​ion: utf8_unicode_ci

无法连接到 'localhost' 上的 MySQL 服务器 (10061) 无法为 {"adapter"=>"mysql2", "encoding"=>"utf8", "reconnec t"=>false, "database" 创建数据库=>"application_dev", "pool"=>5, "username"=>"root", "password"=>"**********", "host"=>"localhost", " socket"=>"mysql"},字符集:utf8,排序规则:utf8_unicode_ci

我正在使用带有以下 Ruby/Rails/MySQL 发行版的 Windows 7 Home Premium 64 位:

ruby 1.9.2p180 (2011-02-18) [i386-mingw32]

Rails 3.0.7

mysql2 rubygem 0.2.7

mysql Ver 14.14 Distrib 5.5.11, for Win32 (x86)

mysql Connector/C 6.0.0

我试过重新安装 MySQL 服务器并启用 TCP-IP 连接,它只是挂起而不是失败。

0 投票
2 回答
8552 浏览

ruby-on-rails-3 - 在 80 端口启动 webrick(mysql2 gem 问题)

我试图让我的 webrick 在端口 80 中服务。我试过:

但访问被拒绝。后来明白了,使用1-1024端口需要root权限,所以我尝试了这个

但是,这次我得到了一个 mysql2 错误。不知道这里发生了什么。我试图运行:

它工作正常,我认为这与root和mysql2有关。任何人都可以帮忙吗?

以下是控制台中的错误消息:

/Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle:dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2. bundle, 9): Library not loaded: libmysqlclient.18.dylib (LoadError) 引用自:/Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle 原因:找不到图像- /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle 来自 /Library/Ruby/Gems/1.8/gems/mysql2-0.2.7/lib/mysql2.rb:8 来自/Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:in require' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:inrequire'来自/Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/ bundler/runtime.rb:66:in each' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:66:inrequire' 来自 /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:in each' from /Library/Ruby/Gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:inrequire' 来自 /Library/Ruby/Gems/ 1.8/gems/bundler-1.0.12/lib/bundler.rb:120:inrequire' from /Users/ccool2486/Sites/fs2_test/config/application.rb:7 from /Library/Ruby/Gems/1.8/gems/railties-3.0.6/lib/rails/commands.rb:28:in需要'来自 /Library/Ruby/Gems/1.8/gems/railties-3.0.6/lib/rails/commands.rb:28 来自 /Library/Ruby/Gems/1.8/gems/railties-3.0.6/lib/rails /commands.rb:27:intap' from /Library/Ruby/Gems/1.8/gems/railties-3.0.6/lib/rails/commands.rb:27 from script/rails:6:in来自脚本/rails:6

0 投票
9 回答
26173 浏览

mysql - 无法安装 mysql2 gem

我无法在我的 Windows7 x64 系统中安装 mysql2 gem。我尝试同时使用 32 位和 64 位版本的 MySQL 服务器,但没有一个能让我更进一步。

我安装了 Ruby 1.8、开发工具包和 Rails 平台。我什至安装了 minGW 来允许 C++/C 编译东西。MySQL 服务器安装在默认位置。

运行命令时:

我从控制台收到以下输出:

根据 Rubygems,我的环境的输出是:

系统上还安装了以下 gem:

我不知道有什么遗漏或错误,但脚本指向的输出文件包含以下数据:

mkmf.log:

gem_make.out:

我希望有人能指出我做错了什么,或者我的开发系统中实际上缺少什么来正确安装和工作这个 gem。

0 投票
3 回答
11403 浏览

mysql - 为 Ruby 安装 MySQL2 适配器

我在连接到 MySQL 时遇到了一些错误,它的修复导致我升级了 mysql2 gem。

我运行这个命令来安装 mysql2:

现在“宝石列表”显示了这个宝石:mysql2 (0.3.2)

但我认为它仍然不是我的应用程序环境的一部分,因为服务器给出了这个错误:

我有 RVM,并且我使用 bundler 为这个应用程序制作了一个 gemset。如何将 mysql2 添加到此应用程序的 gemset?

这是我的宝石文件:

这是我的 MySQL 适配器版本:

$ rvm gemdir /home/agenadinik/.rvm/rubies/ruby-1.9.2-p180/bin/gem:4:警告:路径中不安全的世界可写目录 /home/agenadinik,模式 040777 /home/agenadinik/.rvm/宝石/ruby-1.9.2-p180

0 投票
2 回答
6837 浏览

ruby-on-rails - 捆绑命令错误的 mysql2 gem(总是 0.3.2)

尝试运行 $rails 控制台时出现错误

嗯...所以我尝试卸载 mysql2 gem,然后重新安装版本 0.2.7 gem

我改变了gemfile:

在我的应用程序目录中运行 Bundler:

但它又重新安装了 0.3.2 版!!!谁能帮忙,老实说,我不知道这里发生了什么。

0 投票
2 回答
1240 浏览

ruby - 使用 archflag 和版本 mysql2 安装 gem

沮丧的。这是错的吗?

env ARCHFLAGS="-arch x86_64" sudo gem install mysql2 --version '0.2.6' -- --with-mysql-config=/usr/local/mysql/bin/mysql_config

想安装 0.2.6

为什么它一直在安装 0.3.2????