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/
ありがとうございました
ぜひ、ブースへもお立ち寄りください。
(データベースだけでなく、色々な、 おもしろいことをやっている人たちが 来ています!)
Top Related