기본적으로 생성되어있는
mysql> show databases;
+-------------+
| Database |
+-------------+
| mysql |
| test |
+-------------+
2 rows in set (0.06 sec)
mysql 과 test 두 녀석이 보인다.
여기서 mysql은 시스템 관리를 위해 설정된 데이터베이스 이다.
이곳 주요 기능은 계정별 password관리 사용자 권한을 설정 해주는 곳이기에
* 절대로 지우면 안된다 *
test는 말 그대로 테스트 디비
자! 본격적으로 디비를 생성하고 비밀번호와 아이디를 부여해보자.
mysql> create database ju;
잘 만들어 졌을까?
mysql> show databases;
+-------------+
| Database |
+-------------+
| mysql |
| test |
| ju |
+-------------+
3 rows in set (0.06 sec)
제대로 생성된거 같으니 ju 디비에 비번을 걸어줘야 하는데
그 전에 해야할게 mysql 에 사용자를 등록해줘야 한다.
사물함 겉면에다 이름을 써넣는 거라고 할까..나..
mysql> use mysql
mysql> insert into user (host,user,password)
-> values ('localhost','zzong','password('1234'));
(호스트명) (사용자명) (비밀번호)
5.0 이전 버전에서는 위와같이 쉽게 사용자 등록이 되었으나
5.0 부터는 다음과 같이 바뀌었다 ...
INSERT INSERT INTO user
(Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv,
Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv,
Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv,
Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, ssl_type,
ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections, max_user_connections)
VALUES('localhost', 'zzong', PASSWORD('****'), 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y',
'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', 0, 0, 0, 0);
설명하기도 복잡하니.. VALUES ( ) 요기만 잘 설정해서 등록하도록 하자.
로컬호스트에 쫑 이라는 아이디로 비번을 **** 로 사용자를 추가하겠다는 뜻이다.
자 그럼 제대로 추가됐는지 보자
맨 마지막 부분에 zzong 로 설정되어 있으며 password 는 암호로 관리되어 있다.
miojj 라는 이름표
mio 라는 이름표 를 생성한 디비(ju) 에 가져다 붙이면
각 디비들은 고유의 아이디와 비번을 가지게 되어 보안성을 띠게 된다.
자!이제 디비에 자물쇠를 달아서 혼자만 사용할 수 있도록 하자.
mysql > insert into db
-> values ('localhost','lee','zzong','y','y','y','y','y','y','y','y','y','y','y','y');
(디비명)(사용자명) (설정권한의 갯수를 모두 지정)
'y' 가 열두개 쓰여진 이유?
참고로 보는 책에는 단순히
삽입, 검색, 수정 등 이 권한은 10개로 되어있기 때문에 권한의 사용여부를
'y','n'로 표시한다 라고 쓰여져 있지만 권한의 갯수는 버전별로 틀리다.
현재사용버전은 12개 인줄도 모르고 한 시간이나 네이버를 헤매다니...
* 확인 방법은 아래 사진 참조 *
Host, Db, User 을 뺀 나머지 ..
자! 자물쇠를 달았으면 ' 디비가 내 것이다' 라고 선포하자.
mysql > flush privileges;
( 설정한 권한의 적용 : 1. 컴퓨터 재부팅
2. flush privileges; )
이제 디비가 제대로 열리는지 확인해보기 위해
mysql 을 다시 시작해보자
mysql > \q
C:> mysql -u zzong -p
Enter password : ****
조금 헷갈렸던 부분인데 C:> mysql -u zzong -p 가운데 zzong 는
디비명을 쓰는 것이 아니라 사용자 아이디를 쓰는 것. root 접속법 때문에 헷갈렸다.
문제가 없다면 웰컴 투 마이에스큐엘 모니터 어쩌구 저쩌구 나오면서
성공적으로 접속이 완료된다.
마지막으로 root 에도 비번을 걸어주자. '보안철저'
mysql> use mysql;
mysql> update user set password=password('123456') where user='root';
Query OK, 2 rows affected (0.03 sec)
Rows matched: 2 Changed: 2 Warnings: 0
mysql> flush privileges; <--- 적용
flush privileges; 를 하지 않으면 mysql에서 빠져나와서 root 로그인이 안된다.
확인
mysql> select host, user, password from user;
+----------------------------------------------------------------+
| Host user password |
+----------------------------------------------------------------+
| localhost root 2e01146f5c065853 |
| localhost.localdomain root 2e01146f5c065853 |
+----------------------------------------------------------------+
이제 다음으로 해야 할 일은 테이블 만들어서 디비에 자료를 저장해보고
자료를 웹페이지에 출력해보자.
간단하게 회원가입 페이지 작성 !
댓글 없음:
댓글 쓰기