タグ

Railsとdbに関するlarkerのブックマーク (8)

  • attr_encrypted gem の紹介

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    attr_encrypted gem の紹介
  • 新しいマイグレーションを追加してテーブルを変更 - Ruby on Rails入門

    モデルを作成することで自動的にテーブルを作成するためのマイグレーションスクリプトが作成されますが、作成したテーブルにカラムやインデックスを追加するといった変更についてもマイグレーション機能を使って行なうことができます。ここでは新しいマイグレーションスクリプトを作成してテーブルに変更を加える方法について解説します。 1.マイグレーションスクリプトの作成 2.カラムの追加と削除の場合 3.マイグレーションスクリプトの削除 4.マイグレーションスクリプトの実行 マイグレーションスクリプトの作成 マイグレーションを使ってテーブルに変更を行う場合、以前のマイグレーションスクリプトを修正するのではなく、変更を加える為の別のマイグレーションスクリプトを作成し実行します。 モデルを作成する時に自動で作成されるものではなく、新しくマイグレーションスクリプトを作成するには次のように実行します。 rails g

    larker
    larker 2014/10/14
    migrate
  • ActiveRecordのコネクションプーリングをやめてみる - kaeruspoon

    おおいしつかさ 旅行とバイクとドライブと料理と宇宙が好き。 Ubie Discoveryのプログラマ。 関連 : RailsMysqlスレーブ群をロードバランサ経由で使用できる、FreshConnectionを作り始めました RailsのActiveRecordは、DBとのコネクションがプールされます。 アクセスごとにコネクションをはりなおすよりは、オーバーヘッドがない分、理にかなっているようにも思えます。 ただ、比較的大きめなサイトになってくると、はりっぱなしのコネクションが多くなりすぎちゃって大変なことになってきます(1サーバ1万コネクションとかなりかねない)。リソースはうし、たくさんのスレーブを抱えているときにActsAsReadonlyableなどでちまちまやっていたらとても運用できません。スレーブなんてLVS+keepalivedでバランシングしちゃいたいところ。でもコネクシ

  • [rails]establish_connectionで接続先DBを変更する。

    module CustomConnection def establish_connection_to_other case Rails.env when "development" establish_connection :other_development when "test" establish_connection :other_test when "staging" establish_connection :other_staging when "production" establish_connection :other_production end end end ActiveRecord::Base.send(:extend, CustomConnection)

  • [rails] ActiveRecord3の connection_pool の挙動を調べた - よしだメモ

    的にRailsでは単一のDBを使用するように設計されています。とはいえ負荷軽減のためだったり、あるいは様々なしがらみのために複数のDBに接続しなければいけない場合がたまにあったりすると思います。しかも残念な事に違うDBに同じ名前のテーブルがあったりしてどうすんだよコレとなることも無いとは言えないでしょう。 ActiveRecord が connection pool に対応したのは知識としては知っていましたが複数のDBに実際につなぎにいったばあい connection はどうなるの?と疑問に思ったので調べてみました。 # activerecord-3.0.3/lib/active_record/connection_adapters/abstract/connection_specification.rb 51行目 - 82行目 def self.establish_connectio

    [rails] ActiveRecord3の connection_pool の挙動を調べた - よしだメモ
    larker
    larker 2013/10/03
    ActiveRecordについて
  • [Rails3] ActiveReocrdで外部DBを使う

    Railsでは基的に1つのDBを使用するように設計されています。デフォルトで使用するDBは config/database.yml 内で、実行モード(Rails_Env:development/test/production)別にDBが指定されていますが、これらのデフォルトのDB以外のDBに接続するやり方です。 用途としては例えば、他のシステムで使用しているユーザテーブルを参照する(いわゆるレガシーDBというやつですね)、アクセスログデータを別のサーバ上に保管する、などといった場合があるでしょう。 ここで想定する外部DB/テーブルの条件使用しているデータベースのアダプタがある MySQL, PostgreSQL, SQLite3, Oracle, DB2, SQL Server, ... 使用するテーブルに、整数型の単独の主キーが存在する Railsアプリケーションのサーバからアクセスが

    larker
    larker 2013/10/03
    establish_connection
  • Railsで複数のデータベースを使用する | TECHSCORE BLOG | TECHSCORE BLOG

    こんにちは、鈴木です。 Ruby on Rails で複数のデータベースを扱う方法をご紹介します。 establish_connection establish_connection はデータベースと接続するためのメソッドです。 通常は明示的に呼び出すことはありませんが、複数のデータベースを使用する場合は、以下のように明示的に呼び出す必要があります。 class User < ActiveRecord::Base establish_connection :adapter => 'postgresql', :encoding => 'unicode', :database => 'other_database', :pool => '5', :username => 'USERNAME', :password => 'PASSWORD', :host => 'localhost' end

    larker
    larker 2013/10/03
    複数DBの指定の仕方
  • ヽ( ・∀・)ノくまくまー(2005-08-17) Migration

    ● [rails] Migration データベースのスキーマ(変更)を管理する機能です。もれなくこんな特典がついてきます。 運用環境でアプリケーションのバージョンを上げるときに、スキーマ変更の漏れがなくなる。 共同開発者がいる場合、rake 一発で自分のところにスキーマ変更を反映できる。(svn update と rake migrate はワンセット♪) バージョンコントロールされるので、Migrationで管理している任意の時点のスキーマに戻すことが可能。 スキーマ変更は ActiveRecord::Migration のサブクラスを作って定義します。リビジョン管理していますので、各バージョン毎に1つのクラスを追加することになります。そのクラスの中で定義した up, down というクラスメソッドの内容が、それぞれアップグレードとダウングレード時の処理として実行されます。Rails

    larker
    larker 2006/02/03
    データベースのスキーマ(変更)を管理する機能など
  • 1