【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【MySQL互換/派生】MariaDB の特徴について【アザラシ】

技術営業部の大原です。

今回はMySQLから派生したMySQL互換のDBである「MariaDB」の特徴について記載します。
ちなみに「MySQL」の「マイ」は開発者の長女の名前、「MariaDB」の「マリア」は次女の名前です。

※ 本記事は2020年9月時点での内容です。

MariaDB独自の主な仕様・機能(MariaDB 10.3 以降)

元々 MySQLの互換・派生という位置付けで登場したMariaDBですが、最近ではMariaDBの方がアップデートが早く、また本家のMySQLにはない、MariaDB独自の仕様になっている仕様や機能も多くあります。

ここでは MariaDB独自の仕様・機能をまとめてみました。
※ MySQL ⇔ MariaDB では、双方でアップデートを繰り返すので、今後にMySQLがMariaDBの仕様・機能を逆輸入する可能性は十分にあります。

項目 概要
IDの強制終了 指定したID のクエリを強制終了
正規表現エンジンの変更 正規表現エンジンの変更による、正規表現の機能強化
削除結果の取得 DELETE ... RETURNING 構文を使うと、削除対象が1つのテーブルの場合、削除結果を返す。
BLOB列・テキスト列の初期値設定 BLOB列(巨大バイナリデータ型)とTEXT列に初期値を設定できる
動的SQLの実行 OracleDatabaseのように、文字列から強制的にSQLを生成する
システムバージョニングテーブル データ更新日時を記録し、データ履歴を保存する機能
Oracle互換モード OracleDatabase のSQLが使えるモード
テーブル値コンストラクタ データの組み合わせをその場で生成する機能
アプリケーションファンクション ストアドファンクションとして集計関数を定義できる機能
シーケンステーブル 連番を生成する機能
FORループ FOR構文を使ってループできる機能
アプリケーション期間テーブル 時刻を任意に設定できる

MariaDBのオススメ機能

先ほどはMySQLにはない、MariaDBの独自の仕様・機能を記載しましたが、その中でもオススメのポイントを「3つ」ご紹介します。

● システムバージョニングテーブル:

・DBデータを変更(更新)するときは 上書きが基本ですが、この システムバージョニングの機能を有効にすれば、すべての変更の履歴が保存されます。履歴に残っているデータを明示 / 指定すれば、該当するデータを取得できるようになり、任意の時点のデータ分析 / 変更の監査 / 異なる時点のデータの比較が可能になります。

● Oracle互換モード:

・商用データベースのOracleDatabaseとの互換性を有効にする機能です。OracleDatabase独自の構文を使えたり、独自のストアドプロシージャ言語(PL/SQL)も実行できるため、OracleDatabaseからの移行をしやすくしています。

● シーケンステーブル:

・PostgresSQLにある、連番を管理するシーケンス機能のように、別のテーブルで連番を扱えます。現在の連番の値を確認したり、連番の再割り当てをしたりする操作が容易になります。

MariaDBの注意点(MySQLとの非互換性)

MariaDB と MySQLを比較した場合、仕様 / 機能として似通った部分は多くありますが、全てにおいて互換性があるわけでは無いので、下記のような項目に注意が必要です。

● 関数の違い(JSON や GTID の実装が異なる など)
● システム変数の違い(デフォルト値が異なる)
● 文字セット / 照合順序まではサポートされない

まとめ

以上、MariaDBに関する概要と特徴をご紹介しました。

普段MySQLを操作していれば、作法の違いはあれどMariaDBに取っ付きやすいはずです。

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
0
読み込み中...
0 票, 平均: 0.00 / 10
5,499
X facebook はてなブックマーク pocket
【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【25卒向け】AI×バーチャル面接の募集を開始いたしました!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

この記事をかいた人

About the author

ohara

通信業界で法人向けのNWサービス・OA機器・グループウェアなどの、IT製品の導入を担当するセールスとしてキャリアをスタート。

その後、SIer系のデータセンター事業会社で、物理サーバー / ホスティングサービスのプリセールスエンジニア、SaaS型のSFA / CRM・BtoB向けのEコマースなどのカスタマーエンジニアを経て、現在のビヨンドへ入社。

現在は、アジアのシリコンバレー中国・深圳に駐在して、中国ハードウェアの卸販売・貿易代理店の仕事してます。

中国ドラマと billbill を見るのが日課です。

所有資格:簿記二級