STUDY - DB 사용자 만들기

준동이·2024년 2월 11일
0

DataBase - MariaDB

목록 보기
2/2
post-thumbnail

시작하며

공부를 하던 중, DB를 만들때 항상 root 계정에 만들었는데 root 계정 말고 내가 따로 계정을 하나 생성해서 거기에 나의 데이터들을 관리하는게 더 나을까? 하는 생각에 계정(사용자)를 만들어보려고 한다.

HeidiSQL을 사용하다보니 직접 작성하는 법을 잊을 것 같아서 가능하면 직접 작성하는 방식으로 앞으로 해보려고 한다.

오늘은 사용자를 만들고 권한을 주고 테이블을 만들어보겠다 !




사용자 만들기


root 계정 접속

우선 root 계정에 접속을 해주자 !
그리고 서버의 설정 및 관리를 해주는 곳인 mysql로 이동하였다.



사용자 만들기

mysql로 이동하여 사용자를 생성 후 생성된 사용자 정보와 어떻게 생성되었는지를 확인해보았다.

설명

사용자명과 암호 부분에 원하는 정보를 입력하면 사용자가 생성이 된다.

create user 사용자명@localhost identified by '암호';

localhost와 % 생성의 차이

사용자명@localhost로 생성하면 내부ip 즉 내 컴퓨터에서만 접근이 가능하다.
하지만 만약 '사용자명'@'%'를 하면 외부 ip에서도 접근이 가능하니 필요에 따라 생성하면 된다.

이 명령어는 dongjun@localhost 라는 사용자가 어떻게 생성 되었는지와 정보를 보여준다.
생성했던 명령문도 같이 보여준다 !

show create user dongjun@localhost;



사용자 권한(grant) 주기

모든 DB의 권한을 주는 명령문이다.
identified by '비밀번호'는 없어도 되는 것 같지만 나는 넣어주었다.

추가 설명

원하는 데이터베이스.테이블에 대한 권한을 해당 사용자에게 권한을 주는 것이다.

grant all privileges on 데이터베이스.테이블 to dongjun@localhost identified by '비밀번호';

만약 한개의 데이터베이스에 대한 권한을 준다면 이런식으로 dbname.*로 해당 데이터베이스의 모든 권한을 줄 수 있다.

grant all privileges on dbname.* to dongjun@localhost identified by '비밀번호

특정 권한만 주고싶다면 이런식으로 가능하다.

grant select, insert, update privileges on dbname.* to dongjun@localhost identified by '비밀번호

만약 권한을 빼고싶다면 해당 명령문에서 grant를 revoke로 바꿔주면 된다!



새로운 사용자로 로그인 and 데이터 확인

위에서 만들었던 dongjun@localhost로 로그인을 한 것이다.


그리고 데이터베이스도 확인해봤는데 root에 있는 데이터베이스도 같이 있는 것을 볼 수 있다.




마치며

오늘은 DB 사용자 생성과 권한을 주는 것을 간단하게 알아보았다 !
최근에 MariaDB를 삭제했다가 다시 다운받아서 모든 데이터가 다 날라가있었다.
그래서 공부도 해보고 익혀볼겸 사용자와 권한에 대해 공부를 해보았다.

나중엔 다른 명령문들과 쿼리문들로 찾아오겠다 !


그럼 안녕 ~ 🖐🖐
profile
개발자 꿈나무

0개의 댓글