인프런 커뮤니티 질문&답변

송진욱님의 프로필 이미지
송진욱

작성한 질문수

갖고노는 MySQL 데이터베이스 by 얄코

내 웹사이트를 온라인에!

CLI로 진행시 mysql 연결

작성

·

430

1

안녕하세요. 강의 잘 들었습니다.
 
Ubuntu 환경에서 CLI로 진행하고 있는데 heroku에 connection을 하지 못하고 있습니다. heroku에서 보여준대로 host, username, password로 유저를 생성을 하였고, database를 생성했는데 연결이 되지 않네요

답변 7

0

로컬컴으로만 연결이 되어서..

 

얄팍한 코딩사전님의 프로필 이미지
얄팍한 코딩사전
지식공유자

안녕하세요. 저는 젯브레인 툴로 작업해 본 적이 없어서 제가 모르는 부분이 있을 수 있지만, 오류메시지 자체로 보자면 패스워드 등이 잘못되어 권한 오류가 생긴 상황입니다.

일단 강의와 같은 방법으로 다시 진행하셔도 오류가 나는지 확인 부탁드립니다.

아울러 질문은 강의페이지마다 하단에 강조해둔대로 메일로 보내주시면 감사하겠습니다.

0

어떻게 접근해야 될까요??

0

안녕하세요.. jet brain 튤에서 실습 연습하고 있는데요.. .. ..

왜 두번째 프로젝트에서.. 자꾸 에러 메시지가 뜨는데요..

어떻게 시도 해야 되는지 모르겠어요.. 강사님 가르쳐주세요.. 다겸한다05.png

0

얄팍한 코딩사전님의 프로필 이미지
얄팍한 코딩사전
지식공유자

(위 답변에 추가)

그리고 마지막 스샷의 Heroku 로그에서는 해당 데이터베이스에 sections 테이블이 없다고 나옵니다.

CLI 또는 GUI로 연결이 성공하시고 나서 테이블들을 생성, 데이터를 옮겨주시고 나면 동작할 것입니다.

0

얄팍한 코딩사전님의 프로필 이미지
얄팍한 코딩사전
지식공유자

영상에서처럼 Heroku의 값들을 가지고 MySQL Workbench로 접속한 것이 아니라 CLI를 사용하고 계신다는 말씀이시죠?

글 읽으면서 이해가 되지 않는 부분은, Heroku는 설정에서 주어진 username을 그대로 사용하고 주소'로' 연결을 하는 것인데

지금 1번의 스크린샷을 보면, heroku의 주소로부터 로컬의 MySQL 데이터베이스로 접속하는 식으로, 거꾸로 사용하신 것 같습니다. 유저를 생성하고 권한을 부여하는 것은 다른 컴퓨터에서 내 컴퓨터의 MySQL에 접속하는 방법이기 때문에 이 상황에서는 할 필요가 없습니다.


CLI로 원격에 접속하는 명령어는 찾아본 결과

mysql -h (원격 호스트 주소) -u (유저네임) -p

(그리고 패스워드 입력)

위와 같습니다. 이렇게 시도해보시기 바랍니다.

송진욱님의 프로필 이미지
송진욱
질문자

와 알려주신 방법으로하니 잘 작동 되었습니다.

이 부분에서 process.env.JAWSDB_URL 이 자동적으로 연결을 해준건가요??

유저를 생성하는게 아니라 연결만 해주면 되는걸로 이해했는데 맞나요?

어쩐지 로컬로 데이터를 생성해줬는데 section이 없는걸로 나왔었는데 잘못된 방법으로 하고있었네요.

SQL 말고도 web에 대한 강의도 기다리고 있겠습니다. 감사합니다 !

 

얄팍한 코딩사전님의 프로필 이미지
얄팍한 코딩사전
지식공유자

다행입니다!!!
process.env.JAWSDB_URL 은 환경변수란 걸 사용한 건데
Heroku에서 Jaws DB로 동작하는 서버에 JAWSDB_URL란 값으로 host, user, database, password 등이 이미 다 들어가 있다는 것이 약속되어 있기 때문에 코드에 그걸 미리 넣어둔거에요. 그 값이 있다면, 즉 헤로쿠에서 동작하는 서버라면 그것들을 이용하고 그게 없다면, 즉 내 컴퓨터의 서버라면 위의 코드에서 입력한대로 사용하라는 의미인거죠 ^^

마침 다다음 주제로 웹 강의를 준비하고 있습니다.  도움되어드릴 수 있도독 더더욱 좋은 컨텐츠 만들겠습니다.

편안한 밤 보내세요~!!

0

송진욱님의 프로필 이미지
송진욱
질문자

그냥 포기하고 GUI로 할까 하다가도 CLI  해보고 싶어서.. 찾아보는데 잘 모르겠습니다.

그리고 Jaws MySQL 의 config중 password는 유저를 생성할때 사용했고, port는 사용하지 못하였습니다.

 

1. User

2. Database

Jaws MySQL에서 나온 값을 사용해서 사진 1과 같은 유저(efzuvkvci51trqf7)를 만들어 주었습니다.

사진 2의 database(tzoi81meqqhe5256)를 만들어 똑같이 테이블과 데이터를 생성해 준 후, 유저에게 모든 권한을 넘겨주었습니다.

어떻게 connect를 시켜주는지 잘 모르겠습니다.

Heroku URL: https://mysql-web-practice.herokuapp.com/

3. heroku logs --tail 했을때 아래와 같은 결과가 나옵니다. 

제 깃헙 링크는 https://github.com/Jinwook-Song/mysql-practice-2021 입니다.

 

 

0

얄팍한 코딩사전님의 프로필 이미지
얄팍한 코딩사전
지식공유자

헤로쿠 연결에 문제가 있으시군요.

안 된다고만 말씀주시면 정확히 어떤 상황인지 알기 어려워요 ㅠㅠ 뭐가 되지 않을 수 있는 이유는 수도 없이 많기 때문입니다.

어떻게 안 되는지를 알려주시면 원인을 파악하고 해결을 할 수 있을 것 같습니다.  로그 화면이나 에러 메시지 등 단서가 될 만한 것들을 첨부해주시면 좋겠습니다.

송진욱님의 프로필 이미지
송진욱

작성한 질문수

질문하기