在Windows Vista上安装Ruby on Rails和配置MySQL

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:  安装Ruby On Rails  1. 下载Ruby,我用的是1.8.6,下载地址:http://rubyforge.org/frs/?group_id=167。下载后直接双击安装就可以了。  2. 在命令行窗口中,运行gem命令,看是否已经包含了rubygems。

 安装Ruby On Rails

 1. 下载Ruby,我用的是1.8.6,下载地址:http://rubyforge.org/frs/?group_id=167。下载后直接双击安装就可以了。

 2. 在命令行窗口中,运行gem命令,看是否已经包含了rubygems。如果没有,则下载,然后运行ruby setup.rb安装;若已经包含,进入第3步。

 3. 在命令行窗口中,直接运行gem install rails开始安装Rails。

 4. 运行rails myapp就可以创建一个名称myapp的ROR程序。

这样就完成了Ruby On Rails的安装,并且创建了myapp程序,接下来就为其添加MySQL数据库支持。

 

安装MySQL

1. 下载MySQL(http://dev.mysql.com/downloads/mysql/5.1.html#win32),这里使用的MySQL5.1.31.

2. 安装MySQL,并配置MySQL,其中要选中Include Bin Directory in Windows PATH。

3. 创建数据库。运行MySQL Command Line Client,登录后运行:

    mysql> create database myapp_development;

 

配置MySQL

1. 首先运行gem install mysql命令,绑定mysql数据库。

2. 编辑myapp目录中config/database.yml文件。其中默认的可能是SQLite数据库,这里修改为MySQL数据库,以development为例:

development: adapter: mysql encoding: utf8 database: myapp_development username: root password: root

3. 注意这时候应该重启电脑,否则如果直接启动服务器,访问http://localhost:3000,页面上就弹出libmysql.dll错误提示。重启后,再访问就可以在首页中看到环境信息,如下:

Ruby version 1.8.6 (i386-mswin32)
RubyGems version 1.3.1
Rails version 2.2.2
Active Record version 2.2.2
Action Pack version 2.2.2
Active Resource version 2.2.2
Action Mailer version 2.2.2
Active Support version 2.2.2
Application root D:/rails/myapp
Environment development
Database adapter mysql
Database schema version 10

  TroubleShooting

 数据库已经连上了,下面就是创建数据库表了。由于已经在Ubuntu上创建过类似程序,这里就把编写Migration文件的步骤和时间省去了,直接运行rake db:migrate,就在这时问题出现了。问题表现出两种情况:

  1. 错误信息为

(in D:/rails/myapp)
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
** Execute db:migrate
rake aborted!
undefined method `each' for #<Mysql:0x5cdda84>

在该种情况中,可能会有部分migration运行成功,但是并不能顺利执行。

2. 错误信息中包含了:ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/core_ext/module/introspection.rb:73: [BUG] Segmentation fault

无论这两种情况有时候会交替出现,当然导致的结果就是migration不能顺利执行。

 

原因分析:MySQL中包含的libmysql.dll不能正常运行。

 

解决方法:
替换自带的libmysql.dll,该方法已验证,下载地址:http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll 保存到ruby安装目录的bin中。
重新运行rake db:migrate,终于看到了

(in D:/rails/myapp)
==  AddInitialData: migrating =================================================
==  AddInitialData: migrated (0.2270s) ========================================

==  AddUserData: migrating ====================================================
==  AddUserData: migrated (0.1280s) ===========================================

==  CreateSessions: migrating =================================================
-- create_table(:sessions)
   -> 0.0810s
-- add_index(:sessions, :session_id)
   -> 0.2780s
-- add_index(:sessions, :updated_at)
   -> 0.2270s
==  CreateSessions: migrated (0.6020s) ========================================

==  CreateAppliances: migrating ===============================================
-- create_table(:appliances)
   -> 0.0550s
==  CreateAppliances: migrated (0.0590s) ======================================

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
6月前
|
人工智能 IDE 开发工具
JetBrains RubyMine 2025.1 发布 - 最智能的 Ruby 与 Rails IDE
JetBrains RubyMine 2025.1 (macOS, Linux, Windows) - 最智能的 Ruby 与 Rails IDE
144 30
JetBrains RubyMine 2025.1 发布 - 最智能的 Ruby 与 Rails IDE
|
前端开发 测试技术 数据库
使用Ruby on Rails进行快速Web开发的技术探索
【8月更文挑战第12天】Ruby on Rails以其高效、灵活和易于维护的特点,成为了快速Web开发领域的佼佼者。通过遵循Rails的约定和最佳实践,开发者可以更加专注于业务逻辑的实现,快速构建出高质量的Web应用。当然,正如任何技术框架一样,Rails也有其适用场景和局限性,开发者需要根据项目需求和个人偏好做出合适的选择。
|
SQL 安全 数据库
Ruby on Rails 数据库迁移操作深度解析
【7月更文挑战第19天】Rails 的数据库迁移功能是一个强大的工具,它帮助开发者以版本控制的方式管理数据库结构的变更。通过遵循最佳实践,并合理利用 Rails 提供的迁移命令和方法,我们可以更加高效、安全地管理数据库结构,确保应用的稳定性和可扩展性。
|
前端开发 测试技术 API
揭秘Ruby on Rails的神秘力量:如何让你的Web应用飞起来?
【8月更文挑战第31天】Ruby on Rails(简称RoR)是一个基于Ruby语言的开源Web应用框架,自2005年发布以来,因简洁的语法、强大的功能和高效的开发效率而广受好评。RoR采用MVC架构,提高代码可读性和可维护性,拥有庞大的社区和丰富的库支持。本文通过示例代码展示其强大之处,并介绍RoR的核心概念与最佳实践,帮助开发者更高效地构建Web应用。
368 0
|
前端开发 API C++
在Ruby世界中寻找你的Web框架灵魂伴侣:Rails vs Sinatra
【8月更文挑战第31天】在Ruby的世界里,选择Web框架如同挑选衣物,需根据场合和需求。Rails与Sinatra是两大热门框架,前者以其“约定优于配置”理念和全面的功能成为企业级应用的首选;后者则以轻量级和灵活性著称,适用于快速原型开发和小规模应用。通过对比两者特性,如Rails的MVC架构与Sinatra的简洁API,我们可以看到它们各有所长。选择合适的框架,如同找到旅途中的最佳伙伴,让开发之路更加顺畅愉悦。这场探索之旅教会我们,没有绝对的好坏,只有最适合的选择。
162 0
|
安全 前端开发 数据安全/隐私保护
如何在Ruby on Rails中打造坚不可摧的OAuth认证机制
【8月更文挑战第31天】在构建现代Web应用时,认证与授权至关重要。本文介绍如何在Ruby on Rails中实现OAuth认证,通过使用`omniauth`和`devise` gems简化流程。首先安装并配置相关gem,接着在`User`模型中处理OAuth回调,最后设置路由及控制器完成登录流程。借助OAuth,用户可使用第三方服务安全地进行身份验证,提升应用安全性与用户体验。随着OAuth标准的演进,这一机制将在Rails项目中得到更广泛应用。
136 0
|
前端开发 测试技术 数据库
Ruby on Rails:快速开发Web应用的秘密
【6月更文挑战第9天】Ruby on Rails,一款基于Ruby的Web开发框架,以其高效、简洁和强大备受青睐。通过“约定优于配置”减少配置工作,内置丰富功能库加速开发,如路由、数据库访问。活跃的社区和海量资源提供支持,MVC架构与RESTful设计确保代码清晰可扩展。高效的数据库迁移和测试工具保证质量。Rails是快速构建Web应用的理想选择,未来将持续影响Web开发领域。
|
开发框架 安全 前端开发
使用Ruby on Rails进行快速Web开发
【5月更文挑战第27天】Ruby on Rails是一款基于Ruby的高效Web开发框架,以其快速开发、简洁优雅和强大的社区支持著称。遵循“约定优于配置”,Rails简化了开发流程,通过MVC架构保持代码清晰。安装Ruby和Rails后,可使用命令行工具创建项目、定义模型、控制器和视图,配置路由,并运行测试。借助Gem扩展功能,优化性能和确保安全性,Rails是快速构建高质量Web应用的理想选择。
|
监控 数据可视化 前端开发
使用Ruby on Rails构建的员工上网行为监控Web应用
我们开发了一款基于Ruby on Rails的员工上网行为监控Web应用,帮助企业保护数据安全和确保员工生产力。该应用利用Rails的MVC架构和Active Record管理数据库,通过网络代理和JavaScript追踪员工网络活动。数据收集后,应用进行分析和可视化,以便识别异常行为。此外,借助Rails的后台任务和Sidekiq gem,实现数据自动化处理和定时更新,为公司提供实时监控反馈。
403 2
|
缓存 前端开发 测试技术
框架分析(6)-Ruby on Rails
框架分析(6)-Ruby on Rails

推荐镜像

更多