2026/02 5

권한

글로벌 권한과 객체 권한데이터베이스나 테이블 이외의 객체에 적용되는 권한을 글로벌 권한이라고 한다.데이터베이스나 테이블을 제어하는 데 필요한 권한을 객체 권한이라고 한다.객체 권한은 Grant 명령으로 권한을 부여할 때 반드시 특정 객체를 명시해야 한다.예외적으로 ALL은 글로벌과 객체 권한 두 가지 용도로 사용될 수 있다특정 객체에 ALL 적용 시, 해당 객체에 적용될 수 있는 모든 객체권한을, 글로벌 ALL 적용시, 글로벌 수준에서 가능한 모든 권한을 부여하게 된다.정적 권한과 동적 권한정적권한: https://dev.mysql.com/doc/mysql-security-excerpt/8.0/en/privileges-provided.html#privileges-provided-static MySQL :..

비밀번호 관리

고수준 비밀번호MySQL 서버에서 비밀번호의 유효성 체크 규칙을 적용하려면 validate_password 컴포넌트를 이용하면 된다.INSTALL component 'file://component_validate_password'; -- 컴포넌트 설치select * from mysql.component; -- 설치된 컴포넌트 확인 컴포넌트에서 제공하는 시스템 변수 확인SHOW GLOBAL VARIABLES LIKE 'validate_password%';비밀번호 정책: 기본값은 Medium으로 자동 설정된다.LOW: 비밀번호의 길이만 검증MEDIUM: 비밀번호의 길이를 검증하며, 숫자와 대소문자, 그리고 특수문자의 배합을 검증STRONG: MEDIUM 레벨의 검증을 모두 수행하며, 금칙어가 포함됐는지 여부..

사용자 계정 관리

시스템 계정과 일반 계정MySQL 8.0부터, 계정은 SYSTEM_USER 권한을 가지고 있느냐에 따라 시스템 계정, 일반 계정으로 구분된다.시스템 계정: 데이터베이스 서버 관리자를 위한 계정으로, 시스템 계정과 일반 계정을 관리할 수 있다.(SYSTEM_USER 권한을 가짐)데이터베이스 서버 관리와 중요 작업은 시스템 계정으로만 수행 가능하다.주요 기능계정 관리다른 세션 또는 그 세션에서 실행 중인 쿼리를 강제 종료스토어드 프로그램 생성 시 Definer를 타 사용자로 설정일반 계정: 응용 프로그램이나, 개발자를 위한 계정이다.(SYSTEM_USER 권한이 없음)MySQL에 내장된 계정 같은 경우는 'root'@'localhost'를 제외한 계정은 각 다른 목적으로 사용되니 삭제하지 말자'mysql.s..

사용자 식별

MySQL의 사용자는 다른 DBMS와는 다르게 사용자의 계정뿐 아니라 사용자의 접속 지점(클라이언트가 실행된 호스트명 or 도메인 or IP주소)도 계정의 일부가 된다. 따라서 MySQL에서 계정을 언급할 때는 항상 아이디와 호스트를 함께 명시해야 한다.아이디와 IP 주소를 감싸는 `(따옴표)는 식별자를 감싸는 역할이다.모든 외부 컴퓨터에서 접속이 가능한 계정을 생성하고 싶다면 사용자 계정의 호스트 부분을 % 문자로 대체하면 된다.% 문자는 모든 IP 또는 호스트명을 의미한다.권한이나 계정 정보에 대해 동일한 범위의 아이디가 있다면, MySQL은 가장 작은 것을 먼저 선택한다.% 와 IP가 있는 계정 2개가 있다면 상세 IP가 있는 것이 더 좁은 범위이기 때문에 IP가 있는 계정을 선택한다.ex) `ab..

MySql - 설정

글로벌 변수와 세션 변수구분개념비고글로벌 변수하나의 MySql 서버 인스턴스에서 전체적으로 영향을 미치는 시스템 변수(ex. innodb_buffer_pool 등) 세션 변수MySql 클라이언트가 MySql 서버에 접속할 때 기본으로 부여하는 옵션 값을 제어하는 데 사용(ex. autoCommit 등)한번 연결된 커넥션의 세션 변수는 서버에서 강제 변경이 불가능Both 변수MySql 서버 설정 파일에 명시해 초기화 할 수 있는 변수 정적 변수와 동적 변수 개념비고Query정적 변수디스크에 설정되어 있는 설정파일(my.cnf, my.ini)의 변수디스크에 설정된 파일 내용은 MySql 을 재시작하기 전에는 적용되질 않는다.show global variables;(설정 파일 내용 보기)set global ..