티스토리 뷰


데이터베이스 및 사용자를 생성한다.

새로운 사용자에게 데이터베이스 사용 권한을 부여 한다.


1. root 계정으로 로그인 하자.

> mysql -u root -p
> Enter Password:


2. 데이터베이스를 생성 및 조회

show character set (사용가능한 characterset 조회)


mysql> show character set;
mysql> create database webs;
mysql> alter database webs default character set 'utf8' collate 'utf8_general_ci';
mysql> select * from information_schema.schemata;


3. 사용자 생성 및 권한부여


mysql> create user 'webs'@'localhost' identified by '비밀번호';
mysql> grant all privileges on webs.* to 'webs'@'localhost';
mysql> flush privileges;
mysql> show grants for 'webs'@'localhost';


* user와 host가 구분됨을 주의할 필요가 있다.

* select, insert, delete 등의 권한을 개별적으로 줄수 있고 대상을 테이블 단위로도 줄수 있다.



기본적인 사항으로 생성했으며 다양한 형태로 생성 및 권한을 부여할 수 있으니 해당 Documents 를 참조하세요.


Syntaxhighlighter 3.0.83 처음사용 해보는데 이만저만 귀찮은게 아니네요 그래도 보기는 좋앙 맘에 듭니다.



** 2017.02.02


4. 사용자의 권한 삭제


mysql> revoke all on webs.* from 'webs'@'localhost';

5. 로그인 비밀번호 수정


예전같으면 password 필드가 있었고 password 필드를 업데이트 하는 형태로 비밀번호를 수정할 수 있었다.

mysql> use mysql;
mysql> update set user password=password('비밀번호') where user='계정';
mysql> flush privileges;

버전 5.7 부터는 password 필드가 없어졌다. 대신 'authentication_string' 필드가 새로 생겼다. 

다음 두가지 방법으로 비밀번호를 수정할 수 있다.

1. mysql> update user set authentication_string=password('비밀번호') where user='계정';
2. mysql> grant all privileges on webs.* to '계정'@'localhost' identified by '비밀번호';

mysql> flush privileges;

1번을 수행하면 'PASSWORD' 함수가 Deprecated 될것이라는 경고가 뜬다.

다시 2번을 수행하면 GRANT 구분으로 권한 수정하는것 보다 'ALTER USER' 구분을 쓰라고 경고해준다.

경고를 발생하지만 두가지 방법 모두 비밀번호 변경이 된다.




'메모로그 > MySQL' 카테고리의 다른 글

MySQL 8 비밀번호 초기화  (0) 2021.04.05
Integer Types 유효범위에 대해 알아보자  (0) 2016.12.21
MySQL Archive 설치 for Windows  (2) 2016.07.01
댓글
노랑파자마