MariaDB
今回は MariaDB のテーブルに CSV ファイル経由でデータを読み込む方法について。 ちょくちょくやり方を調べている気がするのでメモしておく。 使った環境は次のとおり。 $ sw_vers ProductName: macOS ProductVersion: 12.1 BuildVersion: 21C52 $ uname -r…
Apache Hive を操作する方法としては、以前から hive というコマンドラインツールが提供されている。 ただ、この方法だと hive コマンドがインストールされたホストでしか Apache Hive を操作できない。 また、Hadoop エコシステムを形成する別のソフトウェ…
使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.12.5 BuildVersion: 16F73 $ mysql --version mysql Ver 15.1 Distrib 10.2.6-MariaDB, for osx10.12 (x86_64) using readline 5.1 サンプルのテーブルとレコードを用意する ま…
RDB のスキーマ設計において、なるべくなら Nullable なカラムは無い方が良いけど、そうもいかないときがある。 そんなときは COALESCE() 関数を使うと NULL になっているフィールドを別の値に置換できる。 これは、特定の値を NULL に置換できる NULLIF() …
RDBMS によってはゼロ除算をするとエラーになってしまうものがある。 例えば PostgreSQL とかがそう。 $ psql --version psql (PostgreSQL) 9.6.3 次のようにゼロ除算をするとエラーになって結果が得られない。 これは SQL を使って演算するときに問題となる…
今回は SQL の UNION を使ってみる。 試した環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.12.5 BuildVersion: 16F73 $ mysql --version mysql Ver 15.1 Distrib 10.2.6-MariaDB, for osx10.12 (x86_64) using readline 5.1 典型的…
今回は SQL:2003 の規格で追加されたウィンドウ関数を使ってみる。 この機能を使うとカラムをグループ化して集約関数を使うのが楽になる。 使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion: 10.12.5 BuildVersion: 16F73 $ mysql --…
Galera Cluster は MySQL/MariaDB をマルチマスタ構成で冗長化するためのアプリケーション。 マルチマスタなので、本来はどのノードに対しても書き込みを行うことができる。 ただ、後述する理由からどうやら書き込みに使うノードはひとつに制限した方が良さ…
MySQL (MariaDB) のデータをバックアップ・リストアする方法には色々なやり方があるみたい。 今回は、その中でも最もオーソドックスな mysqldump を使う方法を試してみる。 また、mysqldump はその時点でのデータベースの内容を全て書き出すフルバックアップ…
MariaDB Galera Cluster は MariaDB を同期レプリケーション型のマルチマスタ構成で冗長化するためのアプリケーションだ。 マスタ・スレーブ構成のようにフォールバック用のスクリプトを自分で用意する必要もないし、マルチマスタ構成なのでクラスタを構成す…
MySQL の設定や構成またはバージョンの違いによるパフォーマンスの変化を調べるにはベンチマークツールが必要になる。 今回は sysbench というツールを使って MySQL のパフォーマンスを測ってみよう。 検証環境には CentOS7 を使った。 $ cat /etc/redhat-re…
MySQL (MariaDB) の冗長化には Master-Slave 構成を組んだり MySQL Cluster を使ったりと色々ある。 その中で Galera Cluster は同期レプリケーションを用いたマルチマスタ型のクラスタが組むやり方だ。 今回はこの MariaDB Galera Cluster を CentOS7 で組…