zoukankan      html  css  js  c++  java
  • 在OS X系统中配置Ruby on Rails使其可以访问Sql Server数据库

    经过大半天的折腾,终于可以让RoR在OS X系统里访问Sql Server数据库了。这里记录一下操作的过程,免得以后忘了。

    第一步,安装FreeTDS

    从FreeTDS的官网上下载最新的稳定版的压缩包,然后,遵照这里的说明进行手工编译(好怀念微软的Setup.exe和*.msi啊),其中只需要前7步:

    1. Download the latest stable release of freetds.
    2. Extract freetds tgz file within Downloads
    3. Open terminal and cd to Downloads/freetds-0.** folder
    4. run “./configure”
    5. run “cp /usr/bin/glibtool libtool” <----Important!
    6. run "sudo make"
    7. run "sudo make install"

    这样,我们的FreeTDS就算是装好了。

    第二步, 安装Tiny_TDS

    就在命令行里执行: gem install tiny_tds

    不要问我gem从哪里来的,google一下gem就会找到很多信息。在OS X里,gem是内置的。呵呵。

    注意,如果没有安装FreeTDS的话,tiny_tds也肯定会安装失败,因为它依赖FreeTDS

    第三步, 安装 activerecord_sqlserver_adapter

    同样,只需要在命令行里执行: gem install activerecord_sqlserver_adapter

    第四步, 修改RoR项目根目录下的Gemfile文件,增加一下2句:

    gem 'tiny_tds'

    gem 'activerecord_sqlserver_adapter'

    第五步,运行bundle install

    在命令行里运行 bundle install,运行完毕之后会输出很多Using语句,看看tiny_tds和activerecord_sqlserver_adapter是否包含在里面,应该都包含在里面才正确。

    第六步,修改database.yml

    打来RoR项目根目录下、config子目录下的database.yml文件,根据需要修改配置,比如:

    development:

    adapter: sqlserver

    mode: dblib

    dataserver: 10.4.30.77\Sql2005   # Name from freetds.conf, host or instance 'localhost\SQLEXPRESS'

    host: 10.4.30.77          # Used if dataserver is blank.

    port: 1433              # Used if host present. Default is 1433.

    database: ALO_DB

    username: db_user

    password: xxxx

    timeout: 5000

    azure: false # for windows azure

    最后,大功告成

    可以创建model了: rails generate model MyShipper ShipperID:int ShipperName:string

  • 相关阅读:
    linux中如何修改文件夹的用户权限 chown命令
    httpserver
    协程
    进程和线程的区别和联系
    python线程的GIL问题(全局解释器锁)
    线程同步互斥的方法
    threading模块创建线程
    信号量(信号灯)
    信号通道
    内存共享
  • 原文地址:https://www.cnblogs.com/Ricky81317/p/2394299.html
Copyright © 2011-2022 走看看