Table of contents
AWS RDS 엔드포인트
donga-dashboard-db.cb8ew04205xm.ap-northeast-2.rds.amazonaws.com
Tunneling
RDS 보안을 위한 보안그룹(rds-ec2-1, sg-090e782efb04b37bb) 인바운드 규칙으로 인해, ec2로 접속하는 터널을 먼저 열어주어야 합니다.
donga_kit_v2로 접속해서 로컬에서 3307 포트로 접속할 수 있게 포워딩 해줍니다.
•
3307 포트 사용 여부 확인
netstat -ano | findstr :3307
Shell
복사
•
사용 중인 포트가 있다면 kill
taskkill /F /PID <확인된PID>
Shell
복사
•
ssh 터널 열기
ssh -i { 로컬 환경 공개키 저장 위치 } -N -L 3307:{ RDS 엔드포인트 } ubuntu@{ EC2 public IP } -f
Shell
복사
ssh -i "C:\Users\사용자\.ssh\donga_kit_v2.pem" -N -L 3307:donga-dashboard-db.cb8ew04205xm.ap-northeast-2.rds.amazonaws.com:3306 ubuntu@43.203.179.87
Shell
복사
명령어 예시
DB Connect
이후 로컬에서 3307 포트로 MySQL DB 접속 명령어를 입력합니다. 이후 password 입력
mysql -h 127.0.0.1 -P 3307 -u root -p
Shell
복사
SHOW DATABASES;
USE donga_dashboard_db;
SQL
복사
들어가서 쿼리 작성하면 됩니다.
전체 쿼리 활용 접속
위에서 터널링 이후 제공해주신 아래의 쿼리를 실행시켜도 됩니다.
mysql -h 127.0.0.1 -P 3307 -u root -p'1u56mNAQ4F4LSEGtAP1l' donga_dashboard_db --batch -e "
SELECT donga.title as title,
CONCAT(donga.dept, ' ', donga.reporter) as reporter_dept,
donga.published_at as pub_date,
donga.id as origin_id,
naver.id as naver_id,
daum.id as daum_id_num,
donga.url as origin_link,
donga.text_length as article_len,
CASE
WHEN donga.content_source LIKE '%온라인%' THEN 'only online'
ELSE ''
END as content_source,
donga.view_count as donga_views,
naver.view_count as naver_views,
daum.view_count as daum_views,
(COALESCE(donga.view_count, 0) + COALESCE(naver.view_count, 0) + COALESCE(daum.view_count, 0)) as entire_views
FROM donga_article as donga
LEFT JOIN naver_article as naver on naver.donga_id = donga.id
LEFT JOIN daum_article as daum on donga.id = daum.donga_id
WHERE donga.published_at >= '2025-12-01' and donga.published_at < '2026-01-01'
ORDER BY donga.published_at;
" | sed 's/\t/","/g;s/^/"/;s/$/"/' > december_2025_data.tsv
SQL
복사