Backend/JavaScript,NodeJS, Express 35

MYSQL의 int() 괄호 안의 숫자 의미는 무엇일까?

테이블을 생성할 때 INT() 괄호 안에 숫자를 넣어서 만들었다. 나는 괄호 안의 숫자가 사용할 수 있는 INT 형 범위라고 생각했다. INT(1)이라면, 0~1 아니면 1의 자리 숫자의 INT 형들.. 하지만 INT(1)로 생성한 값안에 100도 들어가는 것을 보았다. 그럼 괄호안의 숫자는 무슨 의미인가? https://dev.mysql.com/doc/refman/8.0/en/numeric-types.html MySQL :: MySQL 8.0 Reference Manual :: 11.1 Numeric Data Types MySQL supports all standard SQL numeric data types. These types include the exact numeric data types (I..

[AWS] EC2와 RDS로 서버 배포하기 (Express, MySQL)

1. EC2, RDS 생성하기 RDS 생성 후 MySQL workbench 연결하기 - 보안 그룹 생성 시, 모든 권한 허용 2. EC2 SSH 키를 이용해, 서버 접속 [AWS] EC2 생성하기 (ssh 이용해 터미널에서 접속하기) 1. 용어정리 VPC (Virtual Private Cloud) VPC를 적용해서, VPC 별로 네트워크를 구성할 수 있다. VPC를 여러개 적용해놓으면 각각의 완전히 독립된 네트워크처럼 동작하게 된다. 서브넷 : VPC의 IP 주소 범위 bohyeonstudy.tistory.com 3. Git clone 진행 AWS - EC2 express 배포 EC2 생성 및 서버 접속 보안 그룹 설정을 해줍니다. ssh - 22 http - 80 https - 443 사용자 지정 tc..

[AWS] EC2 생성하기 (ssh 이용해 터미널에서 접속하기)

1. 용어정리 VPC (Virtual Private Cloud) VPC를 적용해서, VPC 별로 네트워크를 구성할 수 있다. VPC를 여러개 적용해놓으면 각각의 완전히 독립된 네트워크처럼 동작하게 된다. 서브넷 : VPC의 IP 주소 범위 Elastic IP (탄력적 IP) vpc 안에 EC2 인스턴스가 들어가는데 이 인스턴스의 IP는 유동적인 IP주소가 할당된다. 그래서 우리는 이 인스턴스들에 접근하기 위해 고정된 IP가 필요한데 그게 탄력적 IP이다. EC2 새로운 서버 컴퓨터 생성. 새로운 리눅스 서버를 만들 때 EC2 인스턴스를 생성한다 2. EC2 생성하기 1. AWS console 로그인 2. EC2 새 인스턴스 생성 (1) key 생성시, 키 위치와 이름명 기억하기 3. key 속성 값 변경..

기본 SQL 문 정리

1. SELECT 데이터를 불러오는 쿼리문 (1) SELECT name FROM user; 모든컬럼 불러올 시, * 이용 (2) SELECT name FROM WHERE 조건; 조건 : [컬럼명 = 값] , [email = 980926a@gmail.com] (3) SELECT name FROM user WHERE 조건 ORDER BY 컬럼명 ASC or DESC; (4) SELECT name FROM user WHERE 조건 ORDER BY 컬럼명 ASC or DESC LIMIT 개수; 2. INSERT 데이터 삽입 (1) INSERT INTO user (name, phone) VALUES ( 'bohyeon' , 0102344); VALUE가 문자열이면, ' ' 이용하기 (2) INSERT INTO u..

패스워드 암호화와 저장 - Salt

1. Salt 단방향 암호화인 해시함수로 비밀번호 암호화를 진행할 때, 해킹가능한 확률이 높아지므로, 해시함수를 돌리기 전에 원문에 임의의 문자열을 덧붙이는 것을 말한다. 단어 뜻 그래도 원문에 임의의 문자열을 붙인다는 의미의 소금친다(salting) 이라는 것이다. 같은 비밀번호를 사용하더라도 salt가 다르면 password를 알아내기 힘들다. 2. salt 사용하기 node.js에는 많은 기본제공 모듈이 있다. 그중에서 암호화, 복호화 기능을 제공한 crypto 모듈을 이용해서, 랜덤 스트링을 얻을 수 있는 방법이 있다. 암호화할때 사용할 알고리즘은 sha512, base64, hex 등이 있다. 2-1 회원가입 api (1) salt 값 만들기 const buf = await crypto.rand..

MySQL - Express 연결 에러 정리

1. npm start 한 뒤에, 연결에러 code: 'ER_NOT_SUPPORTED_AUTH_MODE', errno: 1251, sqlMessage: 'Client does not support authentication protocol requested by server; consider upgrading MySQL client', -> mysql 터미널에서 root 계정 권한 설정변경하기 ALTER USER '[MYSQL 아이디]'@'[MYSQL 주소]' IDENTIFIED WITH mysql_native_password BY '[MYSQL 비밀번호]'; 2. 터미널에서 mysql이 실행되지 않는 경우

Pool.js 이해하기

1. Connection 이란 클라이언트(애플리케이션) 측에서 데이터베이스에 접속해서 질의를 수행한 후, 결과를 받고 접속을 종료하는 일련의 과정을 의미한다. mysql.createConnection() -> connection.connect() -> connection.query() -> connection.end() 2. Connection Pool이란 사용자의 요청에 따라 Connection을 생성하다 보면 많은 수의 연결이 발생했을 때 서버에 과부하가 걸리게 된다. 이러한 상황을 방지하기 위해, 미리 일정 수의 Connection을 만들어 Pool에 담아뒀다가 사용자의 요청이 발생하면, 연결을 해주고 연결 종료 시, Pool에 다시 반환하여 보관하는 것이 Connection Pool이다. 이러한 ..

Maria DB - Express 연결 (Maria DB 설치 및 MYSQL workbench로 접속 및 Express 연결)

(1) Maria DB 설치 (window 64로 설치) https://goddaehee.tistory.com/201 [ Database ] 윈도우 10 MariaDB 설치 [ Database ] window10 마리아DB 설치 안녕하세요. 갓대희 입니다. 이번 포스팅은 [ window10 마리아디비 설치 방법 ] 입니다. : ) 0. 설치하기 앞서 #1 마리아 DB (Maria DB)란? - MariaDB는 MariaDB사가.. goddaehee.tistory.com 나는 체크하였다. (2) MYSQL workbench로 접속하기 https://ing-yeo.net/2020/02/study-nodejs-database-mariadb/ 노알못 Node.js 정리: 데이터베이스(MariaDB) - ING-..

Rest API, CRUD 개념 정리

1. REST API의 탄생 Representational State Transfer API -API : Application Programming Interface 응용프로그램에서 데이터를 주고 받기 위한 방법 (식당의 점원역할. 어떤 특정 사이트에서 특정 데이터를 공유할 경우 어떠한 방식으로 정보를 요청해야 하는지 어떤 데이터를 제공 받을 수 있는지에 대한 규격) HTTP 주요 저자 중 한 사람인 로이 필딩이 웹(HTTP)설계의 우수성에 비해 제대로 사용되어지지 못하는 모습에 웹의 장점을 최대한 활용할 수 있는 아키텍처로 발표. 2. REST 구성 (1) 자원 (resource) - URL (2) 행위 (verb) - HTTP Method (3) 표현 (representation) 3. REST 의 ..