Windows 10下在Ruby 2.5.1 with Devkit中安装mysql-2.9.1.gem

1、Windows中加工数据有时候需要借助关系数据库,而使用Ruby DBI操作MySQL是最快捷的办法;

2、mysql-2.9.1已经停止维护,随着Ruby的升级需要变更一些内容才能通过本地代码的编译;

3、下载mysql-2.9.1.gem,链接在这里https://rubygems.org/downloads/mysql-2.9.1.gem

4、将下载的gem包解包到本地目录;

gem unpack mysql-2.9.1.gem

5、生成gemspec;

gem spec mysql-2.9.1.gem --ruby > mysql-2.9.1/mysql-2.9.1.gemspec

6、进入mysql-2.9.1目录,编辑ext\mysql_api\mysql.c文件,搜索rb_cFixnum文本串,找到1320行,将对该类型的判断注释掉:

else if (argv[i] == rb_cNumeric || argv[i] == rb_cInteger /*|| argv[i] == rb_cFixnum*/)

7、回退到初始解压的目录,重新build包;

gem build mysql-2.9.1.gemspec

8、下载编译本地代码的msql开发工具包,链接如下http://dev.mysql.com/get/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-winx64.zip

9、解压mysql-connector-c-noinstall-6.0.2-winx64.zip待用,拷贝下解压目标的目录,如D:\Workshop\test\mysql-connector-c-noinstall-6.0.2-winx64;

10、安装本地gem包;

gem install mysql-2.9.1.gem -- --with-mysql-dir=D:\Workshop\test\mysql-connector-c-noinstall-6.0.2-winx64

11、拷贝libmysql.dll至Ruby的bin目录下,保障DBI驱动载入时扩展代码可以找到该动态库;

12、这时就可以正式安装dbd-mysql驱动了;

gem install dbd-mysql

13、编写代码测试!

#encoding:gbk

require 'dbi'

dbh = DBI.connect('dbi:Mysql:mysql:hostname','user','pass')
dbh.execute('select host from user') do |stmt|
	while row=stmt.fetch
		puts row['host']
	end
end
dbh.disconnect

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值