TOP > 月影丸の間 > 月影 COMPUTER > データベース > MySQL > 最初の作業

毎回同じことをするのに忘れてしまう最初の作業

ユーザを作ってパスワードを設定して権限をあげる

テスト環境構築が目的のため、
とりあえずローカルで作業するのに必要なことを簡単にやっているので、
ちゃんとサーバを設定している人はあまり真似しないでください・・・。

最初は root にパスワードなしで入れるようです。
root のパスワードを ahodesuyo に設定しました。
# mysql -u root

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.0.45 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SELECT User, Host FROM mysql.user;
+------+----------------+
| User | Host           |
+------+----------------+
| root | 127.0.0.1      |
| root | aho.rinken.org |
| root | localhost      |
+------+----------------+
3 rows in set (0.00 sec)

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('ahodesuyo');
Query OK, 0 rows affected (0.00 sec)

何も考えず aho というデータベースを作りました。
できたかどうか SHOW DATABASES で確認もしています。
mysql> CREATE DATABASE aho CHARACTER SET utf8;
Query OK, 1 row affected (0.01 sec)

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| aho                |
+--------------------+
3 rows in set (0.00 sec)

まんをじして aho というユーザを作りました。
mysql.user を SELECT して確認もしています。
mysql> CREATE USER aho;
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT User, Host FROM mysql.user;
+------+----------------+
| User | Host           |
+------+----------------+
| aho  | %              |
| root | 127.0.0.1      |
| root | aho.rinken.org |
| root | localhost      |
+------+----------------+
4 rows in set (0.00 sec)

aho ユーザに ahonapassword というパスワードを設定しました。
本当にあほなパスワードです。
mysql> SET PASSWORD FOR 'aho' = PASSWORD('ahonapassword');
Query OK, 0 rows affected (0.00 sec)

aho ユーザに全権限を差し上げました。
mysql> GRANT ALL ON *.* TO 'aho';
Query OK, 0 rows affected (0.00 sec)

各ユーザの権限を確認しました。
コマンドは、

SELECT
Host,User,
Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,
Drop_priv,Reload_priv, Alter_priv
FROM mysql.user;
を使いました。
mysql> SELECT
    -> Host,User,
    -> Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,
    -> Drop_priv,Reload_priv, Alter_priv
    -> FROM mysql.user;
+----------------+------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+------------+
| Host           | User | Select_priv | Insert_priv | Update_priv | Delete_priv | Create_priv | Drop_priv | Reload_priv | Alter_priv |
+----------------+------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+------------+
| localhost      | root | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y          |
| aho.rinken.org | root | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y          |
| 127.0.0.1      | root | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y          |
| %              | aho  | Y           | Y           | Y           | Y           | Y           | Y         | Y           | Y          |
+----------------+------+-------------+-------------+-------------+-------------+-------------+-----------+-------------+------------+
4 rows in set (0.00 sec)

メモ:
UPDATE mysql.user SET PASSWORD=PASSWORD('ahonapassword') WHERE user='aho' AND host='localhost';
FLUSH PRIVILEGES;