전체 글(359)
-
[MySQL] 커맨드를 활용한 데이터 dump (import / export)
지난 번에는 워크벤치 툴로서 MySQL 데이터들을 백업하고 다시 넣는 작업에 대해서 정리해보았습니다.이번에는 이러한 워크벤치 툴 없이 커맨드 라인 상으로 해당 작업을 수행하는 과정을 정리해보겠습니다. 데이터 백업 dump (export)[특정 DB의 특정 Schema dump]# 로컬 환경 데이터 백업 dumpmysqldump -h localhost -P 3306 -uroot -p {백업할 DB명} {백업할 Schema 명} > {백업될 경로}/{백업될 sql 파일명}# 예 : mysqldump -h localhost -P 3306 -uroot -p testDB testSchema > C:/test/dump/dump_data.sql# 특정 서버 환경 데이터 백업 dumpmysqldump -h {해당 서..
2025.04.11 -
[Docker] Docker 설치
Docker 란?https://jindevelopetravel0919.tistory.com/224 [Docker] Docker 란?Docker Docker는 리눅스 컨테이너 기반의 오픈 소스 가상화 플랫폼입니다. 어플리케이션을 컨테이너 단위로 빌드, 배포 및 관리를 하기 위한 오픈 소스 플랫폼이라고도 볼 수 있습니다. 컨테이너 라jindevelopetravel0919.tistory.com 오늘은 Docker를 Linux 환경에 설치하는 방법을 정리해보겠습니다. (1) yum-utils 업데이트sudo yum updatesudo yum install -y yum-utils시스템 패키지 업데이트 및 yum-utils 를 최신 버전으로 업데이트 합니다. (yum-utils : yum 패키지 매니저 관련 유..
2025.04.10 -
[Docker] Docker를 활용한 데이터베이스 Replication 반영하기 (feat. MySQL)
이전에 근무했던 회사에서 만들었던 프로젝트를 회고해보면서 많은 문제점과 아쉬운 부분들이 많다고 느껴졌습니다.아무래도 독박으로 모든 백엔드와 서버에 대한 작업들을 다 혼자서 감당해야 했기에 부족한 부분이 많았기 때문입니다. 때문에 이전에 부족했던 부분들을 전체적으로 마이그레이션 하면서 보완할 부분들을 개선해나가고자 했습니다.그 중에서 오늘은 데이터베이스와 관련된 작업들에 대한 부하를 낮춰주고 고가용성으로 데이터베이스들을 활용하기 위해 레플리케이션(Replication)을 도입해보기로 하였습니다. 들어가기에 앞서서...일단 레플리케이션이 도입되기 전인 현 상태를 파악해보았습니다. - 운영 서버 : Linux- 사용 데이터베이스 : MySQL- 하나의 MySQL 데이터베이스만을 Linux 서버에 올려 데이터..
2025.04.10 -
[Javascript] 이벤트 버블링 (Feat. 버블링 막기)
쿠폰을 발급하는 특정 프로젝트를 진행하다가 발급 버튼을 누르면 중복으로 쿠폰이 발급되는 이슈가 발생되었습니다.클릭 이벤트나 함수 호출 또한 한 번만 되게끔 되어있는데 어째서 중복으로 실행이 되는지 의문이라 검색해보니 이벤트 버블링 (Event Bubbling) 이라고 하는 현상을 알게 되었습니다. 이벤트 버블링은 동작 이벤트를 가지고 있는 태그가 중첩으로 구성되었을 때, 해당 동작 이벤트를 실행하게 되면 중첩된 모든 동작 태그들에 한하여 중복으로 이벤트가 발생되는 현상을 말합니다. [HTML] 취소 확인 제가 처음 만든 모달에 존재하는 쿠폰 발급 버튼입니다.보시는 것처럼 a 태그 안에 button이 중첩되어 들어가 있고, 버튼을 클릭하면 get..
2024.11.20 -
[Spring Boot] js, css 와 같은 Resources 버전 관리 (feat. 캐시 스택킹 제거)
Spring Boot 프로젝트를 하나의 monolithic 프로젝트로써 MVC 패턴을 적용하여 구현하려고 했습니다.이 때 View 부분은 Thymeleaf 로 구성하였고 정상적으로 페이지가 구현되고 완성되었습니다.하지만 운영 서버에 배포할 때, 초기에 배포한 프로젝트 다음에 js나 css와 같은 Resource 를 수정한 version 2 프로젝트를 다시 재배포하게 되었을 때 업데이트한 Resource들이 정상적으로 반영되지 않고 계속 이전 Resource 내용으로 적용되어 문제가 발생되는 이슈가 있었습니다.이는 Resources들이 갱신되지 않기도 하거니와 서버 캐시 또한 새로고침(?) 되지 않아 발생된 이슈입니다.따라서 이를 해결해주지 않으면 서비스에 접속한 유저들이 일일히 직접 접속한 브라우저나 앱..
2024.11.19 -
[Javascript] canvas 캡쳐 후 다운로드
이전에 canvas 로 데이터들을 통합하여 만들었었는데, 그 때 만들었던 쿠폰 canvas의 경우 저장하기 기능이 존재했기 때문에 이 canvas로 만들어진 데이터를 캡쳐한 이후에 다운로드 되는 기능이 존재해야 했습니다.오늘은 이 기능을 javascript로 구현해보는 방법을 정리해보겠습니다. HTML 바코드 저장하기하나로 만들어진 canvas 영역과 해당 canvas 데이터를 다운로드 받을 button 을 만들어주었습니다. Javascript// 쿠폰 + 바코드 스크린샷 다운로드function capture() { html2canvas(document.getElementById('canvas'), { allowTaint: true, useCORS: ..
2024.11.12