MariaDB(マリアディービー)。「MySQL」から派生したオープンソースリレーショナルデータベースシステムです。拡張性/処理性能/高品質が評価され、世界中で急速にシェアを拡大しており、Googleや数多くのLinuxディストリビューションでも、「MySQL」に代わって「MariaDB」が採用されています。

オープンソースのデータベース/MariaDBとは

MariaDB(マリアディービー)。「MySQL」から派生したオープンソースリレーショナルデータベースシステムです。拡張性/処理性能/高品質が評価され、世界中で急速にシェアを拡大しており、Googleや数多くのLinuxディストリビューションでも、「MySQL」に代わって「MariaDB」が採用されています。

MariaDB(マリアディービー)とは、「MySQL」から派生したオープンソースリレーショナルデータベースシステムです。拡張性/処理性能/高品質が評価され、世界中で急速にシェアを拡大しており、Googleや数多くのLinuxディストリビューションでも、「MySQL」に代わって「MariaDB」が採用されています。

目次

「MariaDB」基本情報
・基本説明
  ・経緯
  ・ポイント
  ・「MySQL」と「MariaDB」の主な違い
・主な特徴
  ・MySQL互換
  ・ストレージエンジン
  ・パフォーマンス
・同様製品(概要情報)
・導入事例
・ライセンス情報
・ダウンロード

ざっくりわかる「MariaDB」
第1回 MariaDBとは(入門編)
・参考サイト
  ・MariaDBオフィシャルサイト
  ・MariaDBナレッジベース
  ・Wikipedia
  ・MariaDBの由来/歴史と特徴
  ・MariaDB 10.0 新機能
第2回 MariaDBとMySQLの比較
・参考サイト
  ・MariaDBの前提知識
  ・似ているところ と 似ていないところ
  ・DB機能比較
  ・性能比較
  ・ベンチマーク比較
  ・AWS環境下での動作/設定項目についての比較
第3回 MariaDBの環境別インストール方法
・参考サイト
  ・ダウンロード方法
  ・CentOS/RedHat/Fedora編
  ・Windows編
  ・Mac編
  ・Docker編
  ・AWS編
第4回 MariaDBの使い方
・参考サイト
  ・初期設定方法
  ・XAMPPによるMariaDB管理
  ・MariaDBの基本操作コマンド
  ・負荷テストツール「mysqlslap」
  ・監査プラグイン「SERVER_AUDIT」
  ・MariaDBの初期化
第5回 「MariaDB ColumnStore」とは
・カラムストレージエンジン「MariaDB ColumnStore」の概要
・参考サイト
  ・「MariaDB ColumnStore」オフィシャルサイト
  ・「MariaDB ColumnStore」発表記事①
  ・「MariaDB ColumnStore」発表記事②
  ・「MariaDB ColumnStore」コンサルサービス記事
  ・「MariaDB ColumnStore」ナレッジベース

TOPに戻る

「MariaDB」基本情報

基本説明

MariaDBは、MySQLのオリジナルコード開発者である「Michael "Monty" Widenius」氏らのプロジェクトによって開発されているオープンソースリレーショナルデータベースです。

MySQLのブランチに相当し、MySQLとの互換性を保ちつつ、性能/堅牢性を高めるための独自機能を備えています。MySQLとの互換性を保ちつつも、よりよいデータベースとなることを目指し開発されています。

その開発精度の高さや緻密さが世界中のエンジニアから評価され、ダウンロード数が急増し、シェアを急速に拡大しています。Googleのシステムに採用されたり、代表的Linuxディストリビューションにおいて、MySQLに代わってMariaDBが標準データベースになっています。

MariaDBには、5.5系(MySQL5.5以前の完全互換を重視)と10.0系(フォーク)の2つの系統が存在します。

経緯

MariaDBの「Maria」は、開発者であるWidenius氏の次女の名前(マリア)から命名されています。ちなみに、MySQLの「My」は、長女の名前(ミー)が由来となっています。MariaDBはMySQLの妹分のような存在です。

MariaDB誕生のきっかけは、当時のSunMicrosystems社による「MySQL Ab」社の買収でした。Widenius氏は開発方針の相違などから、2009年にSunMicrosystems社を退社し、2010年に「Monty Program Ab」社を立ち上げて、MySQLからフォークさせたMariaDBの開発を開始しました。2012年に、コミュニティ主導を理念として、同氏が設立した非営利団体「MariaDB Foundation」へMariaDBの所有権と開発拠点を移します。その後、MariaDB社がMariaDBのエキスパート企業として、サブスクリプション販売などの関連サービスを展開しています。

ポイント

・MySQLのソースコードをベースにいくつかの機能を追加 ・MySQLの不具合修正を定期的に反映 ・MySQLとの高い後方互換性を持つ ・マルチプラットフォーム(Linux、Windows、Solaris、MacOS X) ・コミュニティ版(GPL v2)のみ

「MySQL」と「MariaDB」の主な違い

「MySQL」と「MariaDB」は、基本的にはほぼ同じ機能を有していますが、異なる点もあります。

ストレージエンジンの追加/変更 MariaDBでは、いくつかストレージエンジンが追加/変更されています。

オプティマイザ強化 MariaDBでは、SQLの実行計画を決定するオプティマイザに大きく手が加えられています。MySQLと比較してMariaDBは、ディスクアクセス/結合/サブクエリなどの実行計画パターンが多くあります。

その他の機能追加 INFORMATION_SCHEMAに4つの表を追加、JSON対応、GIS対応など、MySQLよりもMariaDBのほうが進んでいる部分があります。

主な特徴

MySQL互換

MariaDBは、意識的に互換性を保ちながら開発されており、インストール方法やディレクトリ構造がほぼ同じであるため、MySQLからMariaDBへの移行もスムーズに行えます。互換性は非常に高く、データ/表定義ファイルなどはそのまま移行して使えます。クライアントAPIやプロトコルも同様です。

ストレージエンジン

MariaDBは、MySQLの標準ストレージエンジンに加え、多くのストレージエンジンを採用しています。 ・Aria ・InnoDB/XtraDB ・MyISAM ・NDB ・Archive ・Memory ・Federated-X ・InfiniDB ・Galera ・Sphinx ・TokuDB ・Connect ・Cassandra ・SpiderDB など

パフォーマンス

スレッドプーリング、並列レプリケーション、マルチソースレプリケーション、グループコミット、MyISAMセグメントキーキャッシュなど、高性能を実現するためのさまざまな機能が標準で実装されています。

MariaDBは、「MySQL Enterprise Edition」相当の機能である「スレッドプール」が標準で利用できるのが魅力となっています。

同様製品(概要情報)

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「MySQL」「PostgreSQL」など。

導入事例

多方面においてMariaDBのシェアが急速に広まっています。

Google、Wikipedia英語版およびドイツ語版、「Red Hat Enterprise Linux」や「Fedora」などのLinuxディストリビューションにおいて、データベースがMySQLからMariaDBへと切り替えられました。

ホテル予約オンラインサービス「Booking.com」でもMariaDBが使用されています。

ライセンス情報

MariaDBのライセンスは、「GNU General Public License Ver2」「LGPL for clients」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

→MariaDB Foundation →Downloads(Source, Binaries, and Packages)

TOPに戻る

ざっくりわかる「MariaDB」

オープンソースリレーショナルデータベース「MariaDB」についての参考となる補足情報を紹介します。

第1回 MariaDBとは(入門編)

「MariaDB」の概要について解説しているサイトを紹介します。

参考サイト

【MariaDBオフィシャルサイト】

ポイント
MariaDBのオフィシャルサイトです。最新情報を参照できます。

テーマ
・About MariaDB
・Download
・Get involved
・Sponsor or donate

ページリンク
→The MariaDB Foundation – Ensuring continuity and open collaboration in the MariaDB ecosystem

【MariaDBナレッジベース】

ポイント
MariaDBについてナレッジベースがまとめられています。一部日本語化されています。

テーマ
・FAQ
・クライアントライブラリ
・ケーススタディ
・コミュニティ
・ダウンロード
・ドキュメント
・リリースごとの違いはなにか?
・開発
・MariaDB / MySQL 推薦書籍
・MariaDB について
・Moving to MariaDB
・About the MariaDB Foundation
・Works With MariaDB
・MariaDB Trademark Policy
・Database Theory
・MariaDB Bug Tracking
・MariaDB ColumnStore
・MariaDB Knowledge Base
・About MyRocks for MariaDB 10.2.5

ページリンク
→mariadb.com →Resources →Knowledge Base →MariaDB–日本語

【Wikipedia】

ポイント
Wikipediaにまとめられている情報です。MariaDBの概要について把握できます。

テーマ
・概要
・データベースエンジン
・データベース接続クライアント
・使用状況
・脚注
・関連項目
・外部リンク

ページリンク
→Wikipedia →MariaDB

【MariaDBの由来/歴史と特徴】

ポイント
MariaDBの歴史や特徴について、コンパクトにまとめられています。

テーマ
・MariaDBとは?
・MariaDBの由来と歴史
・MariaDBの特徴
  ・MySQL互換
  ・ストレージエンジン
  ・パフォーマンス
  ・オープンソース性

ページリンク
→XyXon →MariaDB

【MariaDB 10.0 新機能】

ポイント
MariaDB10.0において、どのような機能強化が行われているかについてまとめられています。
MySQLからのバックポートを取り入れながら、強化されていることが分かります。

テーマ
・MariaDBの独自追加機能
  ・並列レプリケーション
  ・グローバルトランザクションID (GTID)
  ・マルチソースレプリケーション
  ・ストレージエンジンの追加
  ・エンジン非依存のテーブル統計情報
  ・サブクエリ最適化
  ・SHOW EXPLAINコマンド
  ・スロークエリログEXPLAIN出力
  ・スレッド毎のメモリ使用量
  ・SHOW PLUGINS SONAMEコマンド
  ・SHUTDOWNコマンド
  ・KILL 【CONNECTION | QUERY 【ID】 】
  ・UNIQUEキー生成高速化
  ・非同期コミットチェックポイントの実装
  ・FusionIOのDirectFSにおけるアトミック書き込み対応
  ・DELETE ... RETURNING
  ・IF 【NOT】 EXISTS
  ・ダイナミックカラムの強化
  ・ROLEの追加
・MySQL5.6からのバックポート

ページリンク
→XyXon →MariaDB →MariaDB 10.0 新機能

TOPに戻る

第2回 MariaDBとMySQLの比較

「MariaDB」は「MySQL」の妹分というポジションにあるため、この2つはかなり似ています。
「MariaDB」と「MySQL」の違いについて解説しているサイトを紹介します。

参考サイト

【MariaDBの前提知識】

ポイント
MariaDBを使っていくにあたって、MySQLとの比較を前提としつつ、各ポイントについて解説されています。

テーマ
・MySQLとの比較
・超図解
・クエリキャッシュとは
・スレッド周りの説明
・オプティマイザが分析時に利用する統計情報はいつ更新されるか
・perror (エラー内容確認ユーティリティ )

ページリンク
→Qiita →MariaDBをきちんと使っていく為の前知識

【似ているところ と 似ていないところ】

ポイント
MariaDBとMySQLの違いについて、「autoincrement」「REGEXP」「JSON型」「スレッドプール」の4点について解説されています。

テーマ
・MariaDB って?
・MySQL と MariaDB の違いって?
・autoincrement について
・REGEXP の扱いについて
・JSON型に関しての違い
・スレッドプールについての違い

ページリンク
→FirstLogic Lab →MySQL と MariaDB の似ているところ・似ていないところ

【DB機能比較】

ポイント
「MariaDB10.0」と「MySQL5.6」についての、主な機能レベルの比較表としてまとめられています。
各種DB機能について、どちらのDBが対応しているかについて確認できます。
・マルチソースレプリケーション
・Spiderを使ったシャーディング
・エンジン非依存の統計情報
・非インデックスカラムのヒストラグム統計 など

ページリンク
→XyXon →MariaDB →MySQLとの比較

【性能比較】

ポイント
「MySQL5.7とMariaDB10.1の性能比較」についてのスライドと、それに関する補足情報がまとめられています。

テーマ
・はじめに
・MariaDBの変だと思った所
・sysbenchの補足
・LinkBench実行についての補足
・その他ベンチマーク時にはまった点
・公開されているベンチマーク結果について
・最後に

ページリンク
→hiroi10の日記 →MySQL Casual Talks Vol.8 でMySQL 5.7とMariaDB 10.1の性能比較について発表しました

【ベンチマーク比較】

ポイント
ニフティクラウドテクニカルアカウントエンジニアチームによる、MariaDBとMySQLについてのベンチマーク比較です。
「シングル構成」「冗長構成」「スレッドプール」の各条件下で行われたベンチマーク比較結果がまとめられています。

テーマ
・MariaDBリリースについて
・ベンチマーク結果
  ・ベンチ. ツールと構成
  ・ベンチ1. シングル構成
  ・ベンチ2. 冗長構成
  ・ベンチ3. スレッドプール
・まとめ

ページリンク
→NIFTY Could ブログ →MariaDB のリリースとそのベンチマーク結果取得

【AWS環境下での動作/設定項目についての比較】

ポイント
AWSで利用できる「Amazon Aurora」「MariaDB」「MySQL」について動作比較がまとめられています。
・DB Engine Version
・DB Instance Class
・Multi-AZ Deployment
・Storage など

テーマ
・Specify DB Details
・Configure Advanced Settings
・オンデマンドのインスタンス料金
・まとめ

ページリンク
→Developers.IO →Amazon Aurora/MariaDB/MySQLの違いを整理してみる #reinvent

TOPに戻る

第3回 MariaDBの環境別インストール方法

MariaDBのインストール方法について環境別に紹介します。

参考サイト

【ダウンロード方法】

ポイント
MariaDBのダウンロード方法について解説されています。

テーマ
・最新のパッケージ
・MariaDB を含んでいるディストリビューション
・リリース前のバイナリ
・ソースコードの入手

ページリンク
→MariaDB.com →MariaDB はどこでダウンロードできるの?

【CentOS/RedHat/Fedora編】

ポイント
CentOS/RedHat/Fedora向けに「yum」を使用してのMariaDBインストール方法について解説されています。

テーマ
・MariaDB yum リポジトリの追加
・yum で MariaDB をインストール
  ・yum で TokuDB をインストール
・yumでMariaDB Galera Clusterをインストール
・インストール後
・MariaDB 署名鍵を手動で取り込む

ページリンク
→MariaDB.com →yum による MariaDB のインストール

【Windows編】

ポイント
Windowsの場合は、インストーラーに従えば導入が完了します。

テーマ
・MariaDB概要
・入手方法
・対応OS
・インストール手順
・スクリーンショット
・入手先

ページリンク
→プログラム覚え書き →【手順】MariaDB 10.1系 インストール手順

【Mac編】

ポイント
MySQLがインストールされている状態で、MySQLのリンクを外して、MariaDBをインストール方法についてまとめられています。
「brew」を使用してインストールします。

テーマ
・MySQLのリンクを外す
・MariaDBをインストールする

ページリンク
→tagamidaiki.com →今までMySQLが入っていたMacにhomebrewでMariaDBを入れる

【Docker編】

ポイント
MariaDBをDockerコンテナ内のUbuntuにインストールする方法についてまとめられています。
MariaDBの設定ファイルについて細かく解説されています。

環境
・Ubuntu: 16.04.2 LTS
・MariaDB: Ver 15.1 Distrib 10.0.29-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

テーマ
・はじめに
・MariaDBのインストール
・MariaDBの初期設定
・MariaDBにユーザを追加
・MariaDBの設定ファイル
  ・mariadb.cnf
  ・conf.d/mysql.cnf
  ・conf.d/mysqldump.cnf
  ・mariadb.conf.d/50-client.cnf
  ・mariadb.conf.d/50-mysql-clients.cnf
  ・mariadb.conf.d/50-mysqld_safe.cnf
  ・mariadb.conf.d/50-server.cnf
・まとめ

ページリンク
→Takahiro Octopress Blog →Dockerコンテナ内のUbuntuでMariaDBを使ってみよう!

【AWS編】

ポイント
AWSにMariaDBのDBインスタンスを作成する方法について解説されています。

テーマ
・MariaDB DBインスタンスを作成する
・MariaDB データベースエンジンを実行している DB インスタンス上のデータベースに接続する
・DB インスタンスを削除する

ページリンク
→AWS →MariaDB DB インスタンスを作成して MariaDB DB インスタンス上のデータベースに接続する

TOPに戻る

第4回 MariaDBの使い方

MariaDBの「使い方」や「管理ツール」について紹介します。

参考サイト

【初期設定方法】

ポイント
「CentOS7.1」環境に、MariaDBをインストールして、初期設定する方法についてまとめられています。

テーマ
・はじめに
・環境情報
・手順
  ・Install
  ・設定ファイル作成
  ・初期設定
  ・DB作成
  ・権限設定
  ・テーブル作成

ページリンク
→Qiita →Memo: MariaDBのインストール/初期設定

【XAMPPによるMariaDB管理】

ポイント
主要フリーソフトウェア管理ツール「XAMPP」を使用して、MariaDBの各種管理/設定を行なう方法について解説されています。

テーマ
・MariaDBの起動とサービス登録
・rootアカウントのパスワード設定
・rootのパスワード設定後にphpMyAdminのログインに関する設定を行う
・my.iniファイルの確認と修正
・phpMyAdminを使ったサンプルデータベースの作成
・PHPプログラムからMariaDBへ接続テスト

ページリンク
→AdminWeb →XAMPPの使い方 →MariaDBの設定と利用

【MariaDBの基本操作コマンド】

ポイント
MariaDBを使用するための基本的な操作コマンドについてまとめられています。

テーマ
・MariaDB を管理するための基本操作コマンドについて
・MariaDB へログイン
・ユーザ登録、及び削除
・データベース/テーブル操作
  ・データベース作成
  ・テーブル作成
  ・テーブルにデータ追加
  ・テーブルのデータ更新/アップデート
  ・テーブルのデータ削除
  ・テーブル削除
  ・データベース削除
・データベースバックアップ、及びリストア
  ・データベースバックアップ
  ・全てのデータベースをバックアップ
  ・特定のデータベースのみバックアップ
  ・参考 : パスワードを付けて、非対話形式でバックアップ
  ・データベースリストア
  ・全てのデータベースをリストア
  ・特定のデータベースのみリストア

ページリンク
→etuts+ →【連載】 CentOS 7 MariaDB インストールから使い方まで →第2回 : MariaDB テーブル管理、バックアップ等の基本操作コマンド

【負荷テストツール「mysqlslap」】

ポイント
「MySQL」および「MariaDB」に備わっている負荷テスト機能「mysqlslap」の使用法についての解説です。
両者の性能比較検証も行われています。

テーマ
・今回の概要
・mysqlslapの使い方
・MariaDB(10.0.12)とMySQL(5.6.20)での実行比較
  ・MariaDB
  ・MySQL
  ・実行結果の比較

ページリンク
→TECH Pjin →MariaDB はじめてのMariaDB 【第11回 負荷テストツール(mysqlslap)】

【監査プラグイン「SERVER_AUDIT」】

ポイント
MariaDBの監査プラグイン「SERVER_AUDIT」について紹介されています。

テーマ
・インストール方法
・設定パラメータ
・使い方

ページリンク
→Yakst →MariaDBの監査プラグインの導入

【MariaDBの初期化】

ポイント
MariaDBの初期化方法についてまとめられています。

テーマ
・mariadbの初期化
・簡単なデータベースの操作
  ・ログインとデータベースの追加と削除
  ・ユーザの登録と削除
  ・データベースのバックアップとリストア

ページリンク
→よっしぃFYI +++For Your Information+++ →mariadbの設定と使い方

TOPに戻る

第5回 「MariaDB ColumnStore」とは

カラムストレージエンジン「MariaDB ColumnStore」について、概要と参考サイトを紹介します。

カラムストレージエンジン「MariaDB ColumnStore」の概要

「MariaDB ColumnStore」は、カラム型(列指向型)データベースエンジンです。MariaDBのストレージエンジンとして組み込めます。
オープンソースプロジェクト(GPLv2)として開発されています。

【「InfiniDB」ベース】
「MariaDB ColumnStore」は、オープンソースのデータウェアハウス向けデータベース「InfiniDB」をフォークしたものです。

【カラム型データベースエンジン】
一般的なデータベースエンジンはデータを行単位で扱いますが、カラム型データベースエンジンは「列単位」で処理を行います。列単位ならではのメリットがあります。
・データ圧縮効率が高い(列単位処理で同一型データが並ぶため)
・列方向で行われる集計処理が高速
・列ごとに分散して並列処理が可能
・大規模な分析/集計処理に向いている

【「MariaDB ColumnStore」の特徴】
・MariaDBとの高い親和性(既存ストレージエンジンと統合して利用/管理できる)
・運用管理が簡潔
・大規模分散処理に対応(ペタバイトクラスのデータをリアルタイムで処理できるように設計)
・リニアスケールアウトによる並列処理
・データを高圧縮(最大25分の1にまで圧縮可能)
・Hadoopファイルシステム「HDFS」との統合が可能(SQLでのデータ分析が可能)
・「トランザクション」と「並列化分析」を同一技術で処理できる

参考サイト

【「MariaDB ColumnStore」 オフィシャルサイト】

ポイント
「MariaDB ColumnStore」に関する最新オフィシャル情報がまとめられています。

ページリンク
→MariaDB →MariaDB ColumnStore

【「MariaDB ColumnStore」発表記事①】

ポイント
「MariaDB ColumnStore」発表に関する記事です。

ページリンク
→Publickey →MariaDB、カラム型データベースエンジン「MariaDB ColumnStore」発表。OLAPへ参入

【「MariaDB ColumnStore」発表記事②】

ポイント
「MariaDB ColumnStore」発表に関する記事です。

ページリンク
→OSDN Magazine →MariaDB、ビッグデータ分析エンジン「MariaDB ColumnStore」を発表

【「MariaDB ColumnStore」コンサルサービス記事】

ポイント
「MariaDB ColumnStore」の特徴についてまとめられています。

テーマ
■「MariaDB ColumnStore」の特徴
■インサイトテクノロジーが提供するサービス

ページリンク
→EnterpriseZine →インサイトテクノロジー、「MariaDB ColumnStore」のサポート/コンサルサービスを提供

【「MariaDB ColumnStore」ナレッジベース】

ポイント
オフィシャルサイトのMariaDB ColumnStoreについてのナレッジベースです。一部日本語化されています。

テーマ
・ColumnStoreでのデータロードと操作
・ColumnStoreのアーキテクチャ
・ColumnStoreの管理
・ColumnStoreを使用する
・MariaDB ColumnStoreをインストールして使い始めるまで
・ColumnStoreアップグレード手順
・InfiniDBからの移行や、ColumnStore旧バージョンからのバージョンアップ手順
・ColumnStoreデータ操作文
・MariaDB ColumnStoreリリースノート
・MariaDB ColumnStoreについて
・InfiniDB 4.6.7をポーティングしたカラム型ストレージエンジン
など

ページリンク
→MariaDB →Knowledge Base →ストレージエンジン →MariaDB ColumnStore

TOPに戻る

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

MariaDB最新TOPICS

【OSS】MySQL創始者/MariaDB開発者であるモンティさんにインタビュー---MariaDBの収入源は?、MariaDBの強みは?、オープンソース製品のメリットとは?(2017年07月20日 11:03)

MySQL創始者/MariaDB開発者であるモンティさんに、MariaDBについてインタビュー。 【MariaDBとは】 オープンソースリレーショナルデータベースシステム https://www.ossnews.jp/oss_info/MariaDB 【テーマ】 ・MariaDBはどのように収入を得るか? ・モンティさん、斯波さんが開発したSpiderを応援する ・Maria...

MariaDB最新CLOSEUPコラム

  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter