超久々となる「日本MySQLユーザ会会」が開催されました。今回は飲食付きのアレではなく、お話を聞く系の形式です。
http://atnd.org/events/37387
記憶だけで記録を書いてみる。
平塚さんの、MySQL5.6を速くするトライのお話
Oracle ACE になった平塚さんの話で会はスタート。「日本人としては
18人目のOracle ACE。18なので真のエース!」というのは、我ながら気に入ったネタw。
…
超久々となる「日本MySQLユーザ会会」が開催されました。今回は飲食付きのアレではなく、お話を聞く系の形式です。
http://atnd.org/events/37387
記憶だけで記録を書いてみる。
平塚さんの、MySQL5.6を速くするトライのお話
Oracle ACE になった平塚さんの話で会はスタート。「日本人としては
18人目のOracle ACE。18なので真のエース!」というのは、我ながら気に入ったネタw。
…
MySQLはデフォルトでdatadirの下にあるディレクトリはデータベースとして扱うが、
MySQL 5.6で追加された--ignore-db-dirオプションを使うと、データベースとして認識されなくなる。
これでdatadirを別パーティションに切っている時の`#mysql50#lost+found'ともさよならなのだ。
mysql> SHOW DATABASES;
+---------------------+
| Database |
+---------------------+
| information_schema |
| d1
|
| d2
|
| logs
|
| #mysql50#lost+found |
| mysql |
| performance_schema |
| test …
my.cnfには[group]というオプショングループが書けて、グループ毎に設定ができます。
オプショングループには特殊な[client]というのがあります。
[client]オプショングループは、すべてのクライアントプログラム(mysqldは除く)によって解読されます。これによって全てのクライアントに当てはまるオプションを指定することが可能になります。
MySQL :: MySQL 5.6 リファレンスマニュアル :: 4.2.6 オプションファイルの使用
なので[client]にdefault-character-set =
utf8と書いておけば、(my.cnfを解釈する)全てのクライアントにdefault-character-setをセットすることが可能です。
…
[さらに読む]
MySQL5.6のmysql_install_dbは大幅に変更が加えられていて、
権限データベースを作るついでに、basedirにすごく役に立たないmy.cnfを作ってくれる。
⇒ MySQL5.6.8でrpmインストール時に変更になったこと
5.6.10だとscripts/mysql_install_dbの427~450行あたり。
このbasedir/my.cnf、ほとんどコメントアウトされていてホント何の役にも立たない上に、
sql_modeだけ指定されている。
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
さて問題です。
/etc/my.cnfにsql_modeを指定していて(たとえばPIPES_AS_CONCAT)、
このbasedir/my.cnfを削除しなかった場合。。。
上 書 き さ れ ま す 。
⇒ …
InnoDBストレージエンジンには InnoDB Monitor という機能があって、
だいたい`SHOW ENGINE INNODB
STATUSの結果をエラーログファイルに定期的に吐き出してくれる'というイメージがある。
mysql> CREATE TABLE innodb_monitor ( hoge int );
$ tail -f error.log
=====================================
130306 10:09:30 INNODB MONITOR OUTPUT
=====================================
Per second averages calculated from the last 20 seconds
-----------------
BACKGROUND THREAD
-----------------
..
----------------------------
END OF INNODB MONITOR OUTPUT
============================
そのまんまですね。
これなら正直、mysql -e "SHOW ENGINE INNODB …
ある日SH2先生がつぶやきました。
127.0.0.1で接続したクライアントがlocalhostで認証されるらしい。再現しない
— SH2さん (@sh2nd) 2013年2月19日mysql.userにlocalhostのみがある場合、localhost
(UNIX Socket)、127.0.0.1
(TCP/IP)は両方接続できる。mysql.userに127.0.0.1のみがある場合、localhost (UNIX
Socket)では接続できない
— SH2さん (@sh2nd) 2013年2月19日GRANT ALL PRIVILEGES ON db1.* TO
test1(at)localhost、GRANT ALL PRIVILEGES ON db2.* TO
test1(at)127.0.0.1 ってやったときに、
— SH2さん (@sh2nd) 2013年2月19日(続き) mysql -u test1 -h localhost db2
は通らないけど mysql -u test1 -h …
MySQL 5.6から搭載、5.5.28,
5.1.66にもバックポートされたinformation_schema.INNODB_BUFFER_PAGEを覗いてみました。
http://dev.mysql.com/doc/refman/5.6/en/innodb-buffer-page-table.html
5.1.66(or later)は--plugin-loadでInnoDB
Pluginに食わせてやる必要があるので、my.cnfに書いておく。
さてさて。マニュアル読んでもよく判らなかったので、テキトーに流してみる。
mysql> SELECT PAGE_TYPE, TABLE_NAME, INDEX_NAME,
SUM(NUMBER_RECORDS) AS NUMBER_RECORDS, SUM(DATA_SIZE) AS
DATA_SIZE, SUM(COMPRESSED_SIZE) AS COMPRESSED_SIZE, SUM(IS_OLD =
'NO') AS OLD_PAGES, SUM(IS_OLD = 'YES') AS NEW_PAGES FROM
innodb_buffer_page GROUP BY PAGE_TYPE, …
使ってみたりBugsに色々上がったりしているのを見たのでメモ。
ネタ元はOracle公式のここ。 MySQL Server 5.6 defaults changes
・binlog_checksum
⇒5.6からの新規パラメータ。
暗黙のデフォルトはcrc32だが、
マスターが5.6、スレーブが5.5以下の(定石を無視した)環境ではnoneでないとI/O
Threadが転ける。
・innodb_buffer_pool_instances
⇒5.5ではデフォルト1が、デフォルトautosized8に。
autosizedではinnodb_buffer_pool_sizeが1300M以上の時はinnodb_buffer_pool_size/128Mに設定されるらしい。
…
Spiderストレージエンジンのバージョン 3.0(beta)とVartical Partitioningのバージョン
0.18(beta)をリリースしました。
大変長らくお待たせしました。今回は1年分の更新をまとめてお送りさせて頂きます。
Spiderストレージエンジンは、database sharding用のストレージエンジンです。
http://spiderformysql.com/
Vertical Partitioningストレージエンジンは、テーブルのVertical
Partitioning用のストレージエンジンです。
http://launchpad.net/vpformysql
バイナリのダウンロードにはこちらをご利用ください。
http://spiderformysql.com/download_spider.html
…
一晩がんばってみたけどこれ以上は僕の力量では解決方法がわからないので誰か続きをお願いします…!
kamipo/q4m at mysql-5.6 · GitHub
とりあえずビルドが通ってlibqueue_engine.soまではできあがるんだけど、INSTALL
PLUGIN queue SONAME 'libqueue_engine.so'してみるとSymbol not
foundでいけてない感じです。
追記
@kamipo 手元で確認したところ、-DDBUG_OFF が必要のようです。
— Isao Shimizu (@isaoshimizu) February 15, 2013
おぉ…手元で #define DBUG_OFF で …
[さらに読む]