6.1 Webアプリケーション用ユーザの作成
■ユーザ「webapl」の作成
WebアプリケーションプログラムからMySQLにアクセスできる権限を有するユーザを作成します。ここでは「webapl」とします。
(1)コマンドプロンプトからユーザ「root」でmysqlを起動します。
D:\mysql>mysql -u root
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 4.0.14-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
(2) ユーザの作成はGRANT文で行います。
GRANT 権限タイプ
ON データベース名.テーブル名
TO ユーザ名 [IDENTIFIED BY 'パスワード']
localhostサーバに登録されているwebaplユーザ(webapl@localhost)に、すべてのデータベースのすべてのテーブルに対して(*.*)、すべての権限を与えるGRANT文は以下のようになります。パスワードは'passs1234'としています。
mysql> GRANT ALL PRIVILEGES ON *.*
-> TO webapl@localhost IDENTIFIED BY 'pass1234';
Query OK, 0 rows affected (0.07 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.02 sec)
mysql>
なお、GRANT文を実行した後には、必ず「FLUSH PRIVILEGES」文を実行します。
(3)webaplユーザが有効か確認します。一度、mysqlを終了し、ユーザwebaplでmysqlを起動します。パスワードが設定されているので、「−p」オプションを付加します。mysqlが起動するとパスワードを聞いてきますので、パスワードを入力します。
mysql> \q
Bye
D:\mysql>mysql -u webapl -p
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 4 to server version: 4.0.14-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show databases;
+-------------+
| Database |
+-------------+
| db_販売管理 |
| mysql |
| test |
+-------------+
3 rows in set (0.00 sec)
mysql> use db_販売管理;
Database changed
mysql> SELECT * FROM tbl_商品表;
+------------+------------+------+
| 商品コード | 商品名 | 単価 |
+------------+------------+------+
| 1001 | 地方御膳 | 1000 |
| 1002 | 山の幸御膳 | 1200 |
| 1003 | 海の幸御膳 | 1400 |
+------------+------------+------+
4 rows in set (0.19 sec)
mysql>
ユーザwebaplで「db_販売管理」データベースにアクセスできることが確認できました。
|