MariaDB/MySQLにおいて、データベースとデータベースユーザをSQLで作成する方法について説明します。
データベースを1個作成して、そのデータベースへアクセスする権限を持つユーザを作成します。ユーザはローカルホスト(localhost
)から接続するものとします。
データベース設定情報
以下の内容でデータベースを設定します。
- データベース名
example
- データベースユーザ名
example
- パスワード
6fhudynbKs4V3FH87YQr
権限のあるユーザでログイン
以下の設定は、mysqlコマンドやphpMyAdminにおいて、データベースとデータベースユーザを作成する権限を持つユーザ(たとえばroot
ユーザ)でログインして実行して下さい。
mysql -u root -p Enter password: MariaDB [(none)]>
データベースユーザの作成
データベースexample
に対して、全ての権限を持つデータベースユーザexample
を作成します。
GRANT ALL PRIVILEGES ON example.* TO example@localhost IDENTIFIED BY '6fhudynbKs4V3FH87YQr';
example.*
の部分は権限を与えるデータベースを指定しています。また、ユーザに対して(グローバルレベルの権限ではなく)データベースレベルの権限を与えることも示しています。
example@localhost
の部分はlocalhost
からアクセスするユーザを指定しています。
データベースの作成
データベースexample
を作成します。
CREATE DATABASE example;
動作確認
mysqlコマンドで簡単な動作確認をしてみます。
mysql -u example -p Enter password: MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | example | | information_schema | +--------------------+ 2 rows in set (0.00 sec) MariaDB [(none)]> use example Database changed MariaDB [example]> show tables; Empty set (0.00 sec)
データベースユーザexample
で設定したパスワードでログインして、show databases
コマンドでデータベースの一覧にexample
が表示されることを確認しました。テーブルは作成していないので何も表示されません。