반응형
기본 SYNTEX
-- 방법 1
SET PASSWORD [FOR 유저명] = PASSWORD(${auth_string})
SET PASSWORD [FOR 유저명] = ${auth_string}
-- 방법 2
ALTER USER 유저명 IDENTIFIED BY 'auth_string';
주의사항
MySQL 공식 메뉴얼에선 방법 2 권장하고 있음.
방법1에서 PASSWORD functino을 사용하는 방법은 곧 삭제될 예정.
- SET PASSWORD ... = PASSWORD('auth_string') syntax is deprecated as of MySQL 5.7.6 and will be removed in a future MySQL release.
- SET PASSWORD ... = 'auth_string' syntax is not deprecated, but ALTER USER is now the preferred statement for assigning passwords.
다수의 계정 한번에 변경 시
update문을 이용해서 mysql.user테이블의 내용을 변경
version 5.6 이하
UPDATE mysql.user SET Password = PASSWORD('${auth_string}') WHERE USER='${user}' AND HOST='${host}';
version 5.7 이상
패스워드를 저장하는 칼럼이 authentication_string로 변경되었다.
UPDATE mysql.user SET authentication_string= PASSWORD('${auth_string}') WHERE USER='${user}' AND HOST in ('${host}');
참고페이지
반응형