Confluence 에 심각한 보안 취약점이 발견되었으니 사용자분들은 업그레이드 하세요.!
 
1
0
-1

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=myapp
DB_USERNAME=homestead
DB_PASSWORD=secret


콘솔에서 mysql -u homestead -p 를 통해 진입하면 잘 들어가지고 테이블도 잘 만들어집니다. 

그러나 artisan tinker를 사용해서


DB::select('SELECT * FROM posts');


명령을 사용하면 

Illuminate/Database/QueryException with message 'SQLSTATE[HY000] [1045] Access denied for user 'homestead'@'localhost' (using password: YES) (SQL: SELECT * FROM posts)'


해당 오류만 뱉어냅니다. DB에 접근이 안되는거 같습니다. artisan tinker를 다시 구동해도 똑같은 현상입니다. 도움 부탁드립니다 ㅠ

    CommentAdd your comment...

    4 answers

    1.  
      1
      0
      -1

      그거 .env 파일

      DB_PORT=3306에서 DB_PORT=3307로 바꾸면 해결되요.

        CommentAdd your comment...
      1.  
        1
        0
        -1

        늦었을지도 모르겠지만...

        전 이상하게 bitnami를 설치할 때 DB port가 3307으로 잡혀져 있더라구요..

        두 분의 답변도 좋지만... 전 해결이 안되더니....... 문제는 3307...이였어요.......

        wampstack 폴더 들어가서 mysql/my.ini에서 포트나 apache 포트 꼭 확인해주셔야 할 듯...

         ㅠㅠㅠ 이걸로 밤샜습니다...... 아마 예전? mysql이랑 겹쳐서 ?? 그런 것 같더라고요.ㅠㅠ

          CommentAdd your comment...
        1.  
          1
          0
          -1

          MySQL 사용자가 등록되지 않은 것 같네요. 아래 내용 참고해주세요.

          # homestead 사용자가 등록되었는 확인합니다.
          mysql> use mysql;
          mysql> select user, host from user where user like "homestead%";
          +-----------+-----------+
          | user      | host      |
          +-----------+-----------+
          | homestead | %         |
          | homestead | localhost |
          +-----------+-----------+
          
          # homestead 사용자를 등록합니다.
          mysql> CREATE USER 'homestead'@'%' IDENTIFIED BY 'secret'; 
          mysql> CREATE USER 'homestead'@'localhost' IDENTIFIED BY 'secret'; 
          mysql> GRANT ALL PRIVILEGES ON myapp.* TO 'homestead'@'%'; 
          mysql> GRANT ALL PRIVILEGES ON myapp.* TO 'homestead'@'localhost'; 
          mysql> FLUSH PRIVILEGES;
            CommentAdd your comment...
          1.  
            1
            0
            -1

            mysql -u homestead -p secret 으로 했을 때 로그인이 잘 되고

            실제 DB를 확인 했을 때 myapp이 존재 한다면.


            mysql DB의 users 테이블에 homestead의 host 값이 localhost가 존재 하는지 확인 해보세요.

            없으면 추가를 하시던지 DB_HOST=127.0.0.1 를 DB_HOST=localhost로 변경 해보세요.

              CommentAdd your comment...