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 データベース名;
コメント