반응형
새로운 프로젝트를 시작할 때마다 수작업으로 여러 건의 더미 데이터를 생성하는 작업이 번거로웠는데,
강의를 통해 대량의 더미 데이터를 쉽게 생성하는 방법을 알게 되어 정리해본다.
간단한 쿼리만 실행하면 1,000,000건의 데이터도 빠르게 생성할 수 있다!
🧑🏻💻 더미 데이터 생성 쿼리 실행
- 데이터베이스 콘솔창에서 아래와 같은 형식의 쿼리를 작성 후 실행하면 된다.
해당 로직은 MySQL 8.0 이상에서만 사용 가능하다.
-- 높은 재귀(반복) 횟수를 허용하도록 설정
-- (아래에서 생성할 더미 데이터의 개수와 맞춰서 작성하면 된다.)
SET SESSION cte_max_recursion_depth = 1000000;
-- boards 테이블에 더미 데이터 삽입
INSERT INTO boards (title, content, created_at)
WITH RECURSIVE cte (n) AS
(
SELECT 1
UNION ALL
SELECT n + 1 FROM cte WHERE n < 1000000 -- 생성하고 싶은 더미 데이터의 개수
)
SELECT
CONCAT('Title', LPAD(n, 7, '0')) AS title, -- 'Title' 다음에 7자리 숫자로 구성된 제목 생성
CONCAT('Content', LPAD(n, 7, '0')) AS content, -- 'Content' 다음에 7자리 숫자로 구성된 내용 생성
TIMESTAMP(DATE_SUB(NOW(), INTERVAL FLOOR(RAND() * 3650 + 1) DAY) + INTERVAL FLOOR(RAND() * 86400) SECOND) AS created_at
-- 최근 10년 내의 임의의 날짜와 시간 생성
FROM cte;
-- 1,000,000건의 데이터 잘 생성되었는지 확인
select count(*) from boards;
💡 성공
- 쿼리 실행 완료 후, 1,000,000건의 데이터가 성공적으로 생성된 것을 확인할 수 있다!
References
< 해당 글은 velog에서 이전하며 옮겨온 글로, 가독성이 좋지 않을 수 있는 점 양해 부탁드립니다. >
🔗 velog 버전 보기 : https://velog.io/@ryuneng2/MySQL-대량의-더미-데이터를-생성하는-로직
'etc' 카테고리의 다른 글
AWS ElastiCache 세팅 (0) | 2025.01.25 |
---|---|
부하 테스트의 기본 개념, Windows K6 설치 방법 (0) | 2025.01.25 |
[GitHub] velog와 GitHub 연동하기 (velog 글 작성 시, 자동으로 깃허브에 커밋하는 방법) (0) | 2025.01.24 |
[GitHub] 로컬에서 깃허브 원격 저장소 변경하는 방법 (0) | 2025.01.24 |
[gRPC] gRPC란? (0) | 2025.01.24 |