오늘은 홈스테드와 베이그런트를 사용하여 DB를 구축하던 중 6시간 동안 서치하고 삽질한 끝에 찾아낸 해결방법을 가져왔습니다. 혹여나 저처럼 homestead나 vagrant ssh를 통해 터미널(혹은 git bash) 연결을 하여 php를 사용하는 경우, 1045 에러를 해결하는 연결방법을 설명드릴 터이니 참고가 되시길 바랍니다. 여러분의 시간은 소중하니까요 :D
저의 에러 상황 재현
먼저 당시의 제 오류 상황을 재현 해보자면, 권한 부여를 확인 후
database.php와 .env에 로컬에서의 mysql 기준으로 셋팅 하였습니다. (네, 바로 이게 문제였습니다..ㅎㅎ)
하지만 오류는 여전하였고, 알고 보니 Homestead를 사용하는 경우, 이쪽 세팅의 문제가 아님을 알게 되었습니다.
서치해보면 환경이 다른 케이스가 많았습니다. 대부분 php를 따로 설치하셨고, shell을 쓰는 케이스였으며, Mac/Linux인 경우가 많죠. 저희는 window용으로 편하게 사용하기 위해 Homestead를 설치하였던 것이기에 해결 방법이 조금 다릅니다.
해결방법
우선, 이렇게 2개의 파일을 수정하는 점에서는 동일합니다.
- database.php
- .env
라라벨 코리아에서 답을 찾을 수 있었습니다. 아래 링크를 통해 더 자세한 설명을 알 수 있습니다. (웬만한 설정 방법에 관한 내용은 이곳에서 찾을 수 있었기에 추천드립니다. 디스코드의 질문 게시판도 추천!! 🤗)
사이트의 내용을 참고하여 이제 오류를 해결해봅시다.
.env 에서 14행~16행를 수정해줍니다.
database.php도 마찬가지로 51행~53행을 다시 설정하고,
오류 하나를 해결하고 나니 정말 속이 후련하네요ㅎㅎ 이제 마음껏 DB를 구축할 수 있습니다 휴.... 다른 분들께서는 시간 단축이 많이 되셨길 바랍니다!
잘못 설명된 부분이나 피드백할 점이 있다면 언제든 댓글로 남겨주시면 감사하겠습니다. :)
+) 여담
제가 지금 구현 중인 부분은 MVC 패턴으로 게시판을 만들기 위한 DB 생성 단계입니다. 나중에 완성하게 되면 오류가 아닌 완성본으로 공부한 개념 설명과 함께 찾아오도록 하겠습니다. java와 유사한 점도 있고, 굉장히 편리한 점도 있어 여러모로 재미있게 공부 중입니다.