MyNA 2013/03 行ってきました
MySQL Nippon Associate、日本MySQLユーザー会こと`まいな'に行ってきました。ひらがなで書くとなんか人の名前みたいな感じがしますね。教育テレビに出てそう。お料理かぐるぐるどっかーん的な何か。http://atnd.org/events/37387MySQL clients from...
View ArticleChiba.pm #2に行って誰得XtraDB Clusterの話をしてきた
行ってきました。前回はちゃんと千葉県民だったんですが、今回は東京都民としての出場です(?)http://atnd.org/events/36981Introduction to XtraDB Cluster from yoku0825Perl...
View Articletail -fしながらファイルをリネームすると追いかけてくれなくなる理由
tail -Fの存在は知っているんですが、なんで追いかけてくれないのかが気になって途中まで調べた。$ ls -l error.log*-rw-rw---- 1 mysql mysql 5954 3月 25 14:44 2013 error.log$ tail -f error.log..2013-03-25 14:44:50 11326 [Note]...
View Articlept-duplicate-key-checkerが快適
Percona Toolkitのひとつpt-duplicate-key-checker。名前の通り、重複したインデックスをチェックしてくれる。$ pt-duplicate-key-checker S=/usr/mysql/5.5.30/data/mysql.sock,u=tpcc,p=xxxx --database=tpcc#...
View ArticleREPLACE INTOが実はINSERT + DELETEだった(INSERTが先で後から消す) 間違ってました。。
「INSERT .. ON DUPLICATE KEY UPDATE ..でクエリを投げているけど、99%くらいはUPDATEになっている」「UPDATEを直接投げた方が速かったりする?」「極端にパフォーマンス違うんだったら、UPDATEが転けてからINSERTする方式も考える」とか聞かれたのでINSERT .. ON DUPLICATE KEY...
View ArticleREPLACE INTOが実はINSERT + DELETEだったと思ったら、結局DELETE + INSERTだった
REPLACE INTOが実はINSERT + DELETEだった(INSERTが先で後から消す)の続き。REPLACE INTOは「DELETE + INSERT(その行を消してからもう一度書く)」だと今まで思っていたけれど、実は「INSERT +...
View ArticleMySQL 5.5.28とMariaDB 5.5.28aのmysqldumpを読み比べてみる(binlog_snapshot_%変数というのがある)
--master-dataのオプションの説明にこんなことが書いてある。on servers before MariaDB 5.3 this will still take a global read lock for a short time at the beginning of the dump;MariaDB 5.3以降だとFLUSH TABLE WITH READ LOCKしないのか?...
View Articleinformation_schema.INNODB_BUFFER_PAGEのACCESS_TIMEが何か変な件
取り敢えずBugsにも上げたんですけど、エスパーさんでないと伝わらない気がしています。http://bugs.mysql.com/bug.php?id=68981MySQL 5.6.2, 5.5.28, 5.1.66に搭載された新しいinformation_schema、INNODB_BUFFER_PAGEとINNODB_BUFFER_PAGE_LRU。⇒...
View ArticleInnoDBのロックは行ロックじゃなくてインデックス行ロックだからね、という例
また使う気がするのでメモ。mysql1> CREATE DATABASE d1;mysql1> USE d1;mysql1> CREATE TABLE t1 (num SERIAL, val VARCHAR(32), KEY (val(1))) ENGINE = InnoDB;mysql1> INSERT INTO t1 VALUES (1, 'one'), (2,...
View ArticleMySQL5.6 ALTER TABLE中のtmpdirのファイル
なんかうれし恥ずかし状態になっているので頑張って調べてます。もともとの話は、MySQL5.6で巨大テーブルのALTER TABLE中にtmpdirに何かI/Oがあるせいで遅くなってる、という話で、⇒MySQLでデータ領域をシステムと別diskにするならtmpdirも設定した方がいい - 酒日記 はてな支店というか、でも、During an online DDL operation that...
View ArticleMySQL 5.5.30のmysqldumpに当てるパッチ書いた
前々からパッチは書いてあって(本番環境で使ってる)公開するする詐欺だったんだけれども、著作権周りのごたごたが社内でやっと落ち着いたので今度こそ公開。修正している内容の主なものは、"--master-data=2と--dump-slave=2を同時に指定できるようにする"です。何に使うかというと、こんな構成で・バイナリログのバックアップはlog-slave-updatesでスレーブにとってあるので、・...
View ArticleMySQL5.6とMySQL5.0のレプリケーションでI/OスレッドがError: 2049
MySQL5.6をスレーブに、old_passwords = 1なMySQL5.0をマスターにしてレプリケーションを組もうとすると、mysql56> show slave status\G*************************** 1. row *************************** Slave_IO_State: Connecting to master...
View ArticleMariaDB 10.0.2にinformation_schema.QUERY_CACHE_INFOが入ってる
最近、クエリキャッシュの中身を見るinformation_schemaプラグイン作りたいとか思って試行錯誤してた訳なんですが、まあやっぱり他の誰かも思いつきますよね。http://lists.askmonty.org/pipermail/commits/2013-March/004459.htmlMariaDB [d1]> SELECT * FROM t1;+-----+------+|...
View ArticleLast_SQL_Errno: 1677 にであった
珍しいエラーでSQLスレッドが止まっていた。mysql> SHOW SLAVE STATUS\G.. Last_SQL_Errno: 1677 Last_SQL_Error: Column 0 of table 'd1.t1' cannot be converted from type 'int' to type...
View ArticleMySQL 5.6より前のマスターにMySQL 5.6のスレーブをぶら下げるとワーニングが出る(Err: 1193)
知らなかったのでメモる。ネタ提供は @kenjiskywalkerさん。5.0から5.6でレプリケーション、Unknown system variable 'binlog_checksum', Error_code: 119 って言われててつらい感じする— 私の頭の中の弥勒菩薩さん (@kenjiskywalker) 2013年5月10日今日もありがとうございます(*-人-)5.5, 5.1,...
View Articleredis sentinelの動きを軽く追ってみる
redis-2.6.7のソースから。redis.c: serverCronから100ミリ秒ごとにsentinel.c: sentinelTimerが呼ばれる。まずはマスターから。 ⇒マスターが終わったら、マスターからスレーブの情報を引っ張ってきてそいつらをチェック。 ⇒次にマスターからsentinelの情報を引っ張ってきて、そいつらを。...
View Articlelinux-fincoreを使ってページキャッシュを覗く
ページキャッシュにどれだけページが載っているかを調べたいなーと思うと、ファイルがページキャッシュに乗っているかどうかを調べる というのがよく引っかかって、そもそもfincoreってどっから出てきた名前なんだと思ったらlinux-ftoolsというところに行き着いた。linux-ftoolsはApacheライセンスで、PerlとINLINE...
View ArticleRESET SLAVEでリセットされる範囲
RESET SLAVEだけの場合、master_log_name, master_log_pos, ssl_verify_server_cert, heartbeat_periodのクリア。RESET SLAVE ALLの場合、↑に加えてhost[0] = 0; user[0] = 0; password[0] = 0; される。gtid周りの情報はhiroi10さんの...
View Article/usr/bin/gcoreのバグ(gdb-7.2-56.el6, gdb-7.2-60.el6で確認)
gdbには/usr/bin/gcoreというシェルスクリプトが入っていて、PIDを引数で渡すと、そのプロセスにアタッチ -> coreファイル作成 -> デタッチ を流してやってくれるというもの。PIDを複数渡した場合はそれら全てのプロセスに対してこれをやってくれるはずなんだけど、ちょっとバグがあって上手く行かない。.. 62 # Loop through pids 63 for pid...
View ArticleAmazon RDSのinnodbってデータベースの正体
この前初めてRDSにログインしたんですが、mysql> SHOW DATABASES;+--------------------+| Database |+--------------------+| information_schema || innodb || mysql || performance_schema...
View Article