`
newpeter
  • 浏览: 39294 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

windows下配置Ruby on Rails和mysql驱动

阅读更多

本文只限Window用户。

今天闹腾了半天,总算把ROR环境和Ruby-Mysql的驱动搞定。整理此文,献给和我一样入门的新手,希望能帮助大家早点配置好Ruby相关环境早点踏上Ruby的征途。

注意: ruby 的资源都可以在  http://rubyforge.org/  搜索到。

搜索方法:在主页右上角,选择"Software/Group",输入"软件名称",点击"Search"按钮。

1、安装Ruby,http://rubyforge.org/projects/rubyinstaller/ 找到"最新发布项目",点击"下载",进入下载列表页面。

该页面列出了Ruby当前的所有版本,写本文时最新版本是:1.8.6-25。版本发布日期:2007-03-18

2、下载"ruby186-25.exe",大约22M。然后安装。One-Click Installer 一键安装,很适合新手。

3、学过Java的都知道,接下来需要配置ClassPath,在环境变量中新增环境变量名"RUBY_HOME",变量值"D:\ruby",该值以本机Ruby安装目录为准。然后在 path 加入"%BURY_HOME%\bin"。

4、测试Ruby是否安装成功

在命令行下运行 ruby -v ,显示如下:

ruby 1.8.6 (2007-03-13 patchlevel 0) [i386-mswin32]

如果不放心,再运行 ruby -e 'puts "hello world"'  ,显示如下:

hello world

至此,Ruby的安装告一段落,接下安装 Rails。

5、安装Rails之前需要按顺序安装以下模块:

activesupport   http://rubyforge.org/projects/activesupport

activerecord      http://rubyforge.org/projects/activerecord

actionpack        http://rubyforge.org/projects/actionpack

actionmailer      http://rubyforge.org/projects/actionmailer

actionwebservice(简称aws) http://rubyforge.org/projects/aws

最后才是 rails

rails               http://rubyforge.org/projects/rails/

注意: Rails版本与这五个模块版本要匹配才可以正确安装。

这里共享一下怎么匹配版本的方法。(以Rails

一、下载Rails 1.2.3.gem,在D:\rails目录下。

  在命令行下进入"D:\rails",运行 gem install rails-1.2.3.gem  ,命令行会显示出错信息,仔细看该信息,你会发现

  该信息中会提示在安装 rails之前必须安装 "activesupport -1.4.2",连安装模块的名称和具体版本都列出来了。

  安装好"activesupport-1.4.2"之后,继续上一步骤,这次会提示安装"activerecord-1.15.3",其他模块的步骤都一样。

二、仔细看Rails 1.2.3版本的发布日期,是"2007-03-13"。因为这五个模块一般是和Rail同步发布的。你只需要在下载列表

  中找到对应发布日期的模块下载即可。如果不是同一天,自然是找时间相隔最近的版本

到此,RoR环境告一段落。再推荐一篇文章,本人Ror环境之前也得益于该文档。

 http://www.iteye.com/topic/35929       关于Rails入门可以参考一下

6、这个才是本文的重点,关于 Mysql数据库驱动配置,我的弯路就是在这里折腾的。

一、安装Mysql 5.0, http://dev.mysql.com/downloads/mysql/5.0.html 下载一个 Windows (x86) ZIP/Setup.EXE,如果是64位操作系统,请下载对应的版本。 我用的是 AMD64/WinXP

二、安装mysql时,记得字符编码要选择"utf-8",我之前用的gb2312,命令行读取没问题,但是用Ruy读出来的都是乱码。

三、在Mysql安装目录的 bin 目录下,找到 ibmySQL.dll ,将该文件Copy到 Ruby安装目录的 bin目录中。这里也有一个版本的问题。我数据库用的是Mysql 5.0.41,每次操作数据库都会报"内存分配错误",没办法,只好 使用Mysql 5.0.37的 ibmySQL.dll 文件,问题解决。

四、http://rubyforge.org/projects/mysql-win ,下载 mysql-2.7.3-mswin32.gem ,这是 mysql_Ruby驱动程序。

命令行,进入该文件所在目录,运行 gem install mysql-2.7.3-mswin32.gem ,安装成功即可。

  你也可以在 mysql官方网站下载 ruby的驱动,该网站附带安装步骤,API文档。

五、测试 mysql 驱动程序。

  新建 mytest..rb ,代码如下:

ruby 代码
  1. require 'mysql'   
  2. begin  
  3.   dbh = Mysql.real_connect("localhost""root""root""library",3306)    
  4.   
  5. ## 创建表,插入计录,查询计录   
  6. dbh.query("drop table if exists test_rb")   
  7. dbh.query("create table test_rb(id int,name char(20))")   
  8. dbh.query("insert into test_rb values(1,'张三'),(2,'李四')")   
  9. printf "%d rows were inserted\n",dbh.affected_rows   
  10.   
  11.   res = dbh.query("SELECT name FROM test_rb")    
  12. puts "========\n"  
  13. while row = res.fetch_row do    
  14. printf "%s, %s\n", row[0], row[1]    
  15. end    
  16. puts "========\n"  
  17. puts "Server version: " + dbh.get_server_info    
  18. rescue Mysql::Error => e    
  19. puts "Error code: #{e.errno}"    
  20. puts "Error message: #{e.error}"    
  21. puts "Error SQLSTATE: #{e.sqlstate}" if e.respond_to?("sqlstate")    
  22. ensure    
  23. dbh.close if dbh    
  24. end   
 在命令行运行 ruby mytest.rb  ,结果如下:

2 rows were inserted
========
张三,
李四,
========
Server version: 5.0.41-community-nt

 

 

分享到:
评论
10 楼 zhuangj 2008-04-25  
[color=cyan][/color][size=small][/size][align=left][/align]LZ好东西
9 楼 newpeter 2007-06-24  
xiaoqiu369 写道
我按你的步骤做,出现了以下问题.C:/Documents and Settings/Administrator/user/demo/test.rb:16: uninitialized constant Mysql (NameError)

我这个例子有数据库访问操作。自然你需要建立数据库library,端口:3306。 表就不用创建了。

楼上说的InstantRails,我安装过,的确很省事。该有的都有。
但我自己一个一个安装,也可以多学点,毕竟写这篇文章时,也刚学习配置ruby环境。但作为新手,折腾自己是个必经过程。
8 楼 jwlhl 2007-06-20  
是生产环境还是开发环境?

如果是开发环境,直接下载InstantRails,解压之后ruby、rails、apache、mysql什么都有了,甚至还有phpMyAdmin来做mysql的管理,而且都已经配置好了,直接可以用。

而且就算是生产环境,也可以用gem在线安装rails及其所有依赖的包吧,为什么要这样一个一个手动下载来安装呢?是因为网速的原因么?
7 楼 netfishx 2007-06-13  
jack 写道
如果我没有记错的话,安装mysql,安装rails之后,直接就可以连接mysql了。无需额外操作,不太明白为什么还需要那么多额外的操作

生产环境额外安装mysql驱动有意义,那是c的实现吧

不过楼主的方式实在是。。。
6 楼 Readonly 2007-06-13  
下载 InstantRails,然后...没有然后了...
5 楼 jack 2007-06-13  
如果我没有记错的话,安装mysql,安装rails之后,直接就可以连接mysql了。无需额外操作,不太明白为什么还需要那么多额外的操作
4 楼 xiaoqiu369 2007-06-13  
楼上说的是何意?因为刚接触这东西,不了解.
require_gem "mysql"
begin
  dbh=Mysql.real_connect("localhost","root","admin","test",3306)
  dbh.query("drop table if exists test_rb")
  dbh.query("create table test_rb(id int,name varchar(20))")
  dbh.query("insert into test_rb values(1,'ss')")
  dbh.query("insert into test_rb values(1,'aaa')")
  printf "%d rows were inserted\n",dbh.affected_rows
 
  res=dbh.query("SELECT name FROM test_rb")
  puts "===============\n"
  while row=res.fetch_row do
  printf "%s,%s\n",row[0],row[1]
  end
  puts "================\n"
  puts "Server version:"+dbh.get_server_info
  rescue Mysql::Error=>e
  puts "Error code:#{e.errno}"
  puts "Error message:#{e.error}"
  puts "Error SQLSTATE:#{e.sqlstate}" if e.respond_to?("sqlstate")
  ensure
  dbh.close if dbh
end
改成这样就可以了.但是不知道是什么原因.
3 楼 jack 2007-06-13  
用mysql有这么复杂吗?
2 楼 netfishx 2007-06-13  
暴寒,这是故意折腾自己吗
1 楼 xiaoqiu369 2007-06-13  
我按你的步骤做,出现了以下问题.C:/Documents and Settings/Administrator/user/demo/test.rb:16: uninitialized constant Mysql (NameError)

相关推荐

    ruby on rails与MySql的环境配置——支持rails 2.3.5以上版本

    本文将详细介绍如何在Windows环境下配置Ruby on Rails以支持Rails 2.3.5及以上版本,并与MySQL进行无缝对接。 首先,我们需要安装Ruby for Windows。你可以从RubyForge网站上下载最新的One-Click Installer版本,...

    ruby on rails最新版

    Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。Rails以其“约定优于配置”(Convention over Configuration)...

    Ubuntu 11.04安装Ruby on rails 连接MySQL数据库.pdf

    ### Ubuntu 11.04下Ruby on Rails与MySQL数据库集成指南 #### 一、安装与配置MySQL数据库 在Ubuntu 11.04环境中,安装MySQL数据库是部署Ruby on Rails应用的重要步骤之一。首先,通过打开终端并执行以下命令进行...

    windows下Ruby On Rails的构建

    在Windows环境下搭建Ruby on Rails开发环境,需要经过几个关键步骤,包括安装Ruby、配置环境、安装Rails以及确保所有组件能够正常工作。以下是详细的构建过程: 首先,我们需要在Windows上安装Ruby。Ruby是一种开源...

    ruby on rails对mongodb的操作

    在Ruby on Rails框架中,开发人员经常选择使用关系型数据库如SQLite、PostgreSQL或MySQL来存储数据。然而,随着NoSQL数据库的兴起,MongoDB因其灵活性和非结构化数据处理能力,也成为了许多Web应用程序的选择。本文...

    ruby on rails社区网站开发源码

    Ruby on Rails,简称Rails,是由David Heinemeier Hansson创建的一个开源Web应用程序框架,它基于Ruby编程语言。这个框架以其MVC(Model-View-Controller)架构、约定优于配置(Convention over Configuration)的...

    ruby on rails 学习资料

    "ruby on rails 学习资料pdf"可能是综合性的学习指南,包含了从初学者到进阶者的各种主题,包括Rails的安装和配置、模型关系、控制器逻辑、视图渲染、部署到生产环境等。 "ruby on rails环境搭建.doc"会详细指导你...

    [Ruby on Rails][数据库] 03. [Windows] MySQL安装

    [Ruby_on_Rails][資料庫]_03._[Windows]_MySQL安裝

    Ruby on Rails环境搭建(基于WinXP & RadRails)

    在本教程中,我们将深入探讨如何在Windows XP操作系统上搭建Ruby on Rails开发环境,特别强调使用RadRails作为集成开发环境(IDE)。Ruby on Rails(RoR)是一个强大的Web应用程序框架,它基于Ruby编程语言,提供了...

    Ruby on rails 数据库详细配置

    以下将详细介绍如何在Windows环境下安装Ruby on Rails以及配置数据库。 首先,我们需要安装Ruby环境。可以从RubyForge网站下载最新版本的Ruby One-Click Installer。在安装过程中,确保正确设置了安装路径,并且...

    Linux系统平台上安装和配置Ruby on Rails

    在Linux系统上安装和配置Ruby on Rails是一个常见的任务,特别是在开发Web应用程序时。Ruby on Rails(RoR)是一个基于Ruby语言的开源Web应用框架,它遵循模型-视图-控制器(MVC)架构模式,强调简洁和生产力。在...

    ruby on rails 环境搭建

    在Windows下,如果选择使用MySQL数据库,还需要单独安装MySQL服务器并配置相应的数据库连接。 在Ruby on Rails环境中,开发者可以创建、运行、测试和部署Web应用。RoR的便利性在于其“约定优于配置”的原则,使得...

    ruby on rails 教程

    - **数据库设置**:详细阐述了如何安装和配置MySQL数据库,以及如何在Ruby环境中安装MySQL的绑定库,确保Rails应用能够顺利连接数据库。 #### 数据库迁移:Migration机制详解 文档深入探讨了Rails中的数据库迁移...

    Ruby On Rails傻瓜书

    - **社区交流**:加入Ruby on Rails相关的论坛和社区,与其他开发者互动学习。 #### 四、结语 《Ruby on Rails傻瓜书》是一本非常适合初学者入门的书籍,它不仅覆盖了基础知识,还提供了很多实践指导。通过这本书的...

    教学级Ruby On Rails 手动安装.pdf

    尽管Ruby on Rails提供了丰富的功能和高效的工作流,但初次安装配置可能会让新手感到困惑。通过上述步骤,您可以手动完成Ruby on Rails的环境搭建,从而开启Rails开发之旅。记住,良好的开发环境是项目成功的基石,...

    Ruby+on+Rails快速Web应用开发实战.pdf

    总结以上内容,Ruby on Rails快速Web应用开发实战的文档详细介绍了Ruby编程语言和Rails框架的安装、配置以及使用。它涵盖了从Rails的历史和版本发展到如何在不同操作系统上安装Rails,再到如何使用Rails进行Web应用...

    ruby on rails开发

    Ruby on Rails,简称Rails,是一种基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码可读性。本教程将深入探讨Ruby on Rails的环境搭建,帮助你快速入门。 1...

    ruby on rails实践

    Ruby on Rails(简称Rails)是一种基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。本实践指南将深入探讨Rails的核心概念、关键特性以及如何在...

Global site tag (gtag.js) - Google Analytics