MySQL 5.7.5のオフラインモードはgraceful shutdownの夢を見るか
MySQL 5.7.5の新機能ネタ。いままでMySQLでgraceful shutdownぽいことをしようとすると、SET GLOBAL max_connections= 1 で接続を制限するくらいしか思いつかなかったけれども(LVSとかでやりくりするのは除く)* 接続を切断するわけではないので、Connector/Jのコネクションプーリング的なものとかと相性が悪い* クライアントにはError:...
View ArticleMySQL 5.7.5でmysqlスキーマの中身がちょっとだけInnoDB化された
MySQL 5.7ではmysqlスキーマのテーブルがいくつかMyISAM => InnoDB化されている。5.6ではInnoDB統計情報永続化のヤーツと{master|relay-log}_info_repositoryのヤーツだけだったのが、mysql56> SELECT @@version;+------------+| @@version |+------------+|...
View ArticleMySQL 5.7.5のInnoDB undo log truncationを試してみた
MySQL 5.7.5では、*UNDOログ領域が共有テーブルスペース上になければ* 使っていない領域をシュリンクさせることが出来るようになったらしい。まずはUNDOログ領域を共有テーブルスペース上から追い出す設定。これは5.6で既に使える。共有テーブルスペースを作る *前に* やっておかないといけないので注意。$ vim my.cnf..innodb-undo-tablespaces=...
View ArticleMySQL 5.7.5のコンパイルにはBoostが必要になった
実際にはLabs版の5.7.4(InnoDB GIS)から必要になってたらしい。5.7.5のリリースノート を"boost"で引っかけると出てきたり、Building MySQL with Boost | MySQL Server Blog に書いてあったりした内容を試したっていうだけのメモ。( ´-`).oO(MySQL Server...
View ArticleTransactd 2.0 その3 データベーススケーリング
ほとんどのNoSQLは、容易なスケーリングと、アクセス頻度の高い処理の高速化を目的として使われます。今回はTransactd 2.0について、スケーリングがどのように実現されるか書きたいと思います。 1. なぜNoSQLか?(SQLの欠点) テーブル間の依存...
View ArticleMySQLからNoSQLへの移行に「ちょっと待った」
Transactdの開発過程でMySQLのパフォーマンス問題を調べてみたところ、ほとんどは「クエリーが遅い」といった問題のようでした。また、NoSQLデータベースへの移行理由としても「MySQLが遅いから」といった意見が結構あります。しかし、そのような理由でMySQLからNoSQLに移行しようとしているのなら、「ちょっと待った」です。(他の理由なら別ですが。)NoSQLに移行すれば何もかもがバラ色と...
View Article[勝手に補足]SQLの観点から「Oracle Database」「PostgreSQL」 「MySQL」の特徴を整理しよう!
結構人気(?) のこの記事、ざっとよもうと思ったら最初に誤植(?) があったので、通読してまとめておきます。。。。 SQLの観点から「Oracle Database」「PostgreSQL」 「MySQL」の特徴を整理しよう!(DBonline) なお、以下二ページ目の閲覧は会員登録(無料)が必要です。 表2:主なデータ型の比較 [誤] Oracle、PPEE(※) PostgreSQL MySQL...
View ArticleすごくどうでもいいかもしれないMySQL 5.7の変更点 in mysql_install_db
取り合えず、PerlからCに変わってる。$ file /usr/mysql/5.6.20/scripts/mysql_install_db/usr/mysql/5.6.20/scripts/mysql_install_db: a /usr/bin/perl script text executable$ file...
View ArticleMySQLのスローログのローテーション
Original post: http://anothermysqldba.blogspot.com/2014/10/rotating-mysql-slow-logs.html異なるクライアントでの作業中に、私は時々非常に大規模なスローログファイルを渡って実行するために起こる。 が、それらを回転させるべきかについて、いくつかの意見が存在する。...
View Article[mysql]MySQL Central(2014)のセッション資料一覧
2014年9月末から10月頭にかけて開催された、MySQL Central @ Oracle Open World では、60を超えるセッションが開かれました。 講演資料も続々公開されているのですが、いちいちセッションのページを開いてみないと、資料が公開されているのか否かが分からないのが不便だったので、公園ページへの一覧に資料有無を記述したリンク集を作りました。...
View ArticleMySQL 5.7.5でsecure-authが軒並み使えなくなるはなし
みんなだいすき(?)、MySQL 4.0以前の古い16桁ハッシュで保存されたパスワードで認証するために必要な --secure-auth...
View ArticleMySQL 5.7では"[Note] mysqld: ready for connections"がどっかいった? (いってなかった
MySQLがちゃんと起動したかどうか(クラッシュリカバリーとか終わったかどうか)を見るのに、「"ready for connections"が出てれば接続はできるよ」とか昔から言ってたんですが、5.7.5で遊んでたらどうもこのログが出ない。-- 5.6.212014-10-07 19:38:03 23139 [Note] /usr/mysql/5.6.21/bin/mysqld: ready for...
View ArticleMySQL 5.6.21, 5.7.5以降では、server_idかぶりやserver_uuidかぶりでマシなエラーを吐くようになったらしい
準同期レプリケーションでStop/Startのログが大量に出力される・・・。 : しがないエンジニアのつぶやき を拝見して、そういえばこんなBugがクローズされてなかったっけ? と思い出したので試してみた。MySQL Bugs: #72578: Duplicate slave server_uuid in replication forum gives no specific error...
View ArticleMySQLユーザーがPostgreSQLを触ってみたメモ
最近なぜか MySQL を使う Ruby アプリを PostgreSQL に対応する羽目になっているのですが、今までほとんど MySQL 以外の RDBMS を触ってなかったので、色々ハマったりしたのでメモっときます。 なお PostgreSQL 歴が浅いので間違ってること書いてるかもしれません。 API プログラムから MySQL にアクセスするには Ruby/MySQL...
View ArticleMySQLユーザーのためのPostgreSQL対応表
毎回わからなくなってググってるから今度からここに追記していく。 MySQL PostgreSQL show databases; \l use dbname \c dbname show tables; \dt show table status from dbname; わからん show create table [dbname.]tblname; わからん show full columns...
View Articleinnodb_rubyでfast index creationとそうでないのを比べてみる
や、MyNA会でデモした時にむしろこれをやれよって話なんですが。InnoDB Plugin以降で加わったInnoDBのfast index creationと、それまでのインデックス作成について、innodb_rubyを使って比べてみました。まずは最初にロードを済ませてから、後からfast index creationでインデックスを作るパターン。master [localhost]...
View Articleinnodb_file_format= AntelopeとBarracudaが混じっても特に問題がない
というか混じりようがない。innodb_file_format はそもそも.ibdファイルだけに利くパラメーターであり、innodb_file_per_table が無効の場合は勝手にAntelope相当の状態にフォールバックされる。mysql56> SET GLOBAL innodb_file_per_table= 0;Query OK, 0 rows affected (0.05...
View ArticlePercona Server 5.6.21にsuper_read_onlyが来ました
super_read_onlyって何? => Facebook MySQL 5.6が最初に突っ込んだ(と思う)機能 で、 Super_privがあってもread_only状態を無視できなくする機能(フツーのread_onlyはSuper_privがあると更新できちゃう) => これがFacebook MySQLから WebScaleSQL にポートされて、それが更に...
View ArticleMySQL Fabricつらい(インストール編)
取り敢えずインストールだけしたメモ。インストール編といいながら続編があるかどうかは定かではない。$ sudo rpm -i http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm$ sudo yum install mysql-community-server mysql-utilities$ sudo service...
View ArticleMySQL Fabricつらい(HA/登録編)
昨日インストールしたMySQL Fabric にファーム(MySQL Fabric管理下のmysqld群をこう呼ぶぽい)を追加していく。まずはグループを作成。これが「同じデータセットを持っているマスターとスレーブの組」扱いになるはず。$ mysqlfabric group create my_first_fabric --description="MySQL Fabric is too hard...
View Article