ASP.NET 기반 웹 API 개발 및 배포 전략

1. 웹 API 개요 2. HTTP 프로토콜 3. 웹 API 개발 새로운 프로젝트 생성 시 ASP.NET CORE 웹 API 템플릿을 선택하고 컨트롤러를 추가합니다. 컨트롤러 코드 예시는 다음과 같습니다: [Route("api/[controller]/[action]")] public class ApiController : ControllerBase { [HttpGet] public int GetSum(int a, int b) { return a + b; } ...

7월 16일 02:00에 게시됨

MySQL 기초 복습 및 실전 활용

주의: 잘못된 사용 방식 수정 키워드를 테이블 이름이나 컬럼 이름으로 사용할 경우, `` (백틱)을 사용해야 하며, ' ' (단일 인용부호)는 사용하지 않아야 합니다. 잘못된 예시 -- 1. 키워드로 지정 시 자동 대문자 처리 CREATE TABLE NAME( DATA DATETIME, ); -- 2. 단일 인용부호 사용 CREATE TABLE 'name'( 'data' DATETIME, ); 올바른 사용 방법 CREATE TAB ...

7월 16일 00:11에 게시됨

스pringboot 파일 업로드

스pringboot 파일 업로드 데이터베이스 테이블 생성 DROP TABLE IF EXISTS `file`; CREATE TABLE `file` ( `id` int(0) NOT NULL, `filename` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '파일명', `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '파일 경로', ...

7월 15일 22:37에 게시됨

MySQL 데이터 조작 핵심 가이드

외래키 개념과 실무 지침 물리적 외래키는 데이터베이스 레벨에서 테이블 간 제약 조건을 강제하는 메커니즘입니다. 하지만 실무 환경에서는 지양하는 것이 일반적입니다. 외래키 선언 방식 테이블 생성 시 외래키를 정의하는 방법과 이미 존재하는 테이블에 추가하는 두 가지 방식이 있습니다. -- 학년 정보를 저장하는 기본 테이블 CREATE TABLE `academic_year`( `y ...

7월 15일 22:35에 게시됨

리눅스 시스템에 MySQL 데이터베이스 서버 설치 및 설정

이 문서는 리눅스 운영 체제에 MySQL 데이터베이스 서버를 설치하고 초기 설정하는 과정을 안내합니다. MySQL은 웹 애플리케이션 개발에서 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템(RDBMS)으로, 효율적인 데이터 저장 및 관리를 제공합니다. 본 가이드에서는 MySQL 커뮤니티 서버 아카이브를 사용하여 직접 설치하는 방법과 기본적인 데이터베이스 구성, ...

7월 15일 21:42에 게시됨

LNMP 환경 구축 가이드

하나. 방화벽 설정 CentOS 7.x 기본 방화벽인 firewall 대신 iptables를 사용하도록 설정합니다. firewall 비활성화: systemctl stop firewalld.service # firewall 중지 systemctl disable firewalld.service # 부팅 시 firewall 자동 실행 비활성화 iptables 설치 yum install iptables-services # 설치 vi /etc/sysconfig/iptables # 방화벽 설정 파일 편집 # samp ...

7월 15일 21:30에 게시됨

CentOS 7에서 MySQL 설치 및 설정 가이드

1. MySQL Yum 저장소 추가하기 MySQL을 CentOS 7에 설치하려면 먼저 공식 Yum 저장소를 시스템에 추가해야 합니다. 1-1. MySQL Yum 저장소 RPM 패키지 다운로드: wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm 참고: 위 URL이 작동하지 않는 경우 MySQL 공식 Yum 저장소 페이지에서 최신 버전의 링크를 찾아 사용하세요. 1-2. 다운로드 ...

7월 15일 20:33에 게시됨

MySQL 인증 우회 취약점(CVE-2012-2122) 재현 및 분석

취약 환경 구성 공격 테스트를 위해 Vulhub 기반의 취약한 MySQL 환경을 도커를 통해 구축한다. 대상 시스템의 IP 주소는 192.168.100.40로 가정한다. cd /vulhub/mysql/CVE-2012-2122 docker-compose up -d Metasploit을 이용한 해시 추출 Metasploit 프레임워크를 실행한 후, 해당 CVE를 대상으로 하는 인증 우회 모듈을 사용하여 사용자 크리덴셜 해시를 추출할 수 있 ...

7월 15일 16:41에 게시됨

Canal과 RocketMQ를 활용한 MySQL 데이터 증분 동기화 구현

개요 Canal은 MySQL의 바이너리 로그(binlog)를 기반으로 증분 데이터를 실시간으로 파싱하고, 이를 외부 시스템에 전달하는 오픈소스 미들웨어입니다. 주요 원리는 MySQL 슬레이브처럼 동작하여 마스터 DB로부터 binlog 스트림을 수신한 후, 해당 이벤트를 해석해 외부 소비자에게 제공하는 것입니다. 주요 사용 사례로는 다음과 같은 시나리오가 있습니다: 데이터베 ...

7월 15일 05:18에 게시됨

MySQL 조인과 블룸 필터의 실제 활용법

Ⅰ MySQL 실행 순서 SQL 쿼리의 실행 순서는 다음과 같이 이해할 수 있습니다: 데이터를 가져올 테이블 및 컬럼을 결정 WHERE 절로 1차 필터링 GROUP BY 및 HAVING으로 그룹화 후 2차 필터링 ORDER BY 및 LIMIT 등으로 최종 정렬 및 제한 ① 다중 LEFT JOIN 실행 순서 LEFT JOIN이 여러 개 있는 경우, 왼쪽부터 순차적으로 연결됩니다. -- 메인 테이블: users ...

7월 14일 04:21에 게시됨