db tech showcase 2016 Tokyo で発表した資料です。MySQL 5.7の新機能のうち、InnoDBについてまとめてあります。Read less
2016 - 06 - 20 Dockerで開発環境のMySQLと同じデータを手軽にローカル環境でも利用する Docker MySQL DevOps Microservicesを運用していると、サービス毎にDBを持つことになってどうしても扱うDBや スキーマ が多くなってしまいます。 開発環境の MySQL ( AWS ならRDS)に直接接続するならまだしも、DBはローカルにもって好き勝手に使ったり、汚したりスクラップしたりしたいですよね。 というわけで、Dockerを使ってカジュアルにその環境を作ってみました。 やりたいこと やりたいことを以下の図のような感じ。 docker runで MySQL のコンテナを起動する コンテナ起動時に任意のRDSから ダン プを取得し、コンテナ内の MySQL にリストアする(もちろんRDSでも AWS でもなくて良い) 使う 再度docker run
さらば、愛しき論理削除。MySQLで大福帳型データベースを実現するツール「daifuku」を作ってみた 先のエントリ「論理削除はなぜ「筋が悪い」か」で書いたとおり、データベースに対して行われた操作を記録し、必要に応じて参照したり取り消したりしたいという要求は至極妥当なものですが、多くのRDBは、そのために簡単に使える仕組みを提供していません。 daifukuは、RDBに対して加えられた変更をトランザクション単位でRDB内にJSONとして記録するためのストアドやトリガを生成するコマンドです。 % daifuku dbname tbl1 tbl2 > setup.sql のように実行すると、指定されたテーブル(ここではtbl1とtbl2)にセットすべきトリガや、更新ログを記録するためのテーブル「daifuku_log」を生成するCREATE TABLEステートメントなど、必要なSQL文をset
リレーションシップを作りたい場合は以下のように getMany() メソッドを使って実装します。この場合、Category : Item が一対多のリレーションシップを持ちます。 @Table(name = "Categories") public class Category extends Model { @Column(name = "Name") public String name; public List<Item> items() { return getMany(Item.class, "Category"); } } 保存・更新・削除・クエリ 作成したモデルクラスを使って DB に保存したりクエリで取得したりするには以下のように実装します。これぞ ActiveRecord スタイル。見やすく分かりやすく素晴らしいですね! // 保存 Item item = new Ite
ここでは簡単なメモ入力サンプルプログラムの作成を例にとって、SQLite データベースの利用方法について学びましょう。 着目するところは SQLite を簡単に扱うための DB アダプターの利用です。 SQLite と DB アダプターを利用するサンプルプログラム それではここで作成するサンプルプログラムの動作を先にみておきましょう。 起動直後はこのとおり。画面下部にテキストの入力フィールドと保存ボタンがあるのみです。 テキストを入力して、"Save" ボタンを押すと・・・ このように入力文字が保存されます。このときに SQLite データベースに入力文字を保存しています。 文字を複数入力すると次の画面のようにリストビューにエントリが増えていきます。 エントリを長押しすると、コンテキストメニューが表示されます。今回は削除するかどうかたずねるだけのコンテキストメニューです。 "Delete"
メリークリスマス!!やあ、良い子のみんな!!サンタクロース・・・ではなく、ヒゲモジャギークからのクリスマスプレゼントだよ!! というわけで、MySQL Casual Advent Calendarの25日目である。今朝Advent Calendarを覗いてみると、本日分のエントリーが無かったので、急遽書くことにした。Advent Calendar最後の日、クリスマスを飾る記事のテーマはGTIDだ。 前回の投稿では、MySQL 5.6の目玉機能として、レプリケーションがクラッシュセーフになったことを挙げた。レプリケーションまわりで言えば、もうひとつ外せない目玉機能がある。それがGTID(Global Transaction ID)である。 GTIDは良くも悪くもレプリケーションの運用を変化させる。GTIDを使うことによって得られる最大のメリットは、CHANGE MASTER TOでバイナリロ
インフラストラクチャー部の成田(@mirakui)です。 Rails の OR マッパーである ActiveRecord ですが、みなさんどのように運用していますか? ActiveRecord を使うと、 SQL を直接扱うことなく、抽象化された表現で RDB にアクセスできるので、アプリケーションの開発効率という観点ではメリットが大きいです。 一方で、 ActiveRecord が駆使されているアプリケーションをサーバに配置してプロダクションとして運用する立場からすると、いくつかの問題に突き当たります。 まずはクックパッド本体アプリケーションにおける、最新の rake stats をご覧ください。 +----------------------+-------+-------+---------+---------+-----+-------+ | Name | Lines | LOC
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く