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 1941 to 1950 of 3187 « Previous | Next »
MySQL-5.6.4からの新機能「InnoDB FullText Search」を用いた全文検索エンジンのベンチマークLTをしました。#mysqlcasual

2013年4月17日にオラクルで開催された「MySQL Casual Talks Vol.4」に初参加してきました。
さらにライトニングトーク(LT)もさせて頂けましたのでレポートしたいと思います。

前夜

開催前日の夜に「MySQL Casual Talks Vol.4」のイベント告知をTwitterで見つけました。
この手の勉強会は気づいたときには満席で参加を諦める事が多かったのですが、
今回は「事前登録不要/先着順受付」という新しい試みのお陰もあり、参加することが出来ました。

…

[さらに読む]
Planet MySQL JapanのRSSフィードに自分のブログを3ステップで追加する方法

皆さん、Planet MySQL Japanというサイトをご存じでしょうか?
公式のFAQ(以下参照)にあるように、MySQLにまつわる記事をまとめてくれるサービスです。
さらに、記事は https://twitter.com/planetmysql_jp にも掲載されます。
2013年4月20日現在、24のブログが登録されています。

What is Planet MySQL?

Planet MySQL is an aggregation of blogs and news from MySQL developers and users. The views expressed here are those of the author and do not …

[さらに読む]
CentOS6にMySQL-5.6.10/5.6.11をオラクル公式rpmを用いてインストールする方法

CentOS-6.xの環境にオラクル公式のMySQL-5.6バイナリをyum(rpm)で入れる方法を紹介します。

  • 追記(2013年5月1日)
    MySQL-5.6.11がリリースとなりました。
    以下の5.6.10を5.6.11に書き換えれば同様に動く事を補足します。

想定環境

CentOS-6.4 (x86_64)

事前準備

MySQLのrpmを何らかの手段で用意します。

今回は …

[さらに読む]
#mysqlcasual vol.4 でLTしてきました

4/17 に日本オラクルで開催された MySQL Casual #04 で話して来ました。

当日のスライドは以下になります。

SQLがむずかしくて生きるのがつらい

ちょいとまだ作り始めたばっかりで微妙なところも多々あるんですが、mruby_storage_engine のレポジトリは以下になります。

kamipo/mruby_storage_engine · GitHub

発表について

けっこう時間なくて準備にテンパってたので、あとで言及されてるのをみると説明たりてなかったなー(絞り込めないってLIMIT …

[さらに読む]
information_schema.INNODB_BUFFER_PAGEのACCESS_TIMEが何か変な件

取り敢えずBugsにも上げたんですけど、エスパーさんでないと伝わらない気がしています。

http://bugs.mysql.com/bug.php?id=68981


MySQL 5.6.2, 5.5.28, 5.1.66に搭載された新しいinformation_schema、INNODB_BUFFER_PAGEとINNODB_BUFFER_PAGE_LRU。
⇒ http://yoku0825.blogspot.jp/2013/02/informationschemainnodbbufferpage.html

これの中身をちょこちょこ確認していたところ、どうにも`ACCESS_TIME`が納得のいく値にならないことに気付いた。


mysql56> DESC INNODB_BUFFER_PAGE;
+---------------------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | …
[さらに読む]
MySQL 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しないのか?
 ⇒しない。START TRANSACTION WITH CONSISTENT SNAPSHOTの時に
  binlog_snapshot_fileセッション変数とbinlog_snapshot_positionセッション変数に
  値を自動的に格納してくれる。すご。
  https://kb.askmonty.org/en/enhancements-for-start-transaction-with-consistent-snapshot/
  ⇒対応していないバージョンの場合、オプション解析中にFLUSH TABLES WITH READ LOCKが
   必要な分岐に流れる。



527c531,532
< …

[さらに読む]
MySQL の "Illegal mix of collations" エラーについて

MySQL で「Illegal mix of collations」というエラーが出ることがあります。テーブルの charset と接続の charset 等、すべてを utf8 などで統一してれば出ないので、あまり見ることはないかもしれません。

私はカラム毎に charset を指定することがあるので、時々このエラーにハマります。

たとえば、次のようなテーブルを作ったりします。

CREATE TABLE users (
  id INT PRIMARY KEY AUTO_INCREMENT,
  email VARCHAR(320) CHARSET ascii UNIQUE,
  name VARCHAR(30) CHARSET utf8
);

メールアドレスの規約は、ローカル部が最大64バイト、ドメイン部が最大255バイト、それと @ の1バイトで合計最大320バイトなので、 VARCHAR(320) にします。UNIQUE インデックス持つカラムを utf8 charset で …

[さらに読む]
REPLACE INTOが実はINSERT + DELETEだったと思ったら、結局DELETE + INSERTだった

REPLACE INTOが実はINSERT + DELETEだった(INSERTが先で後から消す)の続き。

REPLACE INTOは「DELETE + INSERT(その行を消してからもう一度書く)」だと今まで思っていたけれど、
実は「INSERT + DELETE(行を突っ込んでから古い行を消す)」な動きっぽいというはなし。

そっちが先なんだびっくりー、という感じで書いたのですが、
色々手落ちがあったので後から調べたことをメモ。


1) その結果だと時間が一緒だから、「DELETEトリガーがINSERTトリガーより先」というのは断言できない。順番は必ずしも保証されないから。
⇒TRIGGERの中身をSYSDATE(6)に書き換えてみました。

mysql56> …
[さらに読む]
REPLACE INTOが実はINSERT + DELETEだった(INSERTが先で後から消す) 間違ってました。。

「INSERT .. ON DUPLICATE KEY UPDATE ..でクエリを投げているけど、99%くらいはUPDATEになっている」
「UPDATEを直接投げた方が速かったりする?」
「極端にパフォーマンス違うんだったら、UPDATEが転けてからINSERTする方式も考える」

とか聞かれたのでINSERT .. ON DUPLICATE KEY UPDATEについて調べてたんですが、
ソース読んでたら豆知識に出会ったのでメモ。

5.6.10のsql/sql_insert.ccの中でゴニョゴニョしている気配があるけど、write_record関数の中で

table->file->ha_write_row(table->record[0]してみる。
⇒何もないINSERTだとエラーになったらエラー。
⇒REPLACE INTO, INSERT .. ON DUPLICATE KEY UPDATEだと
それぞれHA_ERR_FOUND_DUPP_KEYを引っ掛けてハンドルしている。
…

[さらに読む]
mixiのサーバOS移行のお話 - ビルド&Kernel編

こんにちは。年末と年度末になるとブログを書きたくなる運用部アプリ運用グループの清水です。

気づけば前回の記事から3ヶ月が経過してしまいました…

今回は、ビルド&Kernel編と題して、Fedora 17向けにおこなったパッケージのビルドや、KernelのConfig、TCP周りの変更点について紹介したいと思います。

パッケージのビルド

OSが大幅にバージョンアップすると、依存しているライブラリに大きな変更が入ったり、RPMの仕様変更もあるため、Fedora 8時代のパッケージのリビルドなど、多くのRPMパッケージを作りなおさなければなりません。

mixiでは、Fedora標準パッケージとは別に150個以上のパッケージを、

  • configureなどビルドオプションを変える
  • …
[さらに読む]