カテゴリー: SQL

MySQL

MySQLロールフォワード

  今回はMySQLのロールフォワードの紹介記事です。   課金や顧客の財産がデータベースに書き込まれていくサービスを運用する場合、ロールフォワードは必須の技術になります。ロールフォワードする場面を想像しただけで、おなかが痛くなりますね・・・・・・^^; ロールフォワード   データベースに障害が発生したときに、記録してあるチェックポイントのデータを再現した上で、ログ …

MySQL

MySQLパーティショニング

  MySQLで運用していると100万レコードほどになってくるとレスポンスが悪くなります。WEBサービスのチャットや履歴といったログデータを、ユーザ側で『最初から最後まで見れて当たり前』な設計をすると、ユーザが増加してチャットデータが爆発的に増えた場合にデータベースが膨らみます。そのまま全部保存でいくといつかは会話の時系列でサーバをわけることになります。   そもそも1年前の会 …

MySQL, チューニング

メモ MySQLデッドロック関連・mixiを支える技術【技評】

■MySQLデッドロック関連   DBの初期設計がむちゃくちゃなシステムを後から修正をするのは難しい。トランザクションする場合のテーブルロックの順番を意識して開発していないとどんどん増えるよ! ○移行の注意 ストレージエンジンをMyISAMからInnoDBへ切り替える際の注意 http://gihyo.jp/dev/clip/01/groonga/0006?page=3   ○ …

MySQL

MySQLのトランザクションとか分離レベルメモ

  @see https://www.websec-room.com/2015/11/17/2356 わかりやすくまとまっています(ㆁᴗㆁ✿)   <?php require_once(“function.php”); try{ $dbh = new PDO(DSN, USERNAME, PASSWORD); // 静的プレースホルダを指定 $dbh->setAtt …

MySQL

MySQLの正規系とかデータベース設計の基本がわかるサイト

  一週間で身につくMySQL http://web.sevendays-study.com/mysql/index.html     DB設計(第2,第3正規形) http://www.simpline.co.jp/tech/?p=169 第3正規系、キー制約、データベース設計とか。 基本項目でクエリの種類、発展項目でデータベース設計。 わかりやすいですね。 新人さん向けの資 …

MySQL, チューニング, システム設計

ソシャゲ開発系スライドメモ

@see https://career.levtech.jp/guide/knowhow/article/78/ ソーシャルゲームのためのデータベース設計 from Yoshinori Matsunobu   サーバー未経験者がソーシャルゲームを通して知ったサーバーの事 from Manabu Koga PHP+MySQLを使ったスケーラブルなソーシャルゲーム開発 from infinit …

MySQL, チューニング

MySQLのクエリチューニング、アーキテクチャとか メモ

  チューニング   MySQLでのSQLチューニングについて(EXPLAINの見方) @see http://labs.opentone.co.jp/?p=1985   partitions: partition構成のテーブルの場合に、その処理がアクセスしているpartitionを表す。 テーブルをパーティショニングしている場合に見る。     …

MySQL, SQL

シャーディング メモ

  シャーディングすべき時 @see https://enterprisezine.jp/dbonline/detail/7298 目安としては秒間5000件以上のクエリがあるシステムと思っておけばよいでしょう。 MongoDBの大原則は「できるだけシャーディングしないこと」です。その理由はシャーディングが難しいためです。シャーディング構成は単体構成やレプリケーション構成と比較して遥かに …

MySQL, セキュリティ

SQLインジェクションに対応したクエリ方法 メモ

  <?php $dbh = new PDO(‘mysql:host=DBHOST;dbname=test;charset=utf8’, USERNAME, PASSWORD); $dbh->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); // 静的プレースホルダを指定 $sth = $dbh->prepare(“sel …