my.cnfの場所にハメられた。。。

MySQLが読み込むmy.cnfは

mysql --help | grep my.cnf
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/mysql/my.cnf /etc/my.cnf ~/.my.cnf 

でわかります。が、これ、読み込まれる優先順位が

  1. ~/.my.cnf
  2. /etc/my.cnf
  3. /etc/mysql/my.cnf

※ MySQL5.1.73

であることに注意しましょう。まあ、/etc/my.cnf以外そんな使わないと思いますが。
もうひとつ注意があります。

この記事を読む ≫

MySQL5.6.17 → 5.6.19にアップデートしたのでその手順のメモ

MySQLをアップデートしたのでその手順のメモです。GTIDを使用したレプリケーション環境だったので、マスターアップデート中にスレーブをマスターに昇格させることで、ダウンタイム無しでアップデートを行うことが出来ました。

この記事を読む ≫

MySQLのコンソール上で”USE データベース名”が遅いと思ったら -A オプションを付けてクライアントを起動すればいい

タイトルでほぼ言いたいことは言いましたが。データベースのテーブルやカラムが増えて巨大化(肥大化)してくると、最初にデータベースをUSEするときに読み込みに時間がかかってしまう場合があります。これは候補検索の為に最初にテーブルやらの情報を最初に読み込んでいるためです。tabキーで候補が出てくるあれです。

-A オプションをするとこの最初の読み込みを全部すっ飛ばしてくれるわけです。

この記事を読む ≫

MySQL5.6新機能のInnoDB memcachedを使ってWordPressを高速化しようとしてみた話

InnoDB memcachedとは、key-valueストア(KVS)データモデルのmemcachedのプロトコルでMySQLのテーブルにアクセスできるプラグインです。
要はmemcachedのバックエンドがInnoDBになったよ、って解釈なんですがこれどうなんでせう。

MySQLで使えるなら使ってみて、ついでにWordPressを高速化するぜ!って思ったのが今回のきっかけ。

この記事を読む ≫

READロックとWRITEロックがよくわからなくなるので改めて

MySQLではLOCK TABLES文で明示的にテーブルにロックをかけることが出来ます。
で、いつもわからなくなるんですね。READロックとWRITEロックが。

  1. 他のスレッドからWRITE不可
  2. 他のスレッドからREAD/WRITE不可

さて、どっちがREADロックでどっちがWRITEロックか分かりますか?

この記事を読む ≫