SlideShare a Scribd company logo
1 of 10
리눅스 환경에서의
mysql 백업 스크립트
2019152038 이지호
3차 과제 발표
스크립트의 배경
• Rahul Kumar의 오픈소스 파이썬 스크립트를 본인이 포
크 후 2019년 1월에 수정하였다
• 주로 매개변수 설정 관련으로 수정하였음
• 그 후 2020년 6월에 bash 스크립트로 컨버전하였다
• 유닉스기초 3차과제 발표 코드
• 그런데 어차피 원본도 쉘 명령어 호출이 전부니까 더 쉬웠다
• Github 레포지토리
https://github.com/tecrahul/python-mysql-backup
https://github.com/DPS0340/mysqlbackup
파이썬 스크립트 수정 당시 기록
의미없는 커밋 메시지들…
bash 스크립트 작성 당시 사용 기술
• 1년 반동안 경험으로 겪었기에 필수적으로 쓰게 된 것
• 버전 관리는 꼭 필요하다
• 저장만 하는게 아니라 협업, 디버깅, 에러의 근본 원인 확인과 수정에 너무 편리
• 게임으로 비유하자면 세이브 로드 수준을 뛰어넘음
• 대중적인 git & github를 사용하였음
• 있어서 편했던 것
• 에디터 – Visual Studio Code
• 윈도우 환경에서 리눅스 가상머신
• 기본적인 디버깅은 wsl 사용: 에디터에서 바로 실행 가능, 간편성
• 실제 시연은 vmware 사용
• 필수적인 의존성 – mysql
• mysql 백업 스크립트이기 때문에…
의미있는 커밋 메시지 작성
원래는 영문으로 작성하였지만,
간결성도 내용도 잡지 못한 명확하지 않고
천편일률적인 메시지 위주가 되었다
차라리 한국어로 쓰되 의도를 명확하게
전달하는것이 이번 프로젝트의 목표였다
결과적으로 주제는 잘 전달이 되지만
클린 메시지는 아닌 느낌?
코드와 설계 설명
IDE를 켜서 직접 보면서 하겠습니다
VMware를 이용한 동작 시연
느낀 점들
• bash는 상당히 쉽다
• 쉬운 것을 어렵게 쓸 필요는 없음
• 스크립트에서는 무엇을 하느냐가 어떻게 하느냐보다 더 중요하게 여겨
질수도 있음
• 실용성을 생각하지 않던 나를 되돌아봤다
• 강력하면서도 간단한 리눅스 커맨드라인
• GUI나 CLI나 편하게 쓰려고 하는것이다
• 확장성이 용이 – gzip, mysqldump등 여러 유틸리티를 자유롭게 활용
가능
• 터미널 커맨드와 스크립트의 문법이 거의 동일함 – 그래서 좋다
Q&A TIME
감사합니다!

More Related Content

Similar to 한국산업기술대학교 유닉스기초 3차과제 발표 2019152038 이지호

Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
Joongi Kim
 
137 deview
137 deview137 deview
137 deview
NAVER D2
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님
NAVER D2
 

Similar to 한국산업기술대학교 유닉스기초 3차과제 발표 2019152038 이지호 (20)

Github? linux? 이건 뭐지?
Github? linux? 이건 뭐지?Github? linux? 이건 뭐지?
Github? linux? 이건 뭐지?
 
오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)오픈세미나 플러그인만들기(한번더)
오픈세미나 플러그인만들기(한번더)
 
생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdf생산성을 높여주는 iOS 개발 방법들.pdf
생산성을 높여주는 iOS 개발 방법들.pdf
 
Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
Python Korea 2014년 6월 세미나 - Windows 환경에서 Python 개발환경 세팅하기
 
어그로월드 Season1 - Aggro World season 1
어그로월드 Season1 - Aggro World season 1어그로월드 Season1 - Aggro World season 1
어그로월드 Season1 - Aggro World season 1
 
오픈 소스 컨트리뷰션 가이드
오픈 소스 컨트리뷰션 가이드오픈 소스 컨트리뷰션 가이드
오픈 소스 컨트리뷰션 가이드
 
137 deview
137 deview137 deview
137 deview
 
Popular Convention 개발기
Popular Convention 개발기Popular Convention 개발기
Popular Convention 개발기
 
2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리2020년 4월 18일 개발 이야기 정리
2020년 4월 18일 개발 이야기 정리
 
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
[부스트캠프 Tech Talk] 최재필_P 스테이지에서 Git으로 협업하기
 
Embedded project presentation
Embedded project presentationEmbedded project presentation
Embedded project presentation
 
[170403 2주차]C언어 A반
[170403 2주차]C언어 A반[170403 2주차]C언어 A반
[170403 2주차]C언어 A반
 
[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)[17.02.09] Github introduction (Korean Version)
[17.02.09] Github introduction (Korean Version)
 
Ninja
NinjaNinja
Ninja
 
개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님개알못의 오픈소스이야기 - 이상준님
개알못의 오픈소스이야기 - 이상준님
 
200720 바이오협회 생물정보학 파이썬 강의
200720 바이오협회 생물정보학 파이썬 강의 200720 바이오협회 생물정보학 파이썬 강의
200720 바이오협회 생물정보학 파이썬 강의
 
Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료Django로 배우는 쉽고 빠른 웹개발 study 자료
Django로 배우는 쉽고 빠른 웹개발 study 자료
 
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
차정민 (소프트웨어 엔지니어) 이력서 + 경력기술서
 
오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료오픈소스GIS 개발 일반 강의자료
오픈소스GIS 개발 일반 강의자료
 
Lablupconf session8 "Paving the road to AI-powered world"
Lablupconf session8 "Paving the road to AI-powered world"Lablupconf session8 "Paving the road to AI-powered world"
Lablupconf session8 "Paving the road to AI-powered world"
 

한국산업기술대학교 유닉스기초 3차과제 발표 2019152038 이지호

  • 1. 리눅스 환경에서의 mysql 백업 스크립트 2019152038 이지호 3차 과제 발표
  • 2. 스크립트의 배경 • Rahul Kumar의 오픈소스 파이썬 스크립트를 본인이 포 크 후 2019년 1월에 수정하였다 • 주로 매개변수 설정 관련으로 수정하였음 • 그 후 2020년 6월에 bash 스크립트로 컨버전하였다 • 유닉스기초 3차과제 발표 코드 • 그런데 어차피 원본도 쉘 명령어 호출이 전부니까 더 쉬웠다 • Github 레포지토리 https://github.com/tecrahul/python-mysql-backup https://github.com/DPS0340/mysqlbackup
  • 3. 파이썬 스크립트 수정 당시 기록 의미없는 커밋 메시지들…
  • 4. bash 스크립트 작성 당시 사용 기술 • 1년 반동안 경험으로 겪었기에 필수적으로 쓰게 된 것 • 버전 관리는 꼭 필요하다 • 저장만 하는게 아니라 협업, 디버깅, 에러의 근본 원인 확인과 수정에 너무 편리 • 게임으로 비유하자면 세이브 로드 수준을 뛰어넘음 • 대중적인 git & github를 사용하였음 • 있어서 편했던 것 • 에디터 – Visual Studio Code • 윈도우 환경에서 리눅스 가상머신 • 기본적인 디버깅은 wsl 사용: 에디터에서 바로 실행 가능, 간편성 • 실제 시연은 vmware 사용 • 필수적인 의존성 – mysql • mysql 백업 스크립트이기 때문에…
  • 5. 의미있는 커밋 메시지 작성 원래는 영문으로 작성하였지만, 간결성도 내용도 잡지 못한 명확하지 않고 천편일률적인 메시지 위주가 되었다 차라리 한국어로 쓰되 의도를 명확하게 전달하는것이 이번 프로젝트의 목표였다 결과적으로 주제는 잘 전달이 되지만 클린 메시지는 아닌 느낌?
  • 6. 코드와 설계 설명 IDE를 켜서 직접 보면서 하겠습니다
  • 8. 느낀 점들 • bash는 상당히 쉽다 • 쉬운 것을 어렵게 쓸 필요는 없음 • 스크립트에서는 무엇을 하느냐가 어떻게 하느냐보다 더 중요하게 여겨 질수도 있음 • 실용성을 생각하지 않던 나를 되돌아봤다 • 강력하면서도 간단한 리눅스 커맨드라인 • GUI나 CLI나 편하게 쓰려고 하는것이다 • 확장성이 용이 – gzip, mysqldump등 여러 유틸리티를 자유롭게 활용 가능 • 터미널 커맨드와 스크립트의 문법이 거의 동일함 – 그래서 좋다