웹마스터 팁

이번에는 간단하게 사용자와 그사용자가 사용하는 Db를 만들어 보져

조금 길답니다...^^

일단 myslq 에 접속을 합니다.
[root @bibaram mysql] mysql -uroot -p mysql
Enter password : ********

Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 1 to server version: 3.22.34-shareware-debug
Type 'help' for help.
mysql>

접속을 완료하면 위와 같은 메세지를 볼수 있져..
먼저 사용자를 만들어 보져 id=test passwd=1234 인 사용자를 만듭니다.

mysql> insert into user values
    -> ('localhost','test',password('1234'),'N','N','N','N','N','N','N','N','N',
'N','N','N','N','N'+ ');
Query OK, 1 row affected (0.11 sec)

여기서 N이 14개 입니다. ^^;  왜냐구여
자. 아래를 보세요..

mysql> desc user;
+-----------------+---------------+------+-----+---------+-------+
| Field           | Type          | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+-------+
| Host            | char(60)      |      | PRI |         |       |
| User            | char(16)      |      | PRI |         |       |
| Password        | char(16)      |      |     |         |       |
| Select_priv     | enum('N','Y') |      |     | N       |       |
| Insert_priv     | enum('N','Y') |      |     | N       |       |
| Update_priv     | enum('N','Y') |      |     | N       |       |
| Delete_priv     | enum('N','Y') |      |     | N       |       |
| Create_priv     | enum('N','Y') |      |     | N       |       |
| Drop_priv       | enum('N','Y') |      |     | N       |       |
| Reload_priv     | enum('N','Y') |      |     | N       |       |
| Shutdown_priv   | enum('N','Y') |      |     | N       |       |
| Process_priv    | enum('N','Y') |      |     | N       |       |
| File_priv       | enum('N','Y') |      |     | N       |       |
| Grant_priv      | enum('N','Y') |      |     | N       |       |
| References_priv | enum('N','Y') |      |     | N       |       |
| Index_priv      | enum('N','Y') |      |     | N       |       |
| Alter_priv      | enum('N','Y') |      |     | N       |       |
+-----------------+---------------+------+-----+---------+-------+
17 rows in set (0.06 sec)

자 이렇게 되면 위의 권한이 14개 이신걸 볼수 있을겁니다.
만약 모두 Y를 주게 되면 root와 같은 권한을 가질수 있는 거져..
여기서 주의 할점은 기본 세팅된값이 대문자 N, Y 이져..
그렇기 때문에 위의 14개를 적을때 대문자로 적어야 되는거져
쿄쿄..^^

다음은 DB를 맹글져..
DB이름은 testdb 로 말입니다.

mysql> insert into db values
    -> ('localhost','testdb','test','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y');
Query OK, 1 row affected (0.05 sec)

mysql>

위에서도 마찬가지로 권한을 줍니다. Y는 10개 입니다.
또 왜 10개 냐구여.. 의심하나여 -_-+
아래를 또 보시면..

mysql> desc db;
+-----------------+---------------+------+-----+---------+-------+
| Field           | Type          | Null | Key | Default | Extra |
+-----------------+---------------+------+-----+---------+-------+
| Host            | char(60)      |      | PRI |         |       |
| Db              | char(64)      |      | PRI |         |       |
| User            | char(16)      |      | PRI |         |       |
| Select_priv     | enum('N','Y') |      |     | N       |       |
| Insert_priv     | enum('N','Y') |      |     | N       |       |
| Update_priv     | enum('N','Y') |      |     | N       |       |
| Delete_priv     | enum('N','Y') |      |     | N       |       |
| Create_priv     | enum('N','Y') |      |     | N       |       |
| Drop_priv       | enum('N','Y') |      |     | N       |       |
| Grant_priv      | enum('N','Y') |      |     | N       |       |
| References_priv | enum('N','Y') |      |     | N       |       |
| Index_priv      | enum('N','Y') |      |     | N       |       |
| Alter_priv      | enum('N','Y') |      |     | N       |       |
+-----------------+---------------+------+-----+---------+-------+
13 rows in set (0.16 sec)

역시 권한이 10개 임을 알수 있습니다...
이처럼 하게 되면 맹글어 졌져...
자 여기서
mysql> insert into db values
    -> ('localhost','testdb','test','Y','Y','Y','Y','Y','+ 'Y','Y','Y','Y','Y');
이 문구는 test라는 사용자가 testdb를 사용하게 한다는 문구 입니다.
결코 db를 생성하는 문구는 아니죠....

그 담 q 를 쳐서 msyql을 빠져 나옵니다.
mysql> q
bye
[root @bibaram mysql]
이렇게 될겁니다.
그럼 여기서 진짜 DB를 맹글죠
[root @bibaram mysql] mysqladmin -uroot -p create testdb
Enter password: **********
Database "testdb" created.
위처럼 나오면 DB가 맹글어 지는거죠
그다음 세로이 세팅이 되었으니 다시 시작해야죠

[root @bibaram mysql] mysqladmin -uroot -p reload
Enter password: **********
[root @bibaram mysql]
하면 사용자와 db가 완성이 됬습니다.
자 그럼 새로이 만든 사용자와 DB로 접속해 보죠

[root @bibaram mysql] mysql -utest -p testdb
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 4 to server version: 3.22.34-shareware-debug

Type 'help' for help.

mysql>

위 처럼 메세지가 나오신다구여.... 추카해여... 성공하셨네요 ^^;
그럼 오늘 강좌 끄...읏..