본문 바로가기

프로젝트/node.js13

원격 서버에 mysql 띄운 후 workbench로 접속 확인하기 네이버 클라우드에서 제공하는 클라우드 서버를 사용하여 프로젝트를 원격으로 띄웠다면 사용할 데이터베이스에 대한 설정을 해줘야 한다. 그러나 네이버 클라우드에서 제공하는 스토리지 서비스가 꽤 비싸다고 들어 서버 내부에 mysql을 설치하여 사용하기로 결정하고 아래는 해당 과정을 진행하면서 기록한 내용이다. 아래 과정을 진행하기 전에 mysql에 접속하기 위해서 포트번호를 개인적으로 지정했다면 해당 번호를, 디폴트로 설정되어있는 것을 따로 변경하지 않았다면 3306 포트를 뚫어놔야한다. 1. 서버에 mysql 설치하기 - 원격 서버에 접속 - mysql 설치 sudo apt-get install mysql-server 2. mysql 실행 및 root 비밀번호 설정 - mysql 실행하기 systemctl s.. 2023. 10. 1.
[오류해결] mysql where 조건 사용 시 콤마? and? 몇 번은 틀렸는데 아직도 뭐가 맞는지 정확히 모르는 것 같아서 써두면서 제대로 기억하겠습니다 ,, code: 'ER_PARSE_ERROR', errno: 1064, sql: 'SELECT * FROM 테이블 이름 WHERE user_id = ?, 속성이름1 =?, 속성이름2 =?', sqlState: '42000', sqlMessage: "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax t o use near ' 속성이름1 =?, 속성이름2 =?' at line 1" WHERE 로 특정 데이터를 조회하려고 할 때 여러 조건을 사용한다면 .. 2023. 6. 28.
[프로젝트] mysql 오류 mysql에서 속성 이름을 하나 바꾸려고 하는데 계속해서 오류가 나는 현상을 발견했다. 이유를 찾아보니 MySQL 8.0에서 리눅스 MySQL 5.7로 데이터베이스 파일을 옮기려고 할 때 발생하는 오류라고 한다. 처음에 리눅스 내부에 db를 옮길 때 collation을 utf8mb4_0900_ai_ci 으로 설정한 부분이 다 오류가 나서 지우고 character set utf8 만 설정했었는데 collation 을 하나도 설정하지 않았더니 일부 속성이 제대로 반영되지 않는 것을 확인할 수 있었다. 그래서 해결 방법을 확인해보니까 utf8mb4_0900_ai_ci 가 아니라 utf8mb4_general_ci 로 싹 다 변경해주면 된다고 하여 데이터베이스의 collation을 다 utf8mb4_general.. 2023. 6. 25.
[프로젝트] puppeteer 오류 해결 puppeteer을 사용하여 크롤링을 하려고 했으나 Failed to launch the browser process 라는 오류를 발견했다. 아래와 같이 해결하면 된다고 해서 코드를 추가하고 실행을 해봤으나 안됐다.. args: ["--no-sandbox", "--disable-setuid-sandbox"], 만약 이래도 안된다면 우분투 환경 기준으로 필요한 종속성을 모두 설치해야한다고 한다. sudo apt update && \ sudo apt install -y \ ca-certificates \ fonts-liberation \ libappindicator3-1 \ libasound2 \ libatk-bridge2.0-0 \ libatk1.0-0 \ libc6 \ libcairo2 \ libcups.. 2023. 6. 25.
[프로젝트] Mysql 외부에서 접속하기 사용자 새롭게 설정해서 사용자 권한 설정 다하고, 3306 포트 번호 인바인드 규칙에 추가해두고 할 거 다했다고 생각했는데 외부에서 mysql 접근이 안돼서 workbench에서 connection에러가 뜨는 말도 안되는 상황이 발생했다. 근데 가장 중요한 것을 까먹고 안했다.. 1. mysql 설정 파일 접근하기 cd /etc/mysql/mysql.conf.d vi mysqld.cnf mysqld.cnf 파일 내부에서 bind address 설정을 전체 포트 다 가능하도록 바꿔주어야 한다. 처음에는 로컬만 허용되게 설정되어있다. 2. 외부 접속 허용하기 여기가 원래는 127.0.0.1로 되어있으나 0.0.0.0 으로 설정하여 모든 ip에 대해서 접근을 허용한다. 해당 설정 파일이 어디에 있는지 확실하게.. 2023. 6. 20.
[프로젝트] DB 인코딩 문제 해결 DB에 데이터 넣다가 발생한 문제 내용은 아래와 같다. "Incorrect string value: '\\xED\\x99\\x8D\\xEA\\xB8\\xB8..." 구글링해보니 DB에 인코딩이 제대로 안돼서 발생한 문제였고 해당 문제는 DB에서 charset이 utf8이 아니라서 생긴 문제라고 한다. 생성되어있는 디비들에 utf8로 인코딩한 적이 없어서 인코딩하는 아래의 명령어를 실행했다. alter table 테이블명 convert to character set utf8; 참고 https://velog.io/@jin_devlog/Springboot-mariaDB-%EC%9D%B8%EC%BD%94%EB%94%A9-%EB%AC%B8%EC%A0%9CIncorrect-string-value-xEDx99x8Dx.. 2023. 6. 20.
[프로젝트] 네이버 클라우드 서버 내부에 git clone 받기 내부에 접속해있다는 가정 하에 시작한다. 1. 클론 받기 git clone "github주소" 클론받을 깃허브의 주소를 입력한다. 내가 누군지 모를테니 github 아이디와 사용하는 token을 입력해주어야 한다. 패스워드라고 되어있지만 진짜 패스워드 입력하는 건 이전에나 그랬고 요즘에는 무조건 개발자 설정에서 토큰 발급 받아서 넣어주어야 한다. 왜 이렇게 바뀐거지.. 어쨋든 이렇게 하면 풀이 잘 받아진다. 2. gitignore에 있는 파일 넣기 npm install npm install로 node_modules 부터 설치해주려고 했으나 여기서 오류 발생! npm이 없어서 실행할 수 없다는 오류. 약간 예상했던 거라 당황스럽진 않았지만 친절하게 어떻게 해야하는지 알려준다. apt install npm .. 2023. 6. 19.
[프로젝트] 네이버 클라우드로 서버 구축(2) 한국에서 제공하니까 서버 구축하자마자 이것저것 하라고 한국말로 잘 알려주는데 1. 포트 포워딩 2. 공인 IP 받기 이 두 가지 먼저 해주겠다. 1. 포트포워딩 운영 중인 서버를 누르면 포트포워딩 설정 버튼이 활성화 된다. 눌러보자. 2. 외부 포트 설정 만든 서버가 하나라면 해당 서버 이름과 비공인 IP 등이 임의로 들어와 있다. 사용할 외부 포트만 입력하고 추가 버튼을 누르고 아래에 설정 버튼까지 눌러주면 제대로 적용된다. 3. 공인 IP 할당 받기 어디있나 또 찾다가 왼쪽에 Public IP 발견.. 아무것도 없으니까 신청 적용할 서버 선택하고 다음 최종 확인했으면 생성 4. ACG 설정하러 가기 공인 IP가 잘 만들어졌다면 ACG 설정하라는 창이 뜬다. 그럼? 하러 가야겠지.. ACG 설정 하러 .. 2023. 6. 19.
[프로젝트] 네이버 클라우드로 서버 구축하기(1) AWS를 사용하다가 모종의 이유로 네이버 클라우드로 바꾸기로 했다. 시작! 먼저 로그인 해주고 결제 계정을 등록하면 크레딧을 준다. 10만원이나!!! 3개월동안 사용 가능하니까 3개월 동안 아주 팍팍 써주겠어.. 1. Compute > Server 서버 구축을 해야되는 거니까 Compute > Server 로 들어가면 해당 내용을 확인할 수 있고, Server는 1년간 무료니까 다들 잘 알고 쓰시길! 2. 이용 신청하기 > 서버 생성 3. 서버 이미지 선택하기 리눅스 서버 구축할 거니까 우분투를 선택하고 그대로 놔두고 넘어가면 큰일난다! 서버타입이 기존에 Standard로 되어있다. Standard는 과금된다고 한다.. micro로 바꾸기!!! 부딩 디스크: 50GB (기본) 이미지 타입: OS (기본).. 2023. 6. 19.