MariaDBの覚書「データベースの作成~データの取得」

兩國花火之圖 コンピュータ
出典:国立国会図書館「NDLイメージバンク」 (https://rnavi.ndl.go.jp/imagebank/)
MariaDBを扱うにあたって調べた内容をまとめました。なんとなくDBサーバーを触ったことがあって、大まかにやるべきことは知っているが、具体的にMariaDBだとどうすれば良いのか知りたい人向けです。このブログ全般に言えますが、想定する読者は筆者自身となります。
Rasberry PIにインストールしたRasberry OSでMySQLを試そうと思いましたが、MySQLのパッケージが見つかりませんでした。MariaDBというのが代わりに使えるようなのでそちらで試しています。

コマンドツールでMariaDBへ接続

mariadb -u ユーザー名 -p [データベース名]

コンソール環境で実行
ユーザー名:root

データベースの作成

CREATE DATABASE データベース名;

データベースが存在しない場合作成する。

CREATE DATABASE IF NOT EXISTS データベース名;

データベースの一覧

SHOW DATABASES;

利用するデータベースを変更

USE データベース名;

ユーザーの作成

CREATE USER ユーザー名 IDENTIFIED BY 'パスワード';

ユーザーのアクセス権

全ての権限を与える

GRANT ALL ON *.* TO ユーザー名@'localhost';
FLUSH PRIVILEGES;

外部コンピュータからのアクセス許可する場合localhostをアクセスするコンピュータのIPアドレスに変更する。
Mariadbの設定とは別にOSのファイアウォールの設定を変更する。

テーブルの作成

CREATE TABLE テーブル名 (項目名1 int, 項目名2 varchar(10), primary key (項目1));

primary keyは主キー

テーブルの一覧

SHOW TABLES;

テーブルの削除

DROP TABLE テーブル名;

レコードの追加

INSERT INTO テーブル名 VALUES (1, '鈴木太郎');

レコードの更新

UPDATE テーブル名 SET 項目2='木村太郎' WHERE 項目1=1;

レコードの削除

DELETE FROM テーブル名 WHERE 項目1 = 1;

データの取得

SELECT 項目1, 項目2 FROM テーブル名 WHERE 項目1 = 1;

ユーザーの一覧を取得

SELECT host,user FROM mysql.user;

ソート

SELECT 項目1, 項目2 FROM テーブル名 ORDER BY 項目1, 項目2;

降順にする場合ORDER BY 項目名の後にDESCをつける

外部結合

SELECT テーブル名1.項目名, テーブル名2.項目名 FROM テーブル名1 LEFT JOIN テーブル名2 ON テーブル名1.項目名 = テーブル名2.項目名;

UNION

(SELECT 項目名1 AS 別名1 FROM テーブル名1)
UNION
(SELECT 項目名2 AS 別名1 FROM テーブル名2);

データベースの削除

DROP DATABASE データベース名;

コメント