OSC2013-Hokkaido...

Preview:

DESCRIPTION

2013年9月14日(土)に札幌コンベンションセンターで開催された、OSC2013-Hokkaido(オープンソースカンファレンス2013北海道)にて、MySQLユーザ会枠として行った、表記セミナーの資料です。 https://www.ospn.jp/osc2013-do/

Citation preview

MySQL         .        

「なんちゃってユーザ」からの脱却

~今日から語れる MySQL 入門

2013/09/14

日本 MySQL ユーザ会

坂井 恵( sakaik )

OSC2013-Hokkaido  MySQLセミナー

本日のおしながき• MySQL のバージョン番号について知ろう

• MySQL を時系列に知ろう

• MySQL の最新情報を知ろう

 などを中心に、いろいろお話します。

本日の OSC でのデータベース関連話題

結論

データベースは、楽しい!

し、重要!

本日のスピーカー• 坂井 恵(さかいけい) @sakai

k• 日本MySQLユーザ会 副代表• 千葉県我孫子市在住• OSC北海道は、 2 年ぶり3回目

■ 好き  ( 参考 )

 ラーメン   パズル    将棋(見るだけ)  自転車ロード(見るだけ)  音楽   歌舞伎(見るだけ)

 仕事と関係ないことを知ること   初めての街歩き

上野駅から電車で一本のところです。つまり、札幌駅から電車で 2本!

私のかんがえ

• 最先端の情報だけが「意味のあるもの」というわけではない。

• 自分が新しく理解したことは、数ヶ月前の自分(みたいな状態の人)に伝えて欲しい。

α 点

β 点

あと、基礎、重要!ゼロからイチへ!

RDBMSの基礎といえば• SQL!

• SQL!!

• SQL!!!!!

セルコ『プログラマのためのSQL』 第 4 版

• 発売日: 2013/05/23

• 著者: セルコ• 監訳: ミック• ページ数: 約 800 ペー

ジ• 厚さ: 約4cm• 価格: ¥4,830少しだけ、翻訳後のお手伝い(査読)をさ

せていただきました。

セルコ『プログラマのためのSQL』 第 4 版

• RDBMS 的考え方の基本• 膨大な量の翻訳• 内容の検証、修正• ふんだんな訳注• 隅々まで行き届く気配り

セルコ『プログラマのためのSQL』 第 4 版

RDBMS 的考え方の「あるべき姿」に触れられる。

今はよくわからなくても、一度は目を通しておくべき一冊。

( 5 年後に、「あぁどこかで聞いたことがあるかも」と、なります、きっと)

(0) MySQL とは

MySQL とは• RDBMS (リレーショナル・データベース管理シ

ステム) です。

• RDBMS とは、要するに、データの安全な格納、高速な取り出しを基本とし、その他便利な機能をいっぱいつけたものです。

• 「ストレージエンジン」レイヤの分離が特徴

(1) MySQL のバージョン番号

MySQL のバージョン番号質問!

あなたの使っている、 MySQL のバージョンは?

バージョン番号?4? 4.0?

4.1?

5?5.1?

5.2?5.3?

5.5?

5.6?

4.2?

3?6?

23?

M y SQL のバージョン番号• MySQL のバージョン番号は X.Y.Z 形式。 X.Y の部分がメジャーバージョンです。

 (バージョン X.Y シリーズ、という言い方をする)

• 各メジャーバージョンでは、– Alpha 、 Beta 、 RC または、– Milestone 、 RC

MySQL のメジャーバージョン• MySQL 3.23 (2001) みんなが使い始めた• MySQL 4.0 (2003)使いやすくなってきた• MySQL 4.1 (2004)ノーコメント• MySQL 5.0 (2005) 大きな進化• MySQL 5.1 (2008)更に大きな進化• MySQL 5.5 (2010)Oracle 後初のメジャー• MySQL 5.6 (2013)現在の最新バージョン• MySQL 5.7 開発中 (milestone)

知ったフリをするコツ (1)

MySQL のバージョン番号を言う時は、必ず、

    なに てん なに

の形式で言おう!

One more thing:「なにてんなに、の、いくつ」まで言えると、もっとツウっぽいぞ!

http://dev.mysql.com/downloads/

( 2 ) MySQL のれきし

時系列で知ろう MySQL

M y SQL の歴史• 1995年 TcX が初バージョン公開

– 1997年 Ver.3.20 が stable に• 1998年 日本語パッチが採用される• 2000年 MySQL AB 設立

– 2001年 Ver. 3.23 が stable に– 2003年 Ver. 4.0 が stable に– 2004年 Ver. 4.1 が stable に– 2005年 Ver. 5.0 が stable に

• 2005年 Oracle が InnoBase を買収• 2006年 MySQL KK 設立• 2008年 Sun Microsystems が買収

– 2008年 Ver. 5.1 が stable に• 2010年 Oracle が買収

– 2010年 Ver. 5.5 が stable に

MyNA (日本 MySQL ユーザ会)の歴史■略歴1997年 とみたまさひろ氏が日本語化パッチ作成

1998年 メーリングリスト( ML )開始

2000年 「日本 MySQL ユーザ会 (MyNA) 」        として発足

現在に至るMyNA: MySQL Nippon Association

M y SQL の歴史• 1995年 TcX が初バージョン公開

– 1997年 Ver.3.20 が stable に• 1998年 日本語パッチが採用される• 2000年 06 月 MySQL AB 設立

– 2001年 Ver. 3.23 が stable に– 2003年 Ver. 4.0 が stable に– 2004年 Ver. 4.1 が stable に– 2005年 Ver. 5.0 が stable に

• 2005年 Oracle が InnoBase を買収• 2006年 MySQL KK 設立• 2008年 Sun Microsystems が買収

– 2008年 Ver. 5.1 が stable に• 2010年 Oracle が買収

– 2010年 Ver. 5.5 が stable に

1998.01 国内 ML開始2000.03 MyNA 発足

MyNA (日本 MySQL ユーザ会)■ 目的– 日本での MySQL の普及を図る– ユーザ間のコミュニケーションを図る– MySQL の日本語化の検証/開発を行う

参考:  「 MySQLユーザ会のこれまでとこれから」@デブサミ 2011     http://www.slideshare.net/tmtm/mysql-6956074

http://mysql.gr.jp/

M y SQL の歴史 (抜粋 )

• 2000年 06 月 MySQL AB 設立

• 2005年 Oracle が InnoBase を買収

• 2008年 Sun Microsystems が買収

• 2010年 Oracle が買収

買収による影響(私見)2005年 Oracle が InnoBase を買収

※意見には個人差があります

→「 Heikki 、何考えてるんだ!?」  「 Oracle も、相当、 MySQL を脅威に感じているんだろうな」  「それにしても、本気で首根っこ押さえに来たなぁ」  「どうするつもりなんだろう(不安)」

※個人の感想です

買収による影響(私見)2008年 Sun Microsystems が買収

※意見には個人差があります

→「有力ストレージエンジン (InnoDB) が買われた後は、本体かぁ。それにしても $1B とは、ごっついなぁ。」

(その他の感想については、あまり記憶にないが、「しっかりした」企業の下で、安定した開発体制になることを期待し、どちらかというと歓迎ムードな心境だった気が・・・・)

※個人の感想です

リリースサイクルがとても安定した。

買収による影響(私見)2010年 Oracle が買収 (現在に至る)

※意見には個人差があります

→「あれま!」

 

※個人の感想です

しかし、個人的には比較的楽観。

なぜなら・・・・・

GPLユーザだから。 

買収による影響(私見)2010年 Oracle が買収 (現在に至る)

※意見には個人差があります

→「あれま!」

 

※個人の感想です

しかし、個人的には比較的楽観。

なぜなら・・・・・

GPLユーザだから。 

買収による影響(私見)Oracle買収後

※意見には個人差があります※個人の感想です

■Positive・ InnoDB と本体の開発チームの意思疎通     →開発速度の向上、安定性の向上

・やっぱり、しっかりとマーケとかの仕事をやる会社(という印象)

■Negative・大会社なりの、窮屈さ(という印象)・非 GPL ユーザさんは、ルール変更で苦労された方もいるらしい

これはでかい!

買収による影響別会社や、フォークについて: 2 度の買収の過程で、新会社に移らず出て行った人たちを中心に作られた会社たち。

・Maria DB ( 会社名は Monty Program AB )    MySQL を作った 通称Monty が作った会社。    MySQL のフォークである MariaDB を開発。

・ Sky SQL   主に Oracle買収のタイミングで新会社に移らなかった人を   中心に作られた会社。   主に、 M y SQL のサポートを行っている。

⇒  2013 年 4 月、両者は合併し、更に MariaDB Foundation を設立すると発表。

知ったフリをするコツ ( 2 )

「買収で、オワタ? 何言ってんのさ。

 開発は好調に進めてくれているし、  GPL ユーザなら今使ってるものが 使用禁止になるわけじゃないし、 問題ないと思うよ。」※意見には個人差があります。※非 GPL ユーザは、それぞれのビジネス要件に応じて個別にご判断ください。

イザとなったら、受け皿としての MariaDB もあるわけだし。

(3) MySQL の最新情報

現在の主なメジャーバージョン• MySQL 5.5 (2010)Oracle 後初のメジャー

• MySQL 5.6 (2013)現在の最新バージョン

• MySQL 5.7 開発中 (milestone)

MySQL 5.5 (概要 )

• utf8mb4 対応   http://www.mysql.gr.jp/frame/modules/bwiki/index.php?cmd=read&page=utf8_4

• PERFORMANCE_SCHEMA 登場

• mysqld オプションの default-character-set 廃止 > character-set-server に。

           http://d.hatena.ne.jp/sakaik/20100414/mysql533obsol

まずは一応ある、というレベルから開始。

なにも考えずにバージョンを上げた人が、まずハマる!「 MySQLサーバが起動しなくなったっ!!!」

MySQL 5.6  ( GA)• InnoDB の高速化、便利化

– 処理スレッドの役割見直し– Mutex処理の最適化– 統計情報を再起動後も引き継ぎ可能に– デッドロック検出をエラーログに出力可能に

• INFORMATION_SCHEMA の充実

• PERFORMANCE_SCHEMA の充実

• レプリケーションの強化– Binlog への書込をクラッシュセーフに– RBR (行ベースレプリケーション)のフォーマット指定可能に– 遅延レプリケーション

見たい情報を見られるようになってきた!

MySQL 5.7 ( milestone)

• InnoDB の更なる発展– 主にテンポラリテーブルに対する速度向上– 地理情報型をサポート! (前バージョンでは BLOG  型に突っ込んで

いた)

• 診断情報の取得 (GET DIAGNOSTICS)• mysql クライアントコマンドの進化

– ctrl-c で終わらなくなった!(笑)– --syslog オプションの追加– --histignoreオプションの追加 (履歴やログに残さないものの指定)

• mysqlbinlog で DB名を変更しての出力を可能に• HANDLER文が、パーティショニングされたテーブルにも使用可能に

5.7.1 m11

知ったフリをするコツ ( 3 )

今(自分でバージョンを選んで)使うなら、迷わず、バージョン 5.6 。

5.7 情報にも、チラッとアンテナを立てておこう

「前のバージョンから、 5.5以降にバージョンアップしたときは、なんかパラメタ変える必要があるみたいだよ」

今だとリアルタイムで最新情報に乗れる!

まだ時間あるかな・・・

ある → 次ページへない →  Game over

情報源等(マニュアル)• 日本語   4.1, 5.1 …. あり。 キホン英語推奨

   http://dev.mysql.com/doc/refman/5.1/ja/

• 英語    各バージョンあり。常に更新

• 日本語の非充実(英語を読もう)

情報源・交流など• 札幌MySQL勉強会    (不定期開催)

http://www.geocities.jp/sapporo_mysql/

ありがとうございました

ぜひ、ブースへもお立ち寄りください。

  (データベースだけでなく、色々な、  おもしろいことをやっている人たちが  来ています!)

Recommended