MariaDB14 MariaDB 실행 계획 분석 방법 MariaDB 데이터베이스 시스템에서 쿼리 성능 문제를 해결하고 최적화하는 데 있어 실행 계획 분석은 매우 중요한 과정이다. 실행 계획은 MariaDB가 SQL 쿼리를 실행하기 위해 수행하는 단계별 절차를 상세히 보여주며, 이를 통해 쿼리의 효율성을 파악하고 잠재적인 성능 병목 지점을 식별할 수 있다. 이 보고서는 MariaDB 실행 계획을 생성하고 분석하는 방법, 성능 병목 지점을 진단하는 방법, 그리고 실행 계획 분석을 기반으로 쿼리 성능을 최적화하는 전략을 상세히 설명한다. 1. 실행 계획 생성 방법MariaDB에서 쿼리의 실행 계획을 확인하는 가장 기본적인 방법은 EXPLAIN 명령어를 사용하는 것이다. SELECT, UPDATE, 또는 DELETE 문 앞에 EXPLAIN 키워드를 추가하면 M.. 2025. 3. 17. MariaDB SELECT 문법 가이드 (WHERE, ORDER BY, GROUP BY, HAVING, LIMIT편) MariaDB에서 데이터 조회를 위한 SELECT 문법은 가장 기본적이면서도 강력한 기능을 제공합니다.이 글에서는 MariaDB의 SELECT 문법을 초보자분들이 알 수 있도록 단계별로 상세히 설명해드리고자 합니다.데이터베이스 쿼리 작성에 자신감을 갖고 싶다면 이 가이드를 놓치지 말아 주시기 바랍니다. 이 가이드에서 사용할 데이터베이스 ERD는 기존 글에서 설계한 회원 및 게시판 ERD를 사용할 예정입니다.2025.01.27 - [MariaDB] - 게시판 DB 테이블 설계하기 게시판 DB 테이블 설계하기목차요구사항 확인하기테이블 설계테이블 생성 스크립트마무리 오늘은 MariaDB로 게시판 테이블 설계에 대해서 이야기해보려고 합니다.웹개발을 하다 보면 게시판은 가장 기본적이면서도 중요hyangtech... 2025. 2. 2. 게시판 DB 테이블 설계하기 목차요구사항 확인하기테이블 설계테이블 생성 스크립트마무리 오늘은 MariaDB로 게시판 테이블 설계에 대해서 이야기해보려고 합니다.웹개발을 하다 보면 게시판은 가장 기본적이면서도 중요한 기능 중 하나입니다.개인적으로 모든 웹 애플리케이션은 게시판의 확장형이라고 생각을 하는 개발자 중 하나입니다. 티스토리 공지사항 화면을 보면서 웹기획자가 스토리보드를 작성했다고 생각하면서 설계를 진행토록 하겠습니다. 요구사항 확인하기요구사항이 스토리보드로 문서화가 된 게 없기에, 예를 들어 티스토리 공지사항 화면을 보면서 요구사항을 확인해 보도록 하겠습니다. 공지사항 목록화면공지사항별 카테고리, 제목, 내용이 몇 글자씩 요약돼서 나옵니다.공지사항별 첨부된 이미지가 있는데, 본문에 포함된 이미지를 불러오도록 합니다. 공지사.. 2025. 1. 27. MariaDB 백업방식, 물리 백업과 논리 백업의 차이와 활용법 동적으로 웹사이트를 개발할 때 데이터는 대부분 데이터베이스 서버를 이용해 저장합니다.예를 들어 회원 가입을 하게 되면 회원의 개인정보, 가입정보는 데이터베이스에 데이터가 기록이 되는 거죠. 만약, 데이터베이스 서버에 장애가 발생하거나 랜섬웨어에 감염되거나 기타 등등의 사유로 데이터가 유실된다고 상상을 해보겠습니다.웹사이트의 운영을 할 수 없을 테고, 더 나아가 사업의 존폐가 달려있기도 합니다.정말 끔찍하죠... ㅎㄷㄷㄷ 그런 의미에서 데이터베이스를 운영하면서 데이터 손실을 방지하기 위해 백업은 필수적인 작업입니다.특히 MariaDB와 같은 데이터베이스 시스템에서 백업 전략을 올바르게 이해하고 적용하는 것이 중요합니다. 이번 글에는 MariaDB의 백업 방식 중 물리 백업(Physical Backup)과 .. 2025. 1. 25. MariaDB 계산된필드(Computed Column)이란? 데이터베이스를 설계하거나 데이터를 효율적으로 관리할 때, 반복적인 계산을 최소화하고 데이터를 직관적으로 표현할 수 있는 방법이 필요합니다.MariaDB의 계산된 필드(computed column)는 이런 요구를 충족시키는 기능 중 하나입니다.오늘은 계산된 필드의 개념, 사용법, 장단점, 그리고 활용 사례를 다루겠습니다. 계산된 필드란?계산된 필드는 테이블의 다른 열(Column) 값을 기반으로 계산된 결과를 저장하거나 조회되는 열입니다.계산된 필드는 두 가지 형태로 나뉩니다. 가상 컬럼(Virtual Column)계산된 값을 저장하지 않고 필요할 때 동적으로 계산합니다.가상 컬럼은 데이터가 물리적으로 저장되지 않고 동적으로 계산되기 때문에, 직접적으로 인덱스를 생성할 수 없습니다.계산이 자주 변경되거나 .. 2025. 1. 24. MariaDB PK 설정하지 않은 테이블 조회하기 MariaDB에서 테이블을 생성할 때 PK(Primary Key) 설정은 필수입니다. PK를 누락하게 되면 어떻게 될까요?중복 데이터 : PK가 없으면 중복된 데이터를 막을 방법이 없습니다. 동일한 데이터를 여러 번 삽입할 수 있어서 데이터 무결성이 깨질 가능성이 높습니다.인덱스 부재로 인한 성능 저하 : PK를 설정하면 자동으로 클러스터드 인덱스가 생성됩니다. 하지만 PK가 없으면 테이블에 기본 인덱스가 없어서 조회, 검색, 정렬 성능이 크게 떨어질 수 있습니다.레코드 식별 어려움 : PK는 각 레코드를 고유하게 식별할 수 있게 해 주는데, 이게 없으면 특정 레코드를 업데이트하거나 삭제할 때 여러 개의 레코드가 선택될 수 있습니다. 잘못된 데이터 변경이나 삭제로 이어질 가능성이 큽니다.레플리케이션 문제.. 2025. 1. 17. MariaDB 날짜 형태를 저장할때 varchar 와 date 차이점 데이터베이스에서 테이블을 설계할 때 년월일의 데이터가 들어가는 항목들이 있을 때, 보통 칼럼 타입을 어떻게 생성하셨나요?~ 개발한 지 얼마 안 됐을 때는 CHAR(8), VARCHAR(8)로 칼럼을 만들어서 20250116처럼 문자열로 들어가게 많이 했던 것 같습니다.이제 와서 왜 그랬을까, 생각해 보면 내부 프레임워크에서 날짜 관련은 문자열로 많이 조작하기도 했었고,기존에 테이블들이 다 CHAR(8)로 되어 있어서 관행에 따라 했던 것 같습니다. 개요MariaDB에서 날짜 데이터를 VARCHAR(8)로 설계하는 것과 DATE 타입으로 설계하는 것에는 저장 방식, 성능, 기능 지원 등 여러 면에서 차이가 있습니다.올바른 데이터 타입을 선택하는 것은 성능과 데이터 무결성 측면에서 매우 중요하니, 차이점을 .. 2025. 1. 16. MariaDB PK(Primary Key) 설계 가이드 PK란 데이터베이스 테이블에서 각 행을 고유하게 식별하기 위해 사용되는 열 또는 열 조합을 말한다.PK는 데이터 무결성을 유지하는 데 중요한 역할을 하며, 테이블 설계의 기본 요소 중 하나이다.MariaDB에서 테이블을 생성할 때 가장 중요한 건 뭘까? 바로 테이블의 Primary Key(이하 PK)를 설정하는 거다.오늘은 MariaDB에서 PK를 설계하는 가이드에 대해 작성해 보도록 하겠다. 1. PK 설계 원칙첫 번째, 고유하고 불편한 값 이용PK는 각 행을 고유하게 식별해야 하며, 변경되지 않는 값을 사용하는 것이 좋다.자주 변할 가능성이 있는 값(예: 이메일, 전화번호 등)은 PK로 부적합하다.두 번째, 단일 열(Single Column) PK 권장복합 키(여러 열을 조합한 PK)는 가능한 피하고.. 2025. 1. 12. MariaDB 계정 생성/삭제 및 권한 부여/조회/삭제 마리아디비(MariaDB) 시스템을 운영함에 있어 보안은 굉장히 중요하다.이런 보안을 강화하기 위해서는 필요한 계정만 발급하고, 계정별로 최소한의 권한을 부여하여 운영되어야 할 것이다.모든 개발자 및 모든 시스템에서 root로 접근할 순 없을 테니 말이다. 오늘은 마리아디비에서 사용자 계정과 권한을 관리하는 방법에 대해서 글을 적어보고자 한다. MariaDB 계정과 권한 관리 개요MariaDB에서 계정 및 권한 관리는 데이터베이스 보안과 운영 효율성을 위해 매우 중요한 역할을 한다. 이를 통해 데이터베이스 자원에 대한 접근을 제어하고, 각 사용자가 수행할 수 있는 작업을 제한하여 시스템의 무결성과 보안을 유지할 수 있다. 계정관리란?MariaDB 계정 관리는 데이터베이스에 접근할 수 있는 사용자(유.. 2025. 1. 10. MariaDB 서브쿼리(subquery)를 활용해서 데이터를 빠르게 조회하기 MariaDB의 서브쿼리(SubQuery)를 활용해서 데이터를 빠르게 조회해 보자 나는 개발자가 되기를 결심하고 나서 처음 접한 데이터베이스는 Microsoft SQL Server였다.대학교 때 공부할 당시에는 성능 위주의 쿼리를 작성하기보다는 경험 및 기능을 이해하기 위해 쿼리를 작성했었다. 하지만, 개발자로 첫 취업 후에는 데이터베이스의 쿼리 하나가 정말 중요하다고 느꼈다.쿼리 하나 때문에 시스템이 응답하지 않고, 최악에는 시스템 다운이 되기도 했었던 경험을 느꼈기 때문이다. 그중 선배들로부터 SQL Server에서는 서브쿼리(Sub Query)는 가급적 사용하지 말라고 하였다.실제로 서브쿼리보다는 조인 구문을 통해서 대부분 대체 가능했고, 쿼리 성능도 훨씬 좋았다. 그리고 나서 다음 회사에서는 .. 2025. 1. 9. 이전 1 2 다음 728x90 반응형