사용자 식별

공부하는 감자·2024년 4월 12일
0

MySQL

목록 보기
49/74
post-thumbnail

MySQL에서 사용자 계정을 생성하는 방법이나 각 계정의 권한을 설정하는 방법은 다른 DBMS와는 조금 차이가 있다.

사용자 식별

  • MySQL의 사용자는 다른 DBMS와는 조금 다르게 사용자의 계정뿐 아니라 사용자의 접속 지점도 계정의 일부가 된다.
    • 사용자의 접속 지점: 클라이언트가 실행된 호스트명이나 도메인 또는 IP 주소
  • MySQL에서 계정을 언급할 때는 항상 아이디와 호스트를 함께 명시해야 한다.
    • 아이디와 IP 주소를 감싸는 역따옴표(`)는 MySQL에서 식별자를 감싸는 따옴표 역할을 한다.

    • 종종 홑따옴표(’)로 바뀌어서 사용되기도 한다.

      -- 항상 MySQL 서버가 기동 중인 로컬 호스트에서
      -- 'svc_id'라는 아이디로 접속할 때만 사용될 수 있는 계정이다.
      'svc_id'@'127.0.0.1'
  • 모든 외부 컴퓨터에서 접속이 가능한 사용자 계정을 생성하려면 사용자 계정의 호스트 부분을 % 문자로 대체하면 된다.
    • % 문자는 모든 IP 또는 모든 호스트명을 의미한다.

      'svc_id'@'%'
  • 사용자 계정 식별에서 서로 동일한 아이디가 있을 때 MySQL 서버가 해당 사용자의 인증을 위해 어떤 계정을 선택하는지 주의해야 한다.
    • 권한이나 계정 정보에 대해 MySQL은 범위가 가장 작은 것을 항상 먼저 선택한다.

    • 예를 들어, 다음과 같은 계정 2개가 있다면 범위가 좁은 (1)번을 택한다.

      -- IP 주소가 192.168.0.10인 PC에서 접속할 때
      'svc_id'@'192.168.0.10' -- (1) IP 명시
      'svc_id'@'%'            -- (2) 모든 IP 또는 모든 호스트명

Reference

참고 서적

📔 Real MySQL 8.0

profile
책을 읽거나 강의를 들으며 공부한 내용을 정리합니다. 가끔 개발하는데 있었던 이슈도 올립니다.

0개의 댓글