ちょっと硬派なコンピュータフリークのBlogです。

カスタム検索
ラベル mysql の投稿を表示しています。 すべての投稿を表示
ラベル mysql の投稿を表示しています。 すべての投稿を表示

2018-05-14

MySQLのZero Dateへの対処法

MySQLのZero Dateへの対処法

MySQLの0000-00-00 00:00:00は使ってはならない - そーだいなるらくがき帳

このエントリで、MySQLのゼロが含まれる日付け、いわゆるZero Dateについての問題点が色々挙げられているのを見かけたので、手短に対処法を述べておきたい。

2018-05-07

MySQL 8.0登場!立ち止まることを知らない進化はこれからも続く。

ゴールデンウィークはいかがお過ごしされただろうか。今年は天気も良く、行楽日和が続いたように思う。

さて、先日MySQL 8.0が正式にリリースされた。少し時間が経ってしまったが、今回はMySQL 8.0の新機能について紹介したい。コミュニティ版のダウンロードはこちらから可能だ。

ひとつ前の正式バージョンはMySQL 5.7だったのだが、MySQL 8.0は非常に大きなリファクタリングが含まれており、5.x台のバージョン番号を捨て去ろうという話があった。そこで、次のメジャーバージョンは最初の桁を増やすということになったのだが、MySQL 6.0は過去に既に存在し、買収などの騒ぎで開発が頓挫してしまった経緯がある。7.xはMySQL NDB Clusterと被っている。というわけで、5.7の7の部分の次という意味合いもあって、8.0というバージョン番号を引っさげ、満を持しての登場となった。そのバージョン番号が象徴するように、今回のアップデートは非常に大きいものとなっている。

以前の投稿では、開発段階の「マイルストーンリリース」を元に新機能を紹介したが、今回は改めて正式版をベースに新機能の概要について紹介しようと思う。

2016-10-06

私は如何にして詳解 MySQL 5.7を執筆するに至ったか

先日・・・といっても既に先月のことになるのだが、詳解MySQL 5.7 出版記念交流会には多くの方に来て頂いた。台風にも関わらず、とても多くの(60名ほど)の方に足を運んで頂いたのは、本当に嬉しかった。ここで改めてお礼申し上げる。

ありがとうございました!!

さて、交流会のときに使用したスライドを公開したので、興味のある方は見ていただきたい。

2016-09-29

MySQL 5.7新機能解説:レプリケーション、セキュリティ編

今月の頭、詳解MySQL 5.7の出版記念第一弾として、MyNA(日本MySQLユーザ会)名義でイベントを行ったので、その際使用したスライドを紹介しておこう。今回紹介した新機能のカテゴリは2つ。レプリケーションとセキュリティである。レプリケーションはMySQLの運用と切っても切り離せないほど重要なものであり、そしてデータベースサーバーにとってセキュリティが重要であることは、言うまでもないだろう。

2016-09-22

MySQL 8.0.0 Development Milestone Release登場!!

先月、詳解MySQL 5.7を発刊したばかりであるが、MySQL 5.7自体は去年の10月にリリースされたバージョンである。それから約1年弱、MySQLは開発の手を緩めること無く日々改良を重ねている。

そう、MySQL 8.0の登場である。

2016-07-15

書籍発行のお知らせ:詳解MySQL 5.7 〜進化したMySQLをよく知るためのテクニカルガイド〜


既に昨日のdb tech showcaseのスライドでご存じの方も多いだろうが、この度MySQL 5.7の新機能を解説するための書籍を発行させていただくこととなった。8月23日発売予定である。

2016-07-14

DB Tech Showcase Tokyo 2016 で発表しました。MySQL 5.7の新機能 〜InnoDB編〜

表題の通り、db tech showcase Tokyo 2016にて、MySQL 5.7の新機能についての解説を行った。スライドをアップロードしたので、セッションに来てくれた方も、見逃したという方もぜひ見て頂きたい。

2015-12-25

オプティマイザトレースによるちょっとディープな快適チューニング生活

メリークリスマス!!今日はMySQL Casual Advent Calendar 2015の25日目をお届けするぞ!!

前回のエントリでは、MySQL 5.7におけるオプティマイザの改良点や新機能についてのスライドを紹介した。MySQL 5.7のオプティマイザの良し悪しは、ぜひみなさんの手で確かめて頂きたい。ところで、オプティマイザといえばひとつ前のバージョンである、MySQL 5.6で追加されたオプティマイザトレースという機能がとても便利だ。使いこなせばクエリチューニングの強い味方になるので、ぜひまだ使ったことがないという方は、一度試してみて欲しい。本ブログではまだ紹介していなかったので、今日はその使い方と見方を紹介しようと思う。

2015-12-16

MySQL User Conference Tokyo 2015で発表しました:MySQL 5.7におけるオプティマイザの改良点

昨日、告知させていただいたMySQL User Conference Tokyo 2015で登壇したので、その時の資料を公開した。MySQL 5.7の機能は全部ひとつのスライドで紹介しようとすると、多すぎて私にはコンパクトにまとめるだけの技量は無いため、今回はオプティマイザだけの紹介にした。興味のある方はご覧頂きたい。

2015-12-10

告知:MySQL User Conference Tokyo 2015

来週、12月15日にMySQL User Conference Tokyo 2015というイベントがある。前回のユーザーカンファレンスは2008年だったので、およそ7年ぶりの開催となる。今回は10時から17時という日中のスケジュールなので調整が難しいかも知れないが、都合が付く人はぜひ参加していただきたい。私も1セッションしゃべる予定だ。

2015-06-26

MySQL・PostgreSQLユーザーグループ(MyNA・JPUG)合同DB勉強会で発表した資料を公開しました。「データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜」

表題の通り、MyNAとJPUGの合同DB勉強会で発表をしたので資料を公開した。



内容の詳細はスライドそのものを見ていただくとして、言いたいことの主旨はこうである。世の中に完璧なデータモデルはないので、NoSQLは当然の如く必要になる。だが、何でもかんでもNoSQLを使えば良いというものではない。むしろアプリケーションが必要としているデータモデルが何かということをよく理解し、本当に必要な場合にこそ、NoSQLを使うべきなのである。つまり「ご利用は計画的に!」ということだ。

大切なのは、様々なデータモデルを理解し、アプリケーションにとってベストな製品を選択するということだ。ベストなのがRDBかも知れないし、そうでないかも知れない。最適なデータモデルを選択した場合に、出来上がったものの性能も最高になるし、開発効率も最も良くなる。データベースの主流はRDBだが、それはリレーショナルモデルがカバーできる範囲がとても広く、他のアプローチでは代替できないというちゃんとした理由がある。それ以外の選択肢が過去にはあまり流行らなかったのには理由があるのだ。

だから、単にNoSQLを使うだけでトータルの人件費を安くできる・・・なんてことはあり得ない!!絶対にだ!!

アーキテクチャを選択する立場にある人は、ぜひとも合理的な判断をしていただきたいと思う。

ところで、今回はオープンソースのRDBであるMySQLとPostgreSQLが合同で勉強会をするという、個人的にはエポックメイキングなものであった。ここ最近ではほとんど聞いたことがなく、個人的には合同勉強会に出席したのは初めてのことである。

本来であれば、会社や立場の垣根を超えて協業ができるのがオープンソースの利点であるはずである。であれば合同勉強会を阻むものは何もないはずだ。同じRDBというジャンルの製品であるので、話が通じることも多いだろう。面白いので関係者各位にはもっと開催する方向でお願いしたいと思う。

2015-06-15

DB Tech Showcaseで発表したスライドを公開しました:MySQL Cluster 7.4で楽しむスケールアウト

表題の通り、MySQL Cluster 7.4で楽しむスケールアウトというタイトルのスライドを公開した。


2015-06-09

講演の予定等:dbtech showcase、software design 7月号、MyNA・JPUG合同DB勉強会 in 東京

何だか6月は忙しくなってしまった。講演2回、雑誌での執筆1回がある。もし興味があれば講演を聞きに来たり雑誌を買ったりして頂きたい。

2015-06-05

MySQL 5.6リファレンスマニュアル日本語版のお知らせ

MySQL 5.6 リファレンスマニュアル

というわけで、日本語版のマニュアルがリリースされた。これまでMySQL 5.6のリファレンスマニュアルは英語版しか無かったのだけど、公式に日本語版がリリースされる運びとなったので、是非参照して頂きたい。

かつてMySQL 5.1の日本語版マニュアルが存在したのだが、そちらは現在ウェブから参照できなくなっている。(PDF版はダウンロードできるという話も。)MySQL 5.1の日本語版マニュアルは、ぶっちゃけ翻訳があまりイケてなかったので、今後はぜひMySQL 5.6の日本語版を参照してもらいたい。ついでにもう古のバージョンは窓から投げ捨てて、この機会に是非新しいバージョンへ移行してみてはいかがだろうか。

何か問題が見つかった場合には、ぜひバグレポートをお願いします。バグレポートのカテゴリは「Japanese Documentation」を選択してください。

2014-12-25

MySQLレプリケーションの運用が劇的変化!!GTIDについて仕組みから理解する

メリークリスマス!!やあ、良い子のみんな!!サンタクロース・・・ではなく、ヒゲモジャギークからのクリスマスプレゼントだよ!!

というわけで、MySQL Casual Advent Calendarの25日目である。今朝Advent Calendarを覗いてみると、本日分のエントリーが無かったので、急遽書くことにした。Advent Calendar最後の日、クリスマスを飾る記事のテーマはGTIDだ。

前回の投稿では、MySQL 5.6の目玉機能として、レプリケーションがクラッシュセーフになったことを挙げた。レプリケーションまわりで言えば、もうひとつ外せない目玉機能がある。それがGTID(Global Transaction ID)である。

GTIDは良くも悪くもレプリケーションの運用を変化させる。GTIDを使うことによって得られる最大のメリットは、CHANGE MASTER TOでバイナリログポジションをいちいち指定しなくても良いということだ。スレーブが要求するGTIDから、自動的にどのポジションからバイナリログを転送すれば良いのかを判断してくれる。マスターに障害が生じたなどの理由でスレーブを昇格させるとき、最も進んだスレーブを選択しさえすれば、後は勝手に差分を調整してくれるのである。何て便利な機能なんだ!と思わざるを得ない。

その一方、GTIDを使う上では運用者のマインドにも変化が求められる。運用方法がガラリ変わってしまうからだ。スレーブの構築方法や、日々のバックアップ等の運用にも変化が求められる。今日は、便利だけど注意が必要なGTIDについて、その仕組みから解説しようと思う。

2014-12-16

まだMySQL 5.5で消耗してるの?MySQL 5.6でクラッシュセーフなレプリケーションを活用して枕を高くして眠れる日々を満喫する方法

MySQL 5.6が登場してからかなりの月日が過ぎたが、他のことで多忙だったせいか、MySQL 5.6についてはあまりブログで情報を発信していないことに気がついた。これはイカン!!と思い、MySQL Casual Advent Calendar 2014に合わせて、MySQL 5.6を使用する上で最もオススメしたい機能であるクラッシュセーフなレプリケーションについて解説しようと思う。この記事は16日目の記事である。

2014-09-22

OSC広島と中国地方DB勉強会に参加しました。

かねてから予告していた通り、OSC広島と中国地方DB勉強会(第5回)に参加させて頂いた。両方のイベントがこの土日で連続して行われたので、いずれのイベントにも遠方からの参加者がたくさんいて盛況だったように思う。OSC広島ではデモマシンの展示を、中国地方DB勉強会ではスライド(MySQLのトラブルシューティングについて)の発表をそれぞれやらせて頂いたので、今日はその報告をさせて頂こう。

2013-12-20

InnoDBのREPEATABLE READにおけるLocking Readについての注意点

本日は、MySQL Casual Advent Calendar 2013の20日目である。というわけでカジュアルに小ネタを紹介しよう。

2013-11-25

オープンセミナー徳島で発表したスライドを公開しました。

徳島オープンセミナーというイベントに招いて頂き、MySQLの運用まわり(?)の話について話す機会に恵まれた。運用といいつつ運用以外の話も色々混じっているが、平たく言うと「MySQLを使う上で躓きやすいポイント」というのが今回のお題である。セミナーで用いた資料を公開したので気になる人は参考にして欲しいと思う。

2013-10-16

たった30秒でMySQLをコンパイルする方法 rev.2

もう2年以上前になるが、以前「MySQL 5.5をわずか30秒足らずでコンパイルするためのテクニック」というエントリを書いた。 エントリに書いた内容はそれなりにコンパイルの高速化に寄与はするが、実は測定方法は正しくなかった。このことについて、いつも冷静さを失わない奥一穂氏から、いつもの冷静さで指摘を頂いた。


奥さんの言う通りである。指摘をもらってから気がついた。反省した。それからからずっと「まっとうにコンパイルして30秒を切る方法」を模索してきた。そしてついに、ccacheを使わずにまっとうにMySQL 5.5のコンパイルを30秒未満で実行することが出来たので、その方法を紹介しようと思う。

速いマシンを買う