
슬랙을 설치하고 깃허브와의 연결을 한 달 정도 미루다가 아래 Connect GitHub account 버튼을 누르려고 하니 에러가 발생했다.Error: The time window to connect your GitHub account has expired. Please return to Slack to re-start the process of connecting your GitHub account.GitHub 계정을 연결할 수 있는 시간이 만료되어 Slack에서 GitHub 계정 연결 프로세스를 다시 시작하라는 뜻이다. 1️⃣ 슬랙 대화창에 /github signin을 입력하면 다시 연결하는 버튼이 생성된다./github signin 2️⃣ 버튼을 누르고 3️⃣ 코드 6자리 입력하면 깃허브 아..

DBeaver에 MySQL을 연결해 사용하고 있었는데 어느날 접속하니 “Public Key Retrieval is not allowed” 에러가 났다. 보안을 위해 MySQL은 공개키를 아무 때나 주지 않는데, DBeaver가 접속하면서 공개키를 요청하니 MySQL이 거절한 상황이다.public key를 지정해주자. DBeaver에 연결중인 DB - SQL Editor - Edit Connection 경로로 이동 Connection settings - Driver properties 에서 allowPublicKeyRetrieval을 TRUE로 수정 - OK 참고https://computer-science-student.tistory.com/719
프로젝트를 Git으로 관리하려면 프로젝트와 Git 저장소를 연결하는 작업이 필요하다.이 작업은 보통 프로젝트의 기초 셋팅 후에 진행하는 것이 좋다.예를 들어, package.json을 생성하고 .gitignore을 설정한 뒤 app.js로 간단한 서버 구성을 마쳐 초기 폴더 구조가 완성되었을 때가 적절한 시점이다. 자, 이제 GitHub와 로컬 프로젝트를 연결하고 변경사항을 업로드하는 과정을 살펴보자. 1. github 로그인아래 주소로 이동하여 github 로그인한다.https://github.com/ 2. repositories 이동 3. New 버튼 클릭 4. 레포지토리 생성Repository name을 입력하고 해당 레포지토리 공개여부를 선택한 뒤 Create repository 버..
문제간단한 프로젝트를 만들기 위해 개발 초기 셋팅 단계에서 MySQL을 Docker 컨테이너로 구성해 연결하려는 과정에서컨테이너 생성은 정상적으로 되었는데 Node.js에서 MySQL에 연결하려는 순간 에러가 발생했다.Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client{ code: 'ER_NOT_SUPPORTED_AUTH_MODE', errno: 1251, sqlMessage: 'Client does not support authentication protocol requested by server; consider..
여러 데이터베이스(MySQL, Oracle, PostgreSQL 등)에서는 저장 루틴(Stored Routines)을 지원한다. 저장 루틴은 자주 사용하는 SQL 문장을 루틴처럼 저장해놓고 필요할 때마다 실행할 수 있는 기능이다.저장 루틴의 형태는 프로시저(Procedure)와 함수(Function) 두 가지로 나뉜다.프로시저는 여러 쿼리를 한번에 수행하고, 함수는 쿼리를 수행한 후 값을 가져오는 차이가 있다. 구문과 특징은 DB마다 약간 다르니 사용하는 DBMS에 맞춰 작성해야 한다.아래 내용은 MySQL 공식 문서를 참고하여 정리했다. 프로시저(Stored Procedure)프로시저는 데이터베이스 안에 저장된 SQL 코드 블록이다.특정 작업을 반복해서 수행할 때 매번 같은 SQL을 입력하지 않고 ..

곧 프리티어가 만료된다..앞으로 발생할 예상 비용을 계산해보고 불필요한 리소스를 체크하는 시간 가지면서 AWS Bugets 기능도 설정해주었다.AWS Bugets은 예산 금액을 설정하고 실제 비용이 일정 비율을 넘으면 이메일 알림을 보내주는 기능이다. (무료) AWS Bugets 설정AWS 로그인 후 Budgets 검색 예산 생성 클릭 예산 유형 선택예산 설정 - 사용자 지정(고급)예산 유형 - 비용 예산 예산 설정1. 예산 이름 설정 2. 예산 금액 설정아래와 같이 설정한다면 시작 월부터 월별 $20을 기준으로 비용을 추적한다는 설정이다. 3. 예산 범위 지정전체 계정의 모든 비용이 아니라 특정 리소스 또는 서비스의 비용만 추적하고 싶을 때 사용하는 필터링 기능이다. 알림 구성알림 임계..
AWS를 사용하다 보면 어떤 리소스를 어느 리전에 생성했는지 헷갈릴 때가 있다.AWS Resource Explorer(리소스 탐색기)를 사용하면 모든 리전의 AWS 리소스를 한 눈에 검색하고 탐색할 수 있다.Resource Explorer는 사용 요금이 없다. 리소스를 탐색하거나 인덱스를 생성하는 것만으로 과금되지 않으니 안심하자! 리소스 탐색기 활성화1. AWS 검색창에 Resource Explorer 입력 2. 리소스 탐색기 켜기 3. 인덱스 생성☑️ 빠른 설정 - 17개 리전에서 인덱스를 생성할 수 있다.☑️ 고급 설정 - 선택한 리전에서만 인덱스를 생성할 수 있다. 4. 생성 확인인덱스가 정상적으로 생성되었다면 아래처럼 성공 상태가 뜬다. 리소스 탐색기 비활성화(인덱스 삭제)리소..

SSR(Server-Side Rendering)이란?SSR은 웹페이지의 콘텐츠를 브라우저가 아닌 서버에서 미리 HTML 형태로 만들어 클라이언트에 전달하는 방식이다. 장점브라우저는 HTML을 받아 바로 화면에 렌더링하기 때문에 초기 로딩 속도가 빠르다.웹사이트를 볼 때 클라이언트가 서버에 요청해서 API를 가져오지 않고 서버가 이미 HTML에 필요한 데이터를 다 담아서 보내준다.그래서 민감한 데이터가 클라이언트에 노출되지 않는다. SSR 적용1️⃣ EJS(Embedded JavaScript) 설치npm install ejs EJS(Embedded JavaScript)는 서버에서 HTML을 만들어서 클라이언트에 보여줘야 할 경우 HTML 안에 JavaScript를 삽입할 수 있게, 즉 동적인 페이지를 만..

만약 엔드포인트가 www.example.com/items/{itemId} 라고 해보자./items/1, /items/2, /items/3 … 이런식으로 순차적인 숫자 ID가 붙는다면??누구나 다음 아이템의 ID를 쉽게 추측하고 접근할 수 있을 것이다.예측 가능한 숫자형 ID는 크롤링 대상이 되기 쉽다. 우리가 모르는 사이 누군가 수많은 URL을 순회하며 민감한 데이터를 수집하거나 무단 접근을 시도할 수 있다.이를 방지하기 위해 ID를 무작위 문자열로 바꾸기로 했다. UUID나 nanoid 등과 같은 랜덤 ID를 사용하면 URL을 예측하기 어려워 크롤링 시도를 차단하고 무단 접근을 막을 수 있다. 1️⃣ UUID(Universally Unique Identifier)란?UUID는 쉽게 말해 유일한 값을 ..

새 프로젝트를 시작하기 위해 IntelliJ를 실행해보니 작년에 Spring Boot 강의를 신청하면서 제공받았던 IntelliJ 유료 라이센스가 만료되어 있었다. 갱신을 원한다면 Upgrade Online Now 버튼을 누르고 결제를 진행한다. 무료버전을 사용하려면 IntelliJ 홈페이지에서 무료버전을 다운로드 받는다.1. 구글에 intellij community 검색 2. IntelliJ IDEA Community Edition 다운로드IntelliJ IDEA Ultimate는 유료이므로 스크롤을 내려 IntelliJ IDEA Community Edition을 다운로드한다.필자는 MacBook 사용자이므로 .dmg (Apple Silicon) 다운로드 3. dmg 파일 실행다운로드가 완료되..
- Total
- Today
- Yesterday