Others
-
Slack에 Github 알림 / Github Actions 연동하기Others 2021. 11. 7. 20:40
1. Github Repository의 알림을 Slack에서 받기 현재 프로젝트에서 알림받는 정보를 Slack에서 받고 싶다고 하자. 예시를 위해서 Repository를 새로 생성했다. Github와 Slack에서 모든 작업을 지원해줘서 매우 쉽게 구성할 수 있을 것 같다. 1-1. Slack App에 Github App 추가하기 채널에서 Github App을 사용하기 위해서는 추가해주어야 한다. 사이드 바에서 추가할 수 있다. Github를 검색해보면 추가할 수 있는 버튼이 생긴다. 그러면 새로운 창이 나오는데 Add to Slack 버튼을 클릭해주도록 하자. 그러면 해당 페이지가 나오는데, 권한에 대해서 물어보는 것이므로 잘 읽고 Allow 해주도록 하자. 이런 메시지가 나온다면 성공적인 것이다. 1..
-
[Express] 리눅스 서버에 MongoDB 설치하고 연결하기Others/database 2021. 10. 31. 21:50
Express 프로젝트에서 MongoDB를 사용하고 프로젝트를 설정하려 한다. 현재 필자의 프로젝트 상황은 다음과 같음을 유의해야 한다. 실시간 통신을 사용해 db에 로그성 데이터를 저장하고 있다. 실시간 통신을 제공하기 때문에 서버의 확장을 고려하고 있다. Why in Linux(other Server)? 서버의 확장을 고려해서 데이터베이스와 서버를 분리해서 설정하나 다른 프로젝트에서는 왜 데이터베이스를 분리할까? 라는 생각이 들었다. 확장성 병렬 구조의 Scale out 방식의 서버 증설이 필요하다면 DB 분리는 반드시 필요하다. 자원을 서비스 서버와 공유하지 않고 독점적으로 사용하므로 더 높은 성능을 기대할 수 있다. 보안성 서비스와 데이터베이스를 분리함으로서, 두 서버 중 하나가 해킹을 당하더라도..
-
[Express] Sequelize를 이용해 모델(테이블) 생성 및 접근하기Others 2021. 9. 28. 23:01
이전 게시물에서 Express에 무사히 Sequelize를 설치 및 설정하였다. 이제 나의 로컬 컴퓨터의 MySQL 데이터베이스에 접근을 했으니, 테이블에 접근을 해야할 차례이다. Table에 접근하기 현재 Sequelize에서 접근하고 있는 데이터베이스에 어떤 Table이던 모델 선언을 해주지않으면 Sequelize에서 사용할 수 없다. 예시를 들기 위해서 위와 같이 User라는 테이블에 대해 접근한다고 가정하자. 모델을 선언하기 위한 폴더(models)에 User.js 파일에 아래와 같이 작성했다. // /db/models/User.js module.exports = (sequelize, DataTypes) => { // User 테이블의 속성들에 대한 선언 const tableAttrs = { id..
-
[Express] Sequelize 설치 및 설정하기Others 2021. 9. 28. 22:16
ORM? Object Relational Mapping 이다. 이게 뭐냐고? 객체 지향 프로그래밍에서는 객체를 사용한다. 프로그램을 구현하다 보면 관계형 데이터베이스의 데이터를 사용할 수 있는데 이 때 객체 모델과 관계형 모델 간에 불일치가 존재할 수 있다. ORM은 관계형 데이터베이스를 접근하여 데이터를 가져올때 객체와 연결시켜주는 것을 뜻한다. Sequelize! 위에서 ORM을 말한 이유는 Sequelize가 ORM으로 분류되기 때문이다. Sequelize는 NodeJS의 라이브러리이고 자바스크립트 객체와 데이터베이스를 매핑해준다 ???: 자바스크립트에서 관계형 데이터베이스 라이브러리를 사용해서 데이터를 가져오면 객체로 나오잖아요? Sequelize를 사용하면 자바스크립트 구문만을 사용함에도 SQL..
-
리눅스에서 MySQL 설치하기Others/database 2021. 9. 28. 17:12
1. mysql-server 파일 다운로드 sudo apt install mysql-server 2. mysql 설치 sudo apt install mysql-server 설치 당시 물어봤던 것들 비밀번호 플러그인을 사용할 것인지? Y 비밀번호 입력 anonymous users를 삭제할 것인지? (해당 계정에서만 접근) N root 계정에 원격 접속을 막을 것인지? Y test database의 접근을 막고 삭제할 것인지? Y privilege 테이블을 재시작 할 것인지? Y mysql 접속 확인 3. mysql 계정 설정 계정 확인 mysql> SELECT user,authentication_string,plugin,host FROM mysql.user; root 계정 비밀번호 설정 # 'passwor..