-
DB connectin error - Authentication with old password no longer supported, use 4.1 style passwords프로그래밍/DB 2015. 5. 5. 16:45728x90반응형
C# 프로그램에서 mysql에 접속하여 사용하고 있는데
어느순간 아래와 같은 메세지가 뜨면서 접속이 안되는 현상이 발생하였습니다.
에러 메세지 : Authentication with old password no longer supported, use 4.1 style passwords
에러가 나는 DB 접속문: MySqlConnection conn = new MySqlConnection("SERVER=***.***.com;DATABASE=**;UID=**;PWD=****;");
mysql 4.1 버전부터 PASSWORD() 함수가
기존에는 16비트 해쉬값을 사용하였으니 41비트 해쉬값을 생성하도록 변경되었습니다.
에러 메세지에 따라 접속하는 유저의 암호를 새로운 해쉬값으로 생성하도록 아래와 같이 작업하였습니다.
(그런데 닷넷 connector 업뎃도 안한것 같은데 왜 갑자기 에러가;)해결방법
// 리눅스에서 mysql console에 접속#mysql -u root -p// 예전 16비트 해쉬값을 사용하지 않도록 old_passwords 시스템변수를 0으로 변경한다// 참고:https://dev.mysql.com/doc/refman/5.0/en/password-hashing.htmlmysql> SET old_passwords=0;// 해당 username의 password를 41비트 해쉬값으로 변경한다.// 예시 SET PASSWORD FOR root=PASSWORD('1234');mysql> SET PASSWORD FOR username=PASSWORD('password');or (호스트 명시할때)// 해당 host의 username의 password를 41비트 해쉬값으로 변경한다.mysql> SET PASSWORD FOR user@host = PASSWORD('password');728x90반응형'프로그래밍 > DB' 카테고리의 다른 글
c#에서 mysql (MySqlCommand) 사용하기 예시 (1) 2016.11.24 mysql 실행중인 job list 확인 및 강제 종료 (0) 2016.04.03 mysql 재시작 오류 - datadir 변경 (0) 2015.07.15 mysql - 유저 생성과 권한 부여하기 (0) 2015.04.25 MySQL - select 구문 사용 예시 (1) 2014.11.02