분류 전체보기 (51) 썸네일형 리스트형 사진 올리는 API 1. Serverless Framework의 apps에서 create app클릭하여 python flask API생성 (이름은 aws-로 시작하게 하기) 2. 다음 화면에 나오는 npm(Node Package Manager) 코드에서 \부분 지우고 한줄로 만들기(이때 띄어쓰기된 부분은 그대로 살려야한다) 3. Anacomda Prompt열기, cd 프로젝트가 있는 경로이용해서 이동한 뒤 2.에서 만든 한줄을 입력 후 Enter, 그러면 해당 경로에 폴더가 만들어진다. (지금배포할거냐라는 질문에 n누른다) 4. vsc로 해당 폴더 열기, app.py로 이동 밑에 인터프리터를 내가 만든 가상환경으로 설정 후 app.py 수정 from flask import Flask from flask_restful imp.. AWS에 배포하기(Serverless 방식으로)+Github로 수정된 내용 적용 1. nodejs설치(LTS로) 2. Serverless Framework 설치 anaconda prompt 키고 cd로 깃허브있는 경로로 이동 후 npm install -g serverless쳐서 깔아주기 3. Serverless Framework 회원가입 후(되도록이면 구글 계정으로 통일시키자) org -> provider로 가서 add해주기 Access/Secret Keys 클릭 하지만! 채울것이 없을것이다 그래서 AWS 콘솔에 로그인한다 IAM이라고 검색 후 IAM 클릭 왼쪽에 사용자 클릭 사용자(회사에서는 개발자들 이걸로 관리한다고함) 추가 클릭 후 flask_app_user라고 이름만들고 다음클릭 직접 정책 연결 클릭 후 강의파일에있는 권한 8개정도를 권한 정책에서 검색해서 똑같이 추가해준다 .. Python MySQL Connector 셀렉트 하는 방법과 코드 (모든 데이터를 가져오는 방법) 1. 저장된 데이터를 가져오는 API를 만든다. (포스트맨에서) 2. Send를 누르면 에러가 날 것이다. 서버에 경로와 API동작코드(Resource)를 연결해주는 코드가 없기 때문이다. 따라서 코드를 추가해준다. api.add_resource( RecipeListResource ,'/recipes') 요청받은 주소에 '/recipes'가 있으므로 바로 경로가 적혀있는 위의 코드로 간다. 그리고 RecipeListResource라는 클래스가 이를 처리해준다. 3. 해당 클래스로가서 요청받은 GET 메소드를 처리해주는 함수를 만든다. class RecipeListResource(Resource): def get(self): # 1.클라이언트로 부터 데이터를 받아온다 # 2.. 파이썬 MySQL Connector 라이브러리 (설치 방법) 1. MySQL Connector 모듈을 설치한다. (Visual Studio Code에서) pip install mysql-connector-python 2. MySQL Connector 모듈을 import한다. (Visual Studio Code의 POST,GET .. 의 함수가 있는 파일에서) import mysql.connector 테이블에 unique 설정하는 방법 ● unique란? 제약조건 중 하나로 해당 컬럼에 동일한 값이 들어가지 않도록 하게한다. 같은 값이 들어가는 경우 오류를 발생시키면서 값의 입력을 거부하기 때문에 행별로 모두 값이 다르도록 유지시켜 준다. ● 예시) user 테이블에는 기본키인 id, 문자열 컬럼인 name, email이 있다. 이 테이블은 어떤 서비스의 가입자 테이블이라고 생각하자. 이름은 동명이인이 있기 때문에 같을 수 있지만 email은 가입자 마다 다를 것이다 따라서 동일한 값이 들어가지 않게 email 컬럼에 unique 설정을 해주겠다. Index Name에 원하는 이름을 입력하고 Type는 UNIQUE선택 옆에 컬럼을 고르는 부분에서는 unique설정을 할 컬럼을 선택한다. ○ unique 설정 하지 않았을 때, 같은 이메.. 외래 키 지정했을 때 삭제하는 방법 예시) papers 테이블의 student_id는 students 테이블의 id를 참조하고 있다 이 상태에서 students 테이블의 id가 4인 학생 데이터를 삭제하면, 에러가 난다! 그 이유는 삭제를 하려면 외래키가 가리키는 거 먼저 삭제하고 본 테이블에 있는거를 삭제해야되기 때문이다. 따라서 papers 테이블의 student_id가 4인 데이터를 먼저 삭제해야 students 테이블의 id가 4인 데이터를 삭제할 수 있다. 위의 과정이 복잡하다면, papers 테이블의 Foreign Keys에서 On Delete를 CASCADE로 바꾸면 외래키가 가리키고 있는걸 삭제하지않아도 자동으로 가리키는 것과 본 테이블의 데이터도 삭제된다. ▶참고로 이 옵션은 회사마다 다르다. MySQL Workbench 테이블 생성, 데이터 넣기 테이블 생성) 왼쪽 화면의 데이터베이스 밑에 Tables에서 우클릭 Create Table 클릭 Table Name에 테이블 이름 넣어주고 Column Name에 컬럼 이름 Datatype에 컬럼의 데이터 타입 넣어준다. Default에는 디폴트로 나오는 값을 넣어준다 아무것도 넣지 않으면 Null값으로 나온다 데이터프레임의 인덱스처럼 데이터베이스에는 id가 있다 - 회사마다 id명 다르게정한다/RDBMS의 id는 숫자형이다 PK: Primary Key 중요한 키 NN: Not Null 널이 있을 수 없다 UN: Unsigned 부호가 없다 (음수가 없다) AI : Auto Increment 자동 증가 위의 4가지를 체크해줘야한다 -관습상 id는 맨 처음으로 만들어준다 테이블 수정은 테이블칸에서 우클릭 .. MySQL Workbench에서 RDS MySQL에 연결하는 방법 1. 설치한 MySQL Workbench에서 MySQL Connections 옆에 플러스 버튼 클릭 2. Connection Name 적어주고 Hostname은 AWS RDS에 생성한 데이터베이스 주소(연결 & 보안에서 엔드포인트 복사), Username admin 아이디 정한거 Password는 admin 비번 정한거 넣어주기(Stroe in vault ... 클릭해서 비번 넣어주면 저장해서 쓸 수 있음) 3. Test Connection 클릭(연결이 잘 됬는지 확인하기 위해) ▷ 응답없고 아무 화면도 안뜬다? 그럼 3306포트 방화벽 문제다! 다시 AWS RDS에 생성한 데이터베이스로 들어가서 인바운드 규칙에 추가해준다! Windows에서 MySQL Workbench 설치하는 방법 1. https://dev.mysql.com/downloads/workbench/ - MySQL 홈페이지들어가기 2. 밑에 Download 버튼 클릭 ▷ 이런 에러가 난다면? vistual c++ 2019를 설치! 3. 설치화면 나오면 계속 Next 누르고, Install 나오면 클릭 AWS MySQL Free Tier 설치 1. AWS 로그인 2. AWS 서비스에서 데이터베이스 선택 -> RDS 선택 -RDS: AWS가 제공하는 데이터베이스 서비스 3. Dashboard -> 데이터베이스 생성 클릭 4. 표준생성 -> MySQL로 선택 5. 여기서 중요! 프리 티어로 선택(무료로 쓰기 위해서) 6. admin 암호 설정해줌 7. 퍼블릭 엑세스 가능을 예로 선택(외부에서 내부에있는 DB에 접근하기 위해) 8. 데이터베이스 생성 클릭 데이터베이스 생성되는데 10분정도 걸림 이전 1 2 3 4 5 6 다음