/
MySQL 데이타베이스와 사용자 계정 생성하기

MySQL 데이타베이스와 사용자 계정 생성하기

MySQL 8 은 utf8mb 가 기본 character set 이고 collation 으로는 utf8mb4_0900_ai_ci 를 사용하고 있으니 생략해도 됩니다. 

 

MySQL Create Database & user account

 

MySQL 데이타베이스와 계정 생성하기.

utf8

mysql 5.7 이상은 Create User 구문 사용

MySQL 5.7 이상
CREATE DATABASE homestead CHARACTER SET utf8 COLLATE utf8_bin;   CREATE USER 'homestead'@'localhost' IDENTIFIED BY 'secret' PASSWORD EXPIRE NEVER; GRANT ALL PRIVILEGES ON homestead.* TO 'homestead'@'localhost'; flush privileges;

 

MySQL 5.7 미만
CREATE DATABASE homestead CHARACTER SET utf8 COLLATE utf8_bin;   GRANT ALL PRIVILEGES ON homestead.* TO 'homestead'@'localhost' IDENTIFIED BY 'secret'; flush privileges;

utf8mb4

위 구문에 CHARATER SET 과 COLLATE 추가

CREATE DATABASE homestead CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci; CREATE USER 'homestead'@'localhost' IDENTIFIED BY 'secret' PASSWORD EXPIRE NEVER;  GRANT ALL PRIVILEGES ON homestead.* TO 'homestead'@'localhost'; flush privileges;

 

MySQL 8 에 추가된 utf8mb4_0900_ai_ci collation 사용(생략 가능)

utf8mb4 & utf8mb4_0900_ai_ci

 

ERROR 1044 (42000): 처리

원격지에서 접속시 grant Privileges  를 막아 놓아서 발생하며 다음 쿼리로 어느 서버에서 접속해야 권한이 허용되는지 확인후 해당 서버에서 로그인(원격지 호스트를 지정하는 -h 옵션 빼고 연결)

 

MySQL 암호 변경

SET PASSWORD 사용

 

 

Alter user 사용 

 

설치후 최초 root 암호를 변경할 경우 아래 구문 사용

 

 

MySQL password policy 변경

다음과 같이 암호 규칙에 맞지 않는다는 에러가 나며 암호 변경이 되지 않을 경우 해결책

 

 

validate password plugin 삭제

권장하지 않음


mysql root 로 로그인한 후에 다음 명령어 실행후 mysql 재구동


 암호 규칙을 낮게 설정

my.cnf에 다음과 같이 설정하고 mysql 재구동

 

기본 설정은 1(MEDIUM) 이며 각각의 의미는 아래와 같음

 

Policy

Tests Performed

Policy

Tests Performed

0 or LOW

Length

1 or MEDIUM

Length; numeric, lowercase/uppercase, and special characters

2 or STRONG

Length; numeric, lowercase/uppercase, and special characters; dictionary file

 

 

Related content