タグ

データとテーブルに関するgouei2001のブックマーク (2)

  • MySQL 5.7の透過的データ暗号化 - Qiita

    MySQL 5.7.11で導入、5.7.12で一部改良された、透過的データ暗号化をテストしたときのメモです。 とある勉強会のLTでグダグダになったので、あらためて書き直して投稿しておきます。 ※内容は無保証です。 2019/04/30 追記: MySQL 8.0 については以下の記事をご覧ください。 MySQL 8.0.16 でテーブルスペース・REDO ログ/UNDO ログ・システムテーブル暗号化 透過的データ暗号化(TDE)とは アプリケーション(SQL)側で暗号化/復号処理をしなくても、DBのデータファイルが暗号化される機能です。 データファイルや物理メディア(HDDなど)の窃取・盗難対策に有効です。 一方で、アプリケーション側にSQLインジェクションなどの脆弱性がある場合には、何の保護にもなりません。 MySQL以外のRDBMSでは 商用のOracleなどでは、かなり前から使えるよ

    MySQL 5.7の透過的データ暗号化 - Qiita
  • ActiveRecordで行ロックをかける方法

    行ロックとは 行ロックとは、テーブルの同一レコードに対して、複数同時に更新できないように制限する仕組みのことです。 Ruby on RailsのActiveRecordには2種類のロック方法があります。 楽観的ロック(Rails依存) 悲観的ロック(DBMS依存) それぞれの違いや使い方について解説していきたいと思います。 楽観的ロック 楽観的ロックとは、DBMSの機能に頼らずロックバージョンをレコードに保存しておくことで、取得時と変更時にロックバージョンに変更がないか確認し、変更があった場合は例外を発生させる方法です。 ロックするタイミング データ更新時 データを複数同時に取得することができるが、途中で更新されていた場合は、更新できない 仕組み テーブルにlock_versionフィールドを追加する lock_versionが書き換わっていたらActiveRecord::StaleObj

    ActiveRecordで行ロックをかける方法
  • 1