다른 DBMS/MySQL&MariaDB51 Recursive 구문을 활용한 연,월 dummy 데이터 생성 Mysql 기반으로 년,월 dummy 데이터를 생성해야 할 일이 있어서 만들었습니다. #년 올해 기준으로 +- 2년 5년치를 나오게 쿼리를 만들었음. WITH RECURSIVE A AS ( SELECT DATE_ADD(NOW(), INTERVAL -2 YEAR) AS n UNION ALL SELECT DATE_ADD(n, INTERVAL 1 YEAR) AS n FROM A WHERE n < DATE_ADD(now(), INTERVAL 2 YEAR) ) SELECT DATE_FORMAT(n, '%Y') AS n FROM A n | ----+ 2021| 2022| 2023| 2024| 2025| #월 월은 1-12월 까지의 데이터가 나오게 만들었음. WITH RECURSIVE mon_date AS (SELE.. 2023. 8. 14. Full Backup본으로 테이블 복구 스크립트 만들어서 복구 Mysql은 mysqldump로 백업받을 시 스크립트 형태로 백업이 받게 됩니다. mysqldump의 다양한 옵션이 있어서 fullbackup,스키마만 백업, 테이블만 백업등을 설정해서 백업을 받을 수 있는데요. 저는 fullbackup을 일정시간마다 돌게 설정해서 관리하고 있습니다. 특정 테이블만 복구해달라는 요청이 있어서, full backup본을 그대로 복구할 시 다른 것들도 모두 복구가 되기 때문에 full backup본을 기반으로 테이블 복구 스크립트를 만드는 법을 정리합니다. ## 장애상황 확인 mysql> select count(*) from data_source; ERROR 1146 (42S02): Table 'grafana.data_source' doesn't exist ## 스크립트 만.. 2023. 6. 21. 다른 서버에 Mysql 이관하기(mysql 설치,mysqldump 사용) 이번 글을 Mysql을 다른 서버에 이관하는 방법을 정리한 글입니다. 제가 실제로 작업할 환경을 바탕으로 테스트한 내용이며, 시나리오 형식입니다. -시나리오- OS 모종의 이유로 재구축이 필요하게 되었습니다. OS의 버전은 동일합니다. DBA의 입장에서 기존에 쓰던 mysql을 무사히 이관하는 방법을 테스트합니다. 정보 AS-IS OS : redhat 7.9 To-BE OS: redhat 7.9 Mysql 버전 : 5.7.25 OS가 동일하기 때문에, mysql 엔진과 데이터 영역을 압축해서 To-BE에 푸는 방법을 생각했습니다만, 설치시에 system상에 자동으로 등록되는 것들까지 manual하게 설정할 수 없다고 판단되어 이 방법은 사용하지 않기로 하였습니다. 실제 테스트에서 사용한 방법은 아래와 같.. 2023. 4. 13. mysql 접속시 --batch --execute --skip-column-names 옵션 사용 --execute 옵션을 사용 시 mysql로 접속하지 않고도 쿼리 결과를 받을 수 있습니다. C:\Program Files\MariaDB 10.6\bin>mysql -h 127.0.0.1 -P 3306 -u root -p -D test --execute="select * from tab_important" Enter password: ******** +------+-------+ | uid | uname | +------+-------+ | 1 | Matt | +------+-------+ --batch옵션을 사용시 실행 결과가 라인이 없는 표 형태로 출력됩니다. C:\Program Files\MariaDB 10.6\bin>mysql -h 127.0.0.1 -P 3306 -u root -p -D tes.. 2021. 12. 21. 이전 1 2 3 4 5 6 7 ··· 13 다음