전체 글

전체 글

    [AWS EC2] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    [AWS EC2] WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!

    AWS EC2에서 탄력적 IP를 사용하다가, 인스턴스를 바꿨을 경우 터미널에서 ssh 접속시 경고창이 뜬다. 접속하는 IP는 같지만, 실제 인스턴스지문이 달라졌기 때문이다. 오류 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! 해결방법 ssh-keygen -R {ip or domain} # ssh-keygen -R 1.12.123.123 명령어를 쳐준뒤, 다시 ssh 접속을 하면 잘된다~

    [Ubuntu] EACCES: permission denied, scandir '/root/.npm/_logs'

    [Ubuntu] EACCES: permission denied, scandir '/root/.npm/_logs'

    새로 세팅한 EC2에 node설치하고 npm 명령어를 사용하는데 아래와같이 에러가 났다. EACCES: permission denied, scandir '/root/.npm/_logs' 에러메세지에는 sudo chown -R 1000:1000 "/root/.npm"를 해보라고 되어있는데, 실행해봐도 같은 오류가 생긴다. 나는 root계정으로 작업을 하고있었는데, 내가 작업하려던 경로는 ubuntu유저에 의해 관리되는 폴더라 그런듯했다. exit하고 ubuntu유저로 npm명령어를 실행해주니 잘된다..! root는 다할수있는 줄 알았는데 그런건 아닌가보다 :)

    [Spring Boot] 오류: Cannot construct instance of (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)

    [Spring Boot] 오류: Cannot construct instance of (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator)

    정말 오랜만에 작년에 진행했던 프로젝트의 서버를 다시 살려보았다. 겨우 살리는데는 성공을 했는데, API호출을 해보니 500에러가 난다!ㅠㅠ 🚨 에러메세지 Cannot construct instance of `model` (no Creators, like default constructor, exist): cannot deserialize from Object value (no delegate- or property-based Creator) 문제가된 'model' 위치에는 req, res에 사용되는 dto class가 있었다. import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lom..

    [Mysql] 날짜 시간 더하기, 빼기 (DATE_ADD, DATE_SUB)

    [Mysql] 날짜 시간 더하기, 빼기 (DATE_ADD, DATE_SUB)

    특정 날짜, 시간에서 일정 초,분,시간을 더하거나 빼야하는 경우 더하기 DATE_ADD(날짜 시간, INTERVAL 숫자 단위) SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND); # 1초 SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE); # 1분 SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR); # 1시간 빼기 DATE_SUB(날짜 시간, INTERVAL 숫자 단위) SELECT DATE_SUB(NOW(), INTERVAL 1 SECOND); # 1초 SELECT DATE_SUB(NOW(), INTERVAL 1 MINUTE); # 1분 SELECT DATE_SUB(NOW(), INTERVAL 1 HOUR); # 1시간 NOW()..

    [Codedeploy] 에러메세지 및 해결방법 정리

    [Codedeploy] 에러메세지 및 해결방법 정리

    Codedeploy + Github actions 로 CI/CD를 구축하면서 엄청나게 많은 시도와 많은 에러메세지들을 만났었는데, 시도하면서 만난 에러메세지들과 해결방법들을 정리해두려고 한다. (Github actions에서 겪은 문제들은 따로 올릴 예정!) Error 로그 확인방법 1. 먼저 Codedeploy의 경우 AWS codedeploy에서 해당 배포를 클릭하면 에러메세지를 확인할 수 있다. codedeploy설정과 관련된 에러라면 대부분 여기 빨간박스에 에러메세지가 뜬다. 2. codedeploy설정이 아닌, 배포스크립트를 수행하던 중 오류가 발생했다면, 하단으로 스크롤하여 View events를 클릭하면, 더욱 자세한 오류메세지를 보여준다. View events 클릭 여기서 하단의 Scrip..

    [Javascript] setInterval 바로 실행하기

    [Javascript] setInterval 바로 실행하기

    setInterval 함수는 인자로 받은 함수를 특정시간마다 실행시키는 함수이다. 즉시 실행되지 않고 먼저 기다린 뒤 특정 시간 간격으로 실행된다. setInterval(console.log("hello world"), 10000); // 1000 = 1초 // 10초 뒤 hello world 출력 // 20초 뒤 hello world 출력 // 30초 뒤 hello world 출력 // ... 하지만, 먼저 실행을 시키고 일정간격으로 동작시키고 싶을 때가 있다! 그럴땐 아래처럼 코드를 두 줄로 써도 가능하지만, 실행하는 함수가 중복이 된다. 아래 코드의 경우 console.log("hello world")가 중복이다. console.log("hello world") setInterval(console...

    [Mysql] mysql에서 현재 연결된 connection 찾기

    Node.js와 Mysql사이에 발생한 Connection lost 문제를 알아보던 중 사용한 mysql 명령어들을 정리한다. 현재 연결된 Thread 개수 show status like 'Threads_connected'; 현재 실행중인 Thread 개수 show status like 'Threads_running'; 최대 가능한 connection 개수 show variables like 'max_connections'; 현재 연결된 connection 목록 show full processlist;

    [Docker] Mysql 여러개 관리하기

    [Docker] Mysql 여러개 관리하기

    현재 한 프로젝트에서 DB를 여러개 사용하고 있다. 한 Host의 한 Port만 사용하는게 아닌, 여러 DB를 병렬적으로 사용중이다. 이와 유사한 환경에서 connection 테스트를 하기 위해 여러 port의 mysql을 만들려고 했는데, 기존에는 homebrew를 이용하여 port:3306의 mysql 서버 1개만 사용했었기때문에 Docker를 사용했다. Docker를 사용하면 port를 달리해서, 여러 mysql 서버를 관리할 수 있다. docker run -d -p {PORT}:3306 --name {DB_NAME} -e MYSQL_ROOT_PASSWORD={DB_PASSWORD} -d mysql # docker run -d -p 3307:3306 --name testdb -e MYSQL_ROOT..

    [NestJS] .env사용하기

    환경변수를 사용하시 위해 Node.js에서는 dotenv를 사용하는데, NestJS에서 @nestjs/config를 사용하면 된다. (@nestjs/config에서도 내부적으로는 dotenv를 사용한다.) 1. @nestjs/config를 설치한다. $ npm i @nestjs/config 2. app.module.ts의 imports에 ConfigModule을 추가한다. app.module.ts import { Module } from '@nestjs/common'; import { ConfigModule } from '@nestjs/config'; @Module({ imports: [ConfigModule.forRoot()], controllers: [], providers: [], }) export..

    switch문 OR연산하기

    switch문을 쓸때 case부분을 OR 연산하고 싶을때 switch(value){ case 1: case 2: // do something break; ... } 이렇게하면 value가 1 또는 2인 경우에 실행이 된다!