MySQL(MariaDB)の基本操作

/

導入

最近Webアプリのフレームワークを触る事が多く、データベースとしてMySQLに触る機会も多いのでフレームワークを使ったアプリの開発時によく使うコマンドをまとめてみました。
RDBMSとしてMariaDBをインストールする(CentOS7.2 | ubuntu16.04)/Koltatt

MySQL操作

*SQLのコマンドやキーワードは大文字にするのが慣例になっています。

ログイン

パスワードを使用してMySQLのrootでログイン

$ mysql -u root -p

データベースの操作

データベースの作成

CREATE DATABASE database_name;

データーベース一覧の表示

SHOW DATABASES;

データーベースの削除

DROP DATABASE database_name;

ユーザー

ユーザーの作成

CREATE USER user_name@host_name;

ユーザー一覧の表示

SELECT Host,User FROM mysql.user;

+-----------+-----------+
| HOST      | USER      |
+-----------+-----------+
| localhost | test_user |
| 127.0.0.1 | root      |
| ::1       | root      |
| localhost | root      |
+-----------+-----------+

パスワードの設定

SET PASSWARD FOR user_name@host_name = PASSWORD(password);

ユーザーの作成と同時にパスワードを設定

CREATE USER user_name@host_name IDENTIFIED BY password;

ユーザーの削除

DROP USER user_name@localhost;

権限

ユーザーにデーターベース単位で全権限を与える

GRANT ALL ON database_name.* TO user_name@host_name IDENTIFIED BY password;

ユーザーの権限の確認

SHOW GRANTS FOR user_name@localhost;
#現在のユーザーの権限を表示
SHOW GRANTS FOR current_user();

よくある流れ

WebアプリフレームワークやWordPressなどはデータベース周りの処理をアプリケーション側が行ってくれるので、最低限データベース、ユーザー名、パスワードが必要な事が多いです。

#データベースの作成
CREATE DATABASE database_name;
#ユーザーの作成
CREATE USER user_name@host_name IDENTIFIED BY password;
#ユーザーにデータベースの権限を与える
GRANT ALL ON database_name.* TO user_name@host_name IDENTIFIED BY password;

そのため以上の操作を行って user_name, database_name, password を設定ファイルに書き込めば基本的なところは対応出来ると思います。