본문 바로가기

카테고리 없음

[MySQL] ERROR: connect ECONNREFUSED 127.0.0.1:3306 / MySQL 포트 설정

반응형

back에서 npm run dev를 실행하여 로컬서버를 띄우려고 하는데 갑자기? 거부당했다. 원래 잘 되던 건데???

이틀동안 이것저것 세팅을 다시 만지고 mysql 지웠다가 새로 설치해보고 삽질하던 중 

최종적으로 마주한 에러는 아래와 같았다.

npx sequelize db:create 입력시..

 

jeongjieun@jeongjieun-ui-MacBookPro back % npx sequelize db:create

Sequelize CLI [Node: 16.13.2, CLI: 6.4.1, ORM: 6.21.0]

Loaded configuration file "config/config.js".
Using environment "development".

ERROR: connect ECONNREFUSED 127.0.0.1:3306

 

설정해놓은 development 코드

mysql 기본 포트인 3306에서 자꾸 거부당한다...

3306포트가 기존에 사용되고 있어서 그런건지 포트를 킬해줘도 안되고..(사실 애초에 사용되고 있지도 않은 포트였다는거)

결과적으론 내가 설정해놓은 서버포트는 3095이기 때문에 mysql 포트를 직접 동일하게 설정함으로써 어찌저찌 해결하였다.

일단, mysql 명령어를 기본 PATH에 설정한다

> echo 'export PATH="/usr/local/opt/mysql@5.7/bin:$PATH"' >> ~/.zshrc

 

MySQL 환경설정 파일(my.cnf) 찾기

아래 명령어를 입력하여 my.cnf가 어디에 위치한지 확인한다.

> mysql --verbose --help | grep my.cnf

나의 my.cnf는 /opt/homebrew/etc 에 위치하였다.

 

환경설정 편집기에 들어가서 포트 설정해주기

> cd /opt/homebrew/etc
> vi my.cnf

i 를 누르면 insert 모드가 되니 port = 3095 추가한 뒤

esc 누른다음에 :wq로 저장하고 나온다.

 

MySQL 서버 재실행 후 포트 제대로 설정되었는지 확인하기

> brew services restart mysql
> mysql -u root -p
> 패스워드 입력
mysql> SHOW GLOBAL VARIABLES LIKE 'PORT';

3095로 포트가 제대로 설정된 것을 볼 수 있다.

 

마지막으로 sequelize로 연결시도하고 서버 띄우기

> npx sequelize db:create

> npm run dev

 

성공이다!

mysql의 기본 포트를 건드린다는 게 썩 내키진 않았다. 어떤 일이 일어날지 모르니ㅠㅠ

여튼 이 방법으로 지금은 잘 작동하니까 앞으로 서버 띄워보면서 문제가 있는 지 지켜봐야 할 것 같다.

추후 문제가 있다면 이 게시글에 추가해서 작성하도록 하겠다!

 

반응형