MySQLに関するcobonasのブックマーク (11)

  • MySQLでトランザクションの4つの分離レベルを試す - FAT47の底辺インフラ議事録

    トランザクションとは 1つの作業単位として扱われるSQLクエリの集まりです。 複数のUPDATEやINSERTをひとつの集まりとして、 それらのクエリがすべて適用できた場合のみデータベースに反映します。 ひとつでも適用に失敗したクエリがあった場合は、そのまとまりすべてのクエリの結果は反映しません。 ACID特性 トランザクション処理に求められる4つの特性です。 原子性 (Atomicity) トランザクションに含まれる手順が「すべて実行されるか」「すべてされないか」のどちらかになる性質。 一貫性 (Consistency) どんな状況でもトランザクション前後でデータの整合性が矛盾なく保たれる性質。 分離性 (Isolation) トランザクション実行中は、処理途中のデータは外部から隠蔽されて他の処理に影響を与えない性質。 永続性 (Durability) トランザクションが完了したら、シス

    MySQLでトランザクションの4つの分離レベルを試す - FAT47の底辺インフラ議事録
  • ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ

    ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門 広く浅くを担当してます、ota です。 技術ブログ第一回から早速流用スライドで申し訳ありませんが、社内勉強会資料として作成した「MySQL INDEX + EXPLAIN入門」です。 当社でもソーシャルゲームの開発を行っていますが、このような大量のデータを使用する・クエリの速度が求められる場合にインデックスは大変重要です。 インデックスの有効な利用にはDB設計者だけではなくプログラマにもある程度の知識が最低限必要となりますが、インデックスについての初心者向け資料があまりないようです。 このスライドではプログラマに知っておいて欲しい以下の基的な点をまとめました。 INDEXを使用する時に気をつけること WHERE句 !=、<>はインデックスが使用できない WHERE句の全てのANDにかかっていないイン

    ソーシャルゲーム開発者なら知っておきたい MySQL INDEX + EXPLAIN入門|技術ブログ|北海道札幌市・宮城県仙台市のVR・ゲーム・システム開発 インフィニットループ
  • tree-tips: MySQLのトランザクション分離レベル | MySQL

    トランザクション分離レベルの種類 ANSI/ISO SQLでは、以下のように定義されています。 ロストアップデートについては特に策定されていないと思いますが、一覧に加えておきます。 分離レベル 性能 ダーティーリード ファジーリード ファントムリード ロストアップデート read uncommitted 高 起きる。 起きる。 起きる。 起きる。 read committed | 起きない。 起きる。 起きる。 起きる。 repeatable read | 起きない。 起きない。 起きる。 起きる。 serializable 低 起きない。 起きない。 起きない。 起きない。 ただし、ANSI/ISO SQLはあくまで仕様であって、実装・動作は各データベース毎に異なります。 MySQLの場合は以下のようになります。 分離レベル 性能 ダーティーリード ファジーリード ファントムリード ロス

    cobonas
    cobonas 2013/01/10
    トランザクション分離レベルのまとめ
  • MySQLパフォーマンスチューニングのためのクエリの基礎知識 - プログラマーkkの勉強/成長ブログ@ライブレボリューション(モバイル広告代理店)

    前回書いたMySQLパフォーマンスチューニングのためのインデックスの基礎知識に引き続き、MySQLのパフォーマンスチューニングについて学んだことをまとめ。 MySQLを使っていると、クエリが遅い理由をつきとめる必要が出てくる。 どうやって遅いクエリをつきとめ、改善すればよいかについて学んだのでまとめた。 下記のような基礎知識があればパフォーマンスチューニングをうまくやれる、と思う。 クエリ処理の基礎 MySQLがクエリを処理する手順 まずはMySQLがクエリを処理する手順を知っておく必要がある。 処理は以下のような流れで進む。 クエリキャッシュの中からクエリの結果を探す。見つかればそれを返す。 クエリを解析して構成要素に分解する。 クエリの構文が正しいことを確認 クエリについて基情報を収集する。 クエリを基的な要素に分解した後、何を実行すべきかを判断する。 クエリオプティマイザが動き始

    MySQLパフォーマンスチューニングのためのクエリの基礎知識 - プログラマーkkの勉強/成長ブログ@ライブレボリューション(モバイル広告代理店)
  • MySQLにおけるレプリケーション遅延の傾向と対策

    レプリケーションはMySQLで最もよく使われる機能のひとつだ。レプリケーションは基的に非同期でデータの複製を行う仕組みになっているのだが、非同期故にどうしても逃れられない問題がある。そのひとつが今回のテーマ、遅延である。というと、MySQLのレプリケーションはすぐに遅延が生じてしまうように感じてしまうかも知れないが、そのようなことはない。ほとんどの場合は即座にスレーブの更新が行われる。 なぜ遅延は発生するのか、どのように遅延が起きていることを調べるのか、どのように回避するのかということをエントリでは解説したい。うまく遅延と付き合って、MySQLのレプリケーションをより快適に運用してもらえればと思う。 そもそも遅延とは何かMySQLのレプリケーションは非同期で行われる。これは準同期でも同じであり、スレーブにおいて更新が起きるのはマスターよりも一瞬遅れてしまう。これは非同期であるが故に逃れ

    MySQLにおけるレプリケーション遅延の傾向と対策
  • MAMPのインストール for Mac-独学!未経験からWebデザイナーになる!!

    Mac OSXにはもともとApacheがインストールされています。ですから他に何もインストールせずともApacheを利用することができます。しかし、手軽にPHPスクリプトも書いてみたい、またはWordPressやMovable Typeをインストールしてみたいという方には、このMAMPが最も手軽なソリューションだと言えるでしょう。 MAMPは、Apache,MySQL,PHPをパッケージとして一括インストールすることができるソフトです。同じようなソフトとしてWindowsではなじみ深いXAMPPもありますが、MacではMAMPの方がよく使われているようです。 まずはMAMPをダウンロード まずはMAMP のサイトにアクセスしてください。左側の[ MAMP: One-click-solution for setting up your personal webserver ]とかかれたすぐ下

  • 今風のUI。Ajaxを使ったPHPベースのMySQL管理システム·MyWebSql MOONGIFT

    MyWebSqlはAjaxを多用した今風のUIを使ったMySQL管理ツール。 MyWebSqlPHP製のオープンソース・ソフトウェア。PHPと言えばMySQL、その二つの組み合わせから生み出されたphpMyAdmin。LAMPスタックなんて言葉が生み出されたのにphpMyAdminの優秀さがあったことは否定できない。それくらい誰しもが使っているソフトウェアだ。 データ一覧 だが長い年月のうちにUIは古いものになり、ちょっと時代が変わってきているかという気がしなくもない。そこで今のWebに合わせたMySQL管理ツールを紹介しよう。それがMyWebSqlだ。 MyWebSqlはWebアプリケーション風のインタフェースに加えて、UIのデザインもポップで明るい配色になっていて使い勝手が良い。左側にデータベースの一覧、右側でデータの編集を行うスタイルはphpMyAdminと同じだ。さらに下にはSQ

    今風のUI。Ajaxを使ったPHPベースのMySQL管理システム·MyWebSql MOONGIFT
  • macOSでサーバー稼業 & どうせ疲れるなら、できあがったものをどう活かすかで疲れたいよね

    クリックで手軽にiOSやMacと親和性の高いサーバー運用ができる、そんな夢を背負ってデビューしたServer.appは、気がつけば、その役割を縮小し細々とした存在になってしまいました。同時に、その掲げられた夢にすがって恩恵を受けていたユーザーたちは、路頭に迷う時代になりました。 中小オフィス向けサーバーを簡単に構築、管理できるという位置づけでのServer.appの提供はなくなりました。しかし、その向こう側には、かつてと変わらないパワフルな環境が引き継がれています。ここでは、Server.appに頼らず、macOSの基構成を中心に、ちょっと小さなオフィスや自宅向けのサーバー環境を構築、運用する方法を考えていきます。

  • Macで自前サーバ | MySQLでいこう | phpMyAdminでMySQL管理

  • MySQLの使い方って...。 - ザリガニが見ていた...。

    データベースとはそもそもなんだ? データベースなんて今まで使ったことがなかった。(ユーザーとしては使っているんだろうけど、開発者の立場としてはほとんど無知。) そこで、まず参考にさせて頂いたのが、こちらの素晴らしいページ。 データベースとは? SQL -TECHSCORE- なるほど...、それでは表計算ソフト(Excel等)をイメージした勝手な思い込み。 データベースでは... 表計算ソフトでは... データベースの作成 ブックの新規作成 テーブルの作成 シートの追加作成 フィールド 列の名前 mysqlはどうやって使うのだ? MySQL AB :: MySQL 4.1 リファレンスマニュアル(MySQL家のサイト。すべてのことはここをちゃんと読めば分かるはず...。でもねー、知るべきことって、たくさんある...。) MySQLクイック・リファレンス(シンプルにまとめてくれています。感

    MySQLの使い方って...。 - ザリガニが見ていた...。
  • Mac にphpMyAdmin を入れる手順 - LukeSilvia’s diary

    MySQL を使って開発している人ならお世話になるであろうphpMyAdmin。なんと、最近まで使っていませんでした。先輩が使っているのを見てとっても便利そうだったので、インストールしました。その手順をメモりります。 phpMyAdmin って何 Wikipedia から引用。 phpMyAdmin - Wikipedia phpMyAdminはMySQLをインターネット越しに管理するためのツールで、PHPで実装されている。 phpMyAdminを用いることで、SQL文を記述することなく、MySQLのデータベースに対して様々な操作が行える。 また、ユーザが任意のSQL文を記述して実行することもできる。 要はブラウザからMySQLDB を操作できるツールです。更新や削除、スキーマ情報の閲覧などもできます。開発者としては、動作確認の際にブラウザでレコードが見られるだけでもかなり助かると思い

    Mac にphpMyAdmin を入れる手順 - LukeSilvia’s diary
  • 1