タグ

ブックマーク / blog.kimuradb.com (3)

  • テストデータ作成時に便利なストアドファンクション | キムラデービーブログ

    オープンソースデータベースを加速する「キムラデービー」のブログです。カレー日記を兼ねてます。なお著者は2010-06-01より日オラクルに在籍していますが、サイト(ブログ、またはウェブサイト)において示されている見解は、私自身の見解であって、オラクルの見解を必ずしも反映したものではありません。 この記事は MySQL Casual Advent Calendar 2013 の 13 日目です。 カジュアル! ということで、テストデータ作成時にいつも'AAAA'ばかりでは辛いので、MySQLで利用できる10行ほどのストアドファンクションをご紹介します。 拙書「プロになるためのデータベース技術入門」p.223では「それっぽい」苗字を返すrand_family_nameという以下のファンクションを紹介しました。 delimiter $ create function rand_family_

    テストデータ作成時に便利なストアドファンクション | キムラデービーブログ
    masa_matya
    masa_matya 2014/07/26
  • InnoDBロック競合の確認(MySQL 5.1+InnoDB Plugin, 5.5以降) | キムラデービーブログ

    オープンソースデータベースを加速する「キムラデービー」のブログです。カレー日記を兼ねてます。なお著者は2010-06-01より日オラクルに在籍していますが、サイト(ブログ、またはウェブサイト)において示されている見解は、私自身の見解であって、オラクルの見解を必ずしも反映したものではありません。 MySQL 5.1+InnoDB Plugin, 5.5以降でサポートされた以下の三つの情報スキーマテーブルを使うとトランザクションとロックに関わる情報をInnoDBロックモニタよりも簡単でわかりやすく取得することが可能です。 | INNODB_LOCK_WAITS |独自: ロック待ち情報 | INNODB_LOCKS |独自: ロック競合情報 | INNODB_TRX |独自: トランザクション情報 通常一つの接続ではトランザクションのBEGIN; COMMIT;を何度か行います。つまり一つ

    InnoDBロック競合の確認(MySQL 5.1+InnoDB Plugin, 5.5以降) | キムラデービーブログ
  • オートコミットをデフォルトオフにする(MySQL 5.5の場合) | キムラデービーブログ

    MySQLでオートコミットはデフォルトでオンになっています。これをオフにするには、セッション毎に以下のコマンドを実行するか、 mysql> set autocommit=0; 接続時にコマンドを実行するinit-connectオプションで以下のように設定する必要がありました。(MySQL 4.1以降) init_connect='set autocommit=0' しかしながら、前者はクライアント接続毎にいちいち設定する必要があり、後者はSUPER権限を持つユーザの接続には適用されませんでした。 MySQL 5.5のGA(MySQL 5.5.8)以降では、autocommit変数にグローバルなものが追加され、以下の設定をmy.cnfに記述するだけで、全ての接続(SUPER権限をもつユーザの接続も含む)のオートコミットのデフォルトをオフにすることができます。 [mysqld] autocom

    オートコミットをデフォルトオフにする(MySQL 5.5の場合) | キムラデービーブログ
    masa_matya
    masa_matya 2011/07/30
    普通に init_connect='set autocommit=0'を書いてた…
  • 1