Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 1571 to 1580 of 3187 « Previous | Next »
MySQL 5.7.5のコンパイルにはBoostが必要になった

実際にはLabs版の5.7.4(InnoDB GIS)から必要になってたらしい。5.7.5のリリースノート を"boost"で引っかけると出てきたり、Building MySQL with Boost | MySQL Server Blog に書いてあったりした内容を試したっていうだけのメモ。

( ´-`).oO(MySQL Server Blogには1.55が必要って書いてあるけど、リリースノートにはバージョン特に書いてないなぁ。。cmake/boost.cmakeを見る限り、1.55が決め打ちで必要とされてるぽいけど(1.56ではダメ)


CentOS 6.3の公式リポジトリからyumで突っ込んでみるも、バージョンが1.41なのでやっぱりダメっぽい。

$ cmake .
..
-- …
[さらに読む]
MySQL 5.7.5のInnoDB undo log truncationを試してみた

MySQL 5.7.5では、*UNDOログ領域が共有テーブルスペース上になければ* 使っていない領域をシュリンクさせることが出来るようになったらしい。

まずはUNDOログ領域を共有テーブルスペース上から追い出す設定。これは5.6で既に使える。共有テーブルスペースを作る *前に* やっておかないといけないので注意。


$ vim my.cnf
..
innodb-undo-tablespaces= 2
..


とりあえずinnodb-undo-tablespacesを2以上にすればOK。暗黙のデフォルトは0(=共有テーブルスペース上にUNDOテーブルスペースを作る)
…

[さらに読む]
MySQL 5.7.5でmysqlスキーマの中身がちょっとだけInnoDB化された

MySQL 5.7ではmysqlスキーマのテーブルがいくつかMyISAM => InnoDB化されている。

5.6ではInnoDB統計情報永続化のヤーツと{master|relay-log}_info_repositoryのヤーツだけだったのが、


mysql56> SELECT @@version;
+------------+
| @@version |
+------------+
| 5.6.20-log |
+------------+
1 row in set (0.00 sec)

mysql56> SELECT table_name, engine FROM information_schema.tables WHERE table_schema= 'mysql';
+---------------------------+--------+
| table_name | engine |
+---------------------------+--------+
| columns_priv | MyISAM |
| db | MyISAM |
| event | MyISAM |
| func | MyISAM |
| general_log | CSV |
| help_category | MyISAM |
| help_keyword | MyISAM |
| …
[さらに読む]
MySQL 5.7.5のオフラインモードはgraceful shutdownの夢を見るか

MySQL 5.7.5の新機能ネタ。

いままでMySQLでgraceful shutdownぽいことをしようとすると、SET GLOBAL max_connections= 1 で接続を制限するくらいしか思いつかなかったけれども(LVSとかでやりくりするのは除く)
* 接続を切断するわけではないので、Connector/Jのコネクションプーリング的なものとかと相性が悪い
* クライアントにはError: 1040 (ER_CON_COUNT_ERROR) "Too many connections" が戻ってしまう
  * しかも、Error: 1040は通常運用でも異常系として発生しうるので、区別してハンドルするのはかなり無理ゲー
と、イマイチgraceful shutdownの夢を見切れなかったけれども。


5.7.5で追加されたオフラインモードが多少なりとも夢を見させてくれるかも知れない。
オフラインモードは
* SET GLOBAL …

[さらに読む]
MySQL 5.7.5で実装された オンラインでのInnoDBバッファプールサイズ変更(サイズ縮小編)

MySQL 5.7.5の新機能、オンラインバッファプールサイズ変更について。
今のサイズより大きくする(サイズ拡大編)は別エントリーで。

↑のエントリーにも書いたけど、理屈的には
* バッファプールサイズを今より大きく変更する時には全ブロック
* バッファプールサイズを今より小さく変更する時にはブロックなし
らしい。れつご。


# mysqladmin -r -i 2 ex | grep Innodb_rows_inserted
..
| Innodb_rows_inserted | 19837 | -- 前のエントリーの続きで、バッファプール80GBでtpcc_startでトラフィックかけてる
| Innodb_rows_inserted | 18892 …
[さらに読む]
MySQL 5.7.5で実装された オンラインでのInnoDBバッファプールサイズ変更(サイズ拡大編)

MySQL 5.7.5の新機能。
ログ貼ってたら長くなったので、バッファプールサイズを小さくするのは別エントリーへ。

理屈的には、
- バッファプールを大きくするとき
  * innodb_buffer_pool_chunk_size ごとに新しいページを確保しながらゴニョゴニョやる
  * この処理中は *バッファプールへの全てのアクセスがブロックされるよ*
- バッファプールを小さくするとき
  *  …

[さらに読む]
Comment on カジュアルに MySQL を監視する方法 by http://www.egosolutions.net/js/new/wr996ug-258.html

普段1日中椅子に座っている職場なので、終日立ちぱなっしだったので、かなり足がぱんぱんになりましたが、数多くのお客様にお越しいただき、今まで電話でしかお話していなかったお客様とも直接お話する事ができましたまた、当社がウエアサポートを行っているイナーメアイランド

MariaDB 5.5.39のALTER TABLEでprogressが表示されてた

ほへー。

MariaDB [hoge]> ALTER TABLE t1 DROP c1, DROP c2, DROP c3, DROP c4, DROP c5, DROP c6, DROP c7, DROP c8, DROP c9, DROP c10;
Stage: 1 of 2 'copy to tmp table' 57.5% of stage done


ちなみにMyISAM。InnoDB(XtraDB)は表示されるのかどうか知らん。
(叩いたことあるはずだけど記憶にない)

MySQL 4.0からアップグレードするならMySQL 5.0でいったん止まっておく

4.1はどうなんだろう。
もともと何故か、「4.0から上げるならまずは5.0まで上げて、あとはまあラクチン」とか記憶にあったんですが

@yoku0825 なぜそこで5.0で止まる。。。
— R.Kajiyama 旅芸人onミカン箱 (@RKajiyama) 2014, 9月 8

そそのかされるがままに5.5, 5.1を試したらレプリケーションがぶら下がらなかった。

sys-backup19 [(none)]> show slave status\G
*************************** 1. row ***************************
Slave_IO_State:
Master_Host: xxx.xxx.xxx.xxx
Master_User: xxxxxxx
Master_Port: 3306
Connect_Retry: 60
…
[さらに読む]
大規模環境でMySQLのGTIDを適用して得られた教訓

by Evan Elias and Santosh Praneeth Banda

Global Transaction ID (GTID)は、MySQL 5.6の新機能の中でも最も使わずにはいられない機能の一つだ。このおかげで、フェイルオーバやポイントインタイムリカバリ、階層を持ったレプリケーションなどに非常に有益だし、クラッシュセーフなマルチスレッドレプリケーションの必須条件にもなっている。この数ヶ月で、我々はFacebookの全ての本番用MySQLインスタンスで、GTIDを有効にした。その中で、この機能の適用方法や操作について、たくさんの知見が得られた。たくさんのサーバサイドの修正事項については、 …

[さらに読む]