본문 바로가기

DataBase/My-Sql

[펌]리눅스에서 MySQL 사용자 설정 방법

root 패스워드 설정

mysql을 설치하고 나면 root 패스워드가 설정되어 있지 않기 때문에 root 패스워드를 설정해야 한다.
우선 mysql에 접속하다.

# mysql -u root

root 패스워드를 설정한다.

mysql> update user set password = password('123456') where user = root;
Query OK.

또는

# mysqladmin -u root password 123456
Query OK.

이제 mysql을 빠져 나온다.

mysql> exit

데이터베이스를 재시작 해주면 다음부터는 root로 접속하려고 할 때마다 반드시 패스워드를 입력해줘야만 한다.
이제부터는 mysql에 접속할 때는 패스워드를 입력해야 한다.

# mysql -u root -p
Enter Password : ==> 패스워드 입력

root 패스워드 변경

mysqladmin 명령어 사용

# mysqladmin -u root -p password 123456

DB 생성

mysql> create database TESTDB;

TESTDB를 생성하였다면 이를 db 테이블에 등록해야 한다.

mqsql> insert into db values('%','TESTDB','tester','y','y','y','y','y','y','y','y','y','y');

여기서 '%'는 어디서든 접속이 되게 설정하는 것이고 'TESTDB'는 등록할 db명이고, 'tester'는 TESTDB를 사용할 사용자 명이다.

그리고 Y가 10개 있는데 이것은 tester라는 사용자에게 TESTDB의 모든 권한을 부여하는 것이다.

새로운 사용자 등록

새로운 사용자 tester는 user 테이블에 등록한다.

mysql> insert into user values('localhost','tester',password('12345'),'y','y','y','y','y','y','y','y','y','y','y','y','y','y');

참고 : 계정 사용자에게 DB 권한 설정 시
계정 사용자가에게 DB를 하나 만들어주고 권한을 줄 때는 'Y'를 14개 적는게 아니고 'N'를 14개 적어야 한다.


즉, TESTDB에 대한 모든 권한을 tester 유저에게 부여한 것이다.

이제 mysqladmin -u root -p reload 명령으로 mysql을 재시작 시킨다.