タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

migrationとopsに関するymm1xのブックマーク (2)

  • DBマイグレーションを行う技術 - 発明のための再発明

    データベースのスキーマを変更するということはデータをいじる行為であり、最悪の場合データが消えます。 最悪の事態にはならなくとも、思わぬ場所に影響が起きたり、データの不整合が発生する恐怖と戦う必要が有ります。 テストや切り戻しを含めて計画し、大きな変更の場合にはダウンタイムまで考慮する必要があります。 そこで、RDBを対象にデータベースの変更を行う方法について書いていきます。 スキーマ変更 まずは、スキーマ変更について、 カラムを追加する 一番簡単で、影響も少ない変更です。 気をつけるのは、 ソースコードの変更よりも前にスキーマ変更を完了させる (長時間)ロックがかからない方法を選ぶ といったところでしょうか。 大抵の場合は、スキーマの変更とソースコードの変更の順番にさえ気をつければ問題は発生しません。 カラム名を変更する 「ALTER」でさくっと変えたくなりますが、ソースコードの変更が同時

    DBマイグレーションを行う技術 - 発明のための再発明
  • MySQL 5.6 のオンラインDDLについて調べた - takatoshiono's blog

    今更だけど MySQL 5.6 ではオンラインDDLの機能が追加されている。今日はこのオンラインDDLについて勉強したことを書いてみる。 MySQL のマニュアル MySQL :: MySQL 5.6 Reference Manual :: 14.11 InnoDB and Online DDL にいろいろ書いてある。いまから書くことはこのマニュアルから得た知識が元になっている。 DDL てなによ? データではなく、テーブル自身を操作するためのSQL文のこと。CREATE, ALTER, DROP, TRUNCATEなど。オンラインDDLではCREATE INDEX, DROP INDEX, ALTER TABLEに適用される。 http://dev.mysql.com/doc/refman/5.6/en/glossary.html#glos_ddl 5.1 までの ALTER TABLE

    MySQL 5.6 のオンラインDDLについて調べた - takatoshiono's blog
  • 1