ONLINE CLASS

MARIADB

COURSE FOCUS

이 강의에서 배우는 핵심 실무

MariaDB의 설치와 사용자 권한 설정에서 출발해 쿼리가 실행되는 절차와 실행 계획을 읽는 방법을 공부합니다. Extra 정보와 인덱스 머지, 멀티 레인지 리드 및 테이블 조인을 살펴보며 최적화 과정에서 확인할 지점을 익힙니다. XtraDB 리두로그와 전문 검색 인덱스 등 스토리지 엔진 기능도 다루어 서버 사용과 성능 분석을 함께 학습합니다.

?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

◆
기업이 선택한 신뢰 강의

검증된 커리큘럼과 전문 강사진으로 높은 만족도를 제공합니다.

자세히 보기  >
♥
수강료 일부는 사회환원에 사용됩니다.

작은 나눔이 더 나은 내일을 만듭니다.

자세히 보기  >
REAL REVIEW

수강생 리얼후기!

실제 수강생의 학습 경험을 확인해 보세요.

수강후기를 불러오는 중입니다.

RECENT Q&A

최근 수강질문

최근 등록된 수강질문을 작성순서대로 확인해 보세요.

ALZIO DEEP GUIDE

MariaDB을 더 깊게 이해하기

20강은 설치·SQL과 함께 EXPLAIN·인덱스·조인 최적화·엔진·버퍼·redo·백업에 큰 비중을 둡니다. 공개 설명의 MariaDB 10.0·XtraDB·XtraBackup은 당시 환경으로 구분하고 현행 서버의 동일 구성으로 소개하지 않습니다.

공식 기술정보 확인20강 커리큘럼 연결2026 현재 기술정보

MARIADB · 20강 · 19시간 46분

01

MariaDB은 무엇인가

MariaDB는 SQL과 관계형 테이블을 중심으로 데이터를 관리하는 서버 제품입니다. 조회뿐 아니라 동시 접근·권한·저장 엔진·복구 조건을 함께 다룹니다. MySQL과 관련 계보를 갖지만 모든 버전·엔진·플러그인·복제 환경이 그대로 호환되는 동일 제품은 아닙니다.

02

관련 플랫폼과 개발도구의 관계

클라이언트와 응용프로그램은 질의를 서버로 전달하고 서버는 최적화 과정과 저장 엔진을 통해 처리합니다. MariaDB Server·커넥터·백업 도구·플러그인은 각각 사용 조건이 있습니다. 강좌에 등장하는 엔진을 현행 설치의 기본 구성으로 단정하지 않습니다.

03

MariaDB의 핵심 기능

기술 자체의 기능과 이 강좌의 직접 학습 범위는 다릅니다. 아래 연결 표시는 저장된 공개 커리큘럼에 근거합니다.

SQL·구조·권한

자료의 관계와 접근 범위를 설정합니다. 여러 사용자가 같은 자료를 다루는 업무에서 중요합니다. 관리자 권한과 응용프로그램의 필요한 권한을 같은 범위로 두지 않습니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인

실행 계획

조인 순서·접근 경로·예상 행 수를 읽습니다. 느린 질의가 어디에서 많은 자료를 다루는지 판단하는 데 필요합니다. 추정 계획과 실제 측정을 구분해야 결론을 과장하지 않습니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인

인덱스·최적화

질의 조건과 정렬·조인의 접근 방식을 연결합니다. 비용과 자료 분포를 함께 봐야 합니다. 힌트 하나를 모든 질의의 성능 해결책으로 쓰지 않습니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인

저장 엔진·버퍼

자료의 보관과 캐시·동시성·로그 처리 조건을 결정합니다. 조회와 갱신이 섞인 업무의 동작을 이해하는 기반입니다. 서로 다른 엔진의 지원 기능은 버전별로 확인해야 합니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인

특수 엔진·연결

검색·외부 자료·특수 용도에 맞는 저장과 연결을 제공합니다. 목적에 따라 선택하는 확장 영역입니다. 플러그인의 존재가 모든 설치에서 사용 가능하다는 뜻은 아닙니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인

백업·복원

물리·논리 보관과 준비·복원 절차를 구분합니다. 장애나 변경 이후 복구 경로를 설계할 때 필요합니다. 파일 복사와 준비된 백업의 복원은 같은 작업이 아닙니다.

기술 참고 · 직접 학습 여부는 아래 실제 회차 연결표에서 확인
04

이 과정의 실제 작업 흐름

1~3강은 설치·사용자·테이블 변경·잠금·최적화·통계와 MariaDB 10.0 관련 내용을 다룹니다. 4~7강은 EXPLAIN의 여러 항목을 차례로 읽고 8~13강은 힌트·검색·정렬·중복·인덱스·조인·세미조인·하위 질의와 엔진을 연결합니다.

14~18강은 InnoDB·XtraDB의 버퍼·flush·redo·페이지·특수 엔진·파티션 등을 다룹니다. 19강은 공개 표기의 XtraBackup 관련 백업·스트리밍·압축·증분·부분 백업이고 20강은 Linux 사용 맥락입니다. 후반의 엔진·도구 범위를 현행 모든 설치의 기본 구성으로 바꾸지 않습니다.

  1. 서버·테이블
  2. 계획 읽기
  3. 인덱스·조인
  4. 엔진·버퍼·로그
  5. 특수 엔진
  6. 백업·Linux 맥락
05

핵심 구조를 이해하는 방법

질의 최적화는 결과가 같더라도 접근 경로와 처리 비용이 다를 수 있다는 문제를 다룹니다. EXPLAIN의 rows는 추정치이고 실제 실행을 수행하는 ANALYZE와 구분합니다. 버퍼와 redo log·디스크 반영은 서로 다른 층이므로 메모리에 자료가 있다는 사실만으로 영속성과 복구가 보장되지는 않습니다.

06

실무 적용과 결과 확인

4~13강을 복습할 때 질의 조건·선택된 키·추정 행 수·조인 단계를 함께 기록해 보세요. 힌트 사용 전후를 비교하는 것은 추가 복습 점검이며 실제 운영 질의 실행을 이 안내에서 수행하지 않습니다. 계획의 항목 하나만으로 전체 성능을 평가하지 않습니다.

14~19강은 버퍼 상태·로그 처리·디스크 반영·백업 준비를 역할별로 나누어 읽으세요. 캐시·로그·복원은 다른 문제입니다. 복원 실습이나 특정 운영 시스템의 장애 대응 전체가 확인된 수강 범위라고 확대하지 않습니다.

07

이 강좌에서 집중할 전문주제

전문 축은 EXPLAIN의 세부 항목과 최적화 전략입니다. 4~7강의 id·select_type·table·type·possible_keys·key_len·ref·rows·Extra를 8~13강의 힌트·인덱스·조인과 연결해 보세요. 이름을 외우는 것보다 자료 접근 경로와 예상 처리량을 함께 읽는 데 의미가 있습니다.

두 번째 축은 엔진 내부와 백업의 연결입니다. 14~16강의 버퍼·flush·redo·페이지와 19강의 백업을 구분하면 자료 변경의 처리와 보관·복원의 차이를 이해할 수 있습니다. XtraDB·Cassandra 등 공개 표기의 확장 항목을 현행 권장 기본 엔진으로 제시하지 않습니다.

08

현재 기술과 강좌 환경의 관계

3강 공개 설명에 MariaDB 10.0이 명시됩니다. 전체 촬영 환경의 세부 패치 번호는 확정하지 않으며 이 구형 환경을 현재 버전으로 소개하지 않습니다. 현행 MariaDB 자체를 단종 제품으로 분류하지도 않습니다.

공식 현행 문서의 MariaDB Backup은 별도 도구와 준비·복원 조건을 갖습니다. 19강의 XtraBackup 당시 내용과 같은 이름·호환성으로 단정하지 않습니다. 현재 최신 버전 번호·모든 엔진의 지원 상태는 추측하지 않고 실제 사용할 릴리스와 플러그인 조건을 확인하도록 안내합니다.

09

목적에 맞는 기술 선택과 비교

아래 비교는 목적과 작업 구조를 선택하기 위한 안내입니다. 다른 기술 전체를 본 강좌에서 가르친다는 뜻은 아닙니다.

목적에 맞는 기술 선택과 비교
선택지작업 접근이 강좌와의 관계
MariaDB실행 계획·엔진·백업의 서버 동작본 강좌 전문 축
MySQL관련 SQL·엔진 개념을 가진 별도 제품버전·도구 호환성 확인
SQL Server다른 서버·도구·SQL 방언과 운영 구성업무 환경에 따라 선택
10

기술개념과 알지오 커리큘럼 연결

회차는 공개 커리큘럼의 실제 순서입니다. 실습 후 응용 제안과 현재 기술 참고정보를 강의에서 제공하는 실습으로 해석하지 않습니다.

기술개념과 알지오 커리큘럼 연결
기능·개념무엇인가실무 의미강좌 회차학습 상태
서버·테이블·통계설치·권한·구조·최적화 통계환경과 자료 분포1·2·3강강좌에서 직접 학습
EXPLAIN 세부 항목질의 계획의 구성추정 접근 경로 읽기4·5·6·7강강좌에서 직접 학습
힌트·인덱스·정렬검색과 비용 선택상황별 계획 비교8·9·10·11강강좌에서 직접 학습
조인·하위 질의·엔진관계 처리와 저장 방식조인 전략의 조건12·13강강좌에서 직접 학습
버퍼·flush·redo·페이지엔진 내부 처리캐시·로그·영속성 구분14·15·16강강좌에서 직접 학습
특수 엔진·파티션·자료 기능확장 기능과 구성당시 지원 조건과 현재 분리17·18강강좌에서 직접 학습
백업 도구와 전략공개 표기의 XtraBackup 관련 내용현재 도구와 준비·복원 구분19강강좌에서 직접 학습
Linux 사용 맥락서버 환경의 사용세부 범위는 공개 설명 기준20강강좌에서 직접 학습
11

처음 배울 때 자주 생기는 오해

MySQL과 완전히 같은 서버인가?

관련 계보를 갖지만 별도 제품입니다. 버전·엔진·도구별 차이를 확인해야 합니다. 1~3강의 환경을 현재 MySQL 설치와 동일하다고 보지 않습니다.

EXPLAIN의 rows는 실제 행 수인가?

기본 계획의 추정 정보입니다. 실제 실행을 수행하는 ANALYZE와 구분합니다. 4~7강에서 추정과 측정을 같은 결과로 적지 않습니다.

힌트를 넣으면 항상 빨라지나?

자료 분포와 질의 조건에 따라 다릅니다. 다른 조건에서는 더 나쁜 경로를 고를 수도 있습니다. 8~13강을 질의와 계획의 비교로 복습하세요.

XtraDB가 모든 현재 설치의 기본인가?

강좌 당시 엔진 맥락과 현재 구성을 구분해야 합니다. 버전별 선택과 지원 조건이 있습니다. 13~16강의 이름을 현행 기본값으로 바꾸지 않습니다.

버퍼에 있으면 복구가 보장되나?

캐시와 영속성·복구는 다릅니다. 로그와 디스크 반영 조건도 살펴야 합니다. 14~16강에서 메모리 상태와 보관 상태를 나누어 읽으세요.

XtraBackup과 MariaDB Backup을 같게 쓰면 되나?

도구와 호환 조건을 확인해야 합니다. 백업에는 준비·복원 절차가 있습니다. 19강의 당시 사용법을 현재 서버에 무조건 적용하지 않습니다.

12

다음 학습 방향

MYSQL 기초+실무

MySQL의 SQL·형식·트랜잭션·권한 기초와 대조합니다.

자료 보기 →

MSSQL 기초+실무

SQL Server의 서버 환경과 자료 처리 방식으로 비교를 넓힙니다.

자료 보기 →

MariaDB 관련 과정 비교

입문·실무·심화 과정의 실제 커리큘럼을 목적에 맞게 비교합니다.

자료 보기 →

실습과 복습 계획

새 환경에서 예제를 확인하고 학습 계획을 세우는 방법을 살펴봅니다.

자료 보기 →

기술정보는 MariaDB 공식 프로젝트의 공식자료를 기준으로 검토했으며, 강좌 범위는 MARIADB의 공개 커리큘럼과 구분했습니다.

공식 기술정보 확인일: 2026-10-05 · 강좌 업데이트일을 의미하지 않습니다.

MARIADB MARIADB
  • MARIADB

  • 강의구성
  • (20강) 전체 : 19시간 46분|평균 : 59분17초
  • 이용기간/강사
  • 1개월2개월
    알지오 R&D [IT] ▶ 프로필 보기
  • 증빙가능
  • 수료증, 수강증, 학습진도
  • 수강료
  • 330,000원할인165,000원
?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q 초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

  • 01.57분 MariaDB 시작
    설치, 기동 및 쿼리 실행, 서버 시작 및 종료, 서버 로그인, 데이터베이스 및 사용자 생성, 전역권한, 데이터베이스 레벨 권한, 테이블 레벨 권한, 스토어드 프로그램 레벨 권한
    마리아DB란, 간단한 설치과정, 시작과 종료 방법, --host, 데이터베이스 및 사용자 생성, 스토어드 프로그램 레벨 권한, 특정 사용자에게 권한 부여, 불필요한 권한 삭제, flush privileges
  • 02.55분 기동 및 쿼리 실행과 실행 계획 분석
    테이블 생성 및 변경, 오프라인, 온라인 스키마 변경, Lock, Algorithm, Inplace 사용시 작업 절차, 온라인 스키마 변경 작업별 처리 방식, 테이블 삭제, 데이터 조작, 쿼리 실행 절차, 옵티마이저, 통계정보
    데이블 생성 및 변경, 여러개의 스키마 변경 문장 처리, 개선 계획에 포함되지 않은 온라인 스키마 변경, 외래키 생성 및 주의사항, 디스크에서 물리적 데이터 파일 삭제, 쿼리 실행 절차(sql파싱 단계), 통계정보 수집 경우, innodb_stats_sample_pages
  • 03.58분 통계정보
    MariaDB 10.0 통계정보, 히스토그램 통계정보, 조인 옵티마이저 옵션
    MariaDB 10.0 통계정보 살펴보기, 통합된 통계정보를 관리할 수 있는 기능 제공, 기본값 never로 설정할 경우, 히스토그램이 없는 경우, 히스토그램 자세히 살펴보기, select문장 보기, optimizer_search_depth, select문 날리기, 통계정보를 볼 때 주의할 점
  • 04.50분 실행 계획 분석 part1
    EXPLAIN, id, select_type, table
    실행 계획 분석을 위해 통계정보 수집, Explain명령, derived로 표시, scalar sub query / row sub query, subquery와 dependent subquery의 캐시방법 알아보기, from절이 없어도 쿼리 실행, index_merge를 제외한 나머지 접근방법은 하나의 index만 사용
  • 05.56분 실행 계획 분석 part2
    Type의 종류, possible_keys, key, key_len, ref, rows
    tb_dual에서 select, subquery 확인, 전문 검색용 인덱스, index_merge접근 방법의 특징, 테스트 했었던 쿼리 확인, key_len에 값이 4가 출력된 이유, rows 컬럼 확인, 실행계획 그림 확인
  • 06.58분 실행 계획 분석 part3
    Extra 칼럼에서 쓸 수 있는 문장을 살펴봅니다.
    Full scan on NULL key, where조건, min이나 max의 결과는 null값을 반영, Range checked for each record(index map:N), Scanned N databases, on절과 where절 확인, 클러스터링 인덱스 보조인덱스:+프라이머리키값, salaries CREATE TABLE 문장 확인, where절 인덱스 사용 가능
  • 07.57분 실행 계획 분석 part4
    Extra 칼럼에서 쓸 수 있는 문장을 살펴봅니다.(2)
    Using join buffer, Batched Key Access, 임시테이블을 사용했을 경우 표시, Extra에 나오는 Using where, 테이블의 모든 레코드 삭제, Materialize, 랜덤데이터 파일 읽기의 횟수 줄이기, Filtered col추가, Partition pruning, to_days함수
  • 08.56분 옵티마이저 힌트와 실행 계획 분석 시 주의사항
    straight_join, use index, force index, ignore index, sql_cache, sql_no_cache
    옵티마이저 힌트, 힌트의 사용법, STRAIGHT_JOIN, 인덱스 힌트, 0(off), 1(on), 2(demand), 첫번째 예제 쿼리를 두번 실행, Key 칼럼의 주의 대상, 쿼리의 실행 계획이 좋은 경우, Using index for group-by
  • 09.1시간 1분 최적화 part1
    풀 테이블 스캔, Order by 처리, Group by 처리
    최적화 단위작업 살펴보기, 풀테이블스캔 사용법 설명, Order by 설명(Using Filesort), Oom-Killer 설명, Order by 유.무 예제확인하기, Streaming 예제확인, 상태변수 설명, Loose 인덱스 스캔이용 Group by설명, 임시테이블을 사용하는 Group by설명
  • 10.56분 최적화 part2
    Distinct 처리, 임시 테이블, 인덱스 컨디션 푸시다운, 멀티 레인지 리드
    Disrinct처리, Select Distinct 설명, count함수 추가, 임시테이블이 디스크에 생성되는 경우, Intrnal Temporary Table의 주의사항, Index내용 살펴보기, RowID 기준정렬방법 확인, Key와 RowID 모두 정렬 설명, Key-ordered Rowid-ordered scan 확인
  • 11.54분 최적화 part3
    멀티 레인지 리드, 인덱스 머지, 테이블 조인
    Multi range read 최적화와 정렬, 멀티레인지리드 최적화 주의사항, 인덱스머지(Index merge)알아보기, 중복제거 우선순위 Q설명, Outer join 사용예제 보기, Join 테이블 비교예제, Incremental 방식 설명, Outer Join 블록알고리즘 설정방법
  • 12.55분 최적화 part4
    테이블 조인, 조인 알고리즘, 서브 쿼리, 세미조인
    조인 버퍼 설정, join_cache_space_limit 설명, 예제안에 join에 대한 설명, Employees 테이블에 해당조건 검색, 아우터조인 설명 개선점 설명, 블록 인덱스 조인은 멀티레인지 이용, 세미조인 서브쿼리 최적화, FirstMatch 최적화, Fromdate 칼럼에 index생
  • 13.53분 최적화 part5 & 스토리지 엔진 part1
    세미조인 서브쿼리 최적화, LooseScan 최저과, Duplicate Weedout 최적화, 세미조인이 아닌 서브쿼리 최적화, 서브쿼리 캐시, Aria, XtraDB, InnoDB
    LooseScan 최적화, 세미조인이 아닌 서브쿼리 최적화, In-to-EXISTS 최적화, 캐시의 히트율이 적정수준(0.2<=HitRatio<0.7), Aria_sort_buffer_size, My.ini 초기파일 확인, Multi threaded purge, Mysqldump,SELECT INTO..OUTFILE
  • 14.52분 스토리지 엔진 part2
    InnoDB 스토리지 엔진, 더티 페이지 플러시, InnoDB 버퍼 풀과 리두 로그의 관계
    테이블 스페이스 복사, *ibd만 가져오고나 복구가능, Innodb_undo_directory 설명, Innodb_auto_lru_dump 사용, Innodb_buffer_pool_load_new, 데드락 이력, Innodb_old_blocks_pct 변수변경, Innodb_io_capacity
  • 15.1시간 1분 스토리지 엔진 part3
    더티 페이지 플러시, 페이지 클리너, 어탭티브 플러시, 버퍼 풀 성능 개선, 원자 단위의 쓰기, 확장된 InnoDB 엔진 상태 출력
    MariaDB5.5 XtraDB의 더티플러시, Innodb_adaptib_flushing_method설정, Innodb_checkpoint_age_target설정, 플러시할 더티페이지수를 구하는 공식, MariaDB 10.0 XtraDB의 더티플러시, Numa_interleave, Innodb_adaptive_hesh_index_partitions, 세마포어 관련 상태변수, 트랜잭션 관련 상태변수
  • 16.55분 스토리지 엔진 part4
    XtraDB 리두로그 아카이빙, 변경된 페이지 트랙킹, 전문 검색 인덱스 추가, 전문 검색 인덱스를 위한 테이블 스페이스, Memcached 플러그인, 카산드라 스토리지 엔진, CONNECT 스토리지 엔진
    XtraDB 리두로그 아카이빙, 특수 비트맵파일로 기록, Ibd 파일 생성확인, Innodb_ft_cofig, innodb_ft_default_stopword, Create table stopword_foe_emp 테이블생성, Innodb 스토리지 엔진 접근성, CQL제약사항, CONNECT BY이용, 운영체제의 디렉터리 연결
  • 17.58분 스토리지 엔진 part5 & 기타 기능 part1
    시퀀스 스토리지 엔진, Mroonga 전문 검색 스토리지 엔진, 성능 향상, 스레드 풀, 관리 및 진단
    시퀀스 스토리지엔진, 시퀀스스토리지엔진 이용, Front-end 인텍스, back-end 인덱스, MariaDB 스레드풀의 구조, Extra_max_connections 시스템 설정변수, Log_slow_verbosity 시스템변수, 사용자나 쿼리 실행 강제종료(Kill), 프로시져에서 Get diagnostics 사용 예제
  • 18.53분 기타 기능 part2
    개발 생산성, 정규 표현식 기능 확장, 가상 칼럼, 동적 칼럼, 명시적 파티션 지정, 파티션 테이블 스페이스 교체, 바이너리 로그 원격 백업
    개발 생산성, Limit rows examined, Delete..returning, Regexp_replace(문자열, 정규표현식,대체문자열), 동적(dynamic)칼럼, 파티션, 출력결과 확인, Mysqlbinlog 필요로하는 옵션, To-last-log 옵션
  • 19.2시간 14분 기타 기능 part3
    XtraBackop 원리, XtraBackop 기능, 스트리밍 백업, 압축, 암호화, 슬레이브 백업, 병렬 백업, 백업 속도 조절, 개별 테이블 복구, PIT 복구, 증분 백업, 부분 백업, 컴팩트 백업, 스트리밍 백업, 암호화 백업
    XtraBackup, Completed ok!, 복사된내용, 개별 테이블 복구, PIT(point in time)복구 사용방법, --redo-only 옵션, 데이터베이스 단위 백업, 암호화 백업 사용시 필요한것, 사용자트레픽이 B(Slave) 로 유입, 새 슬레이브 MariaDB서버에 백업된 데이터복구, GTID까지 대기, GTID 컨시스턴트 모드활성화시 제약사항, 크래시 세이프(crash sae) 슬레이브, 그 외의 기타 기능 개선, 바이너리 로그 그룹 커밋
  • 20.47분 리눅스에서의 MariaDB 사용
    리눅스에서의 MariaDB 사용방법에 대해서 알아봅니다.
    리눅스에서 MariaDB 사용방법, Vi/etc/my.cnf, Show datebases;, Explain 실행계획보기, Find data, 스키마생성, Handlersocket과 Memcached plugin 장.단점 확인

강의목록 다운로드                        1:1 강의 질문&답변






도움이 필요하신가요?
💬
알지오 학습·수강 도우미
운영진이 확인한 안내를 자세히 보고, 필요하면 바로 상담하세요.
상담 상태 확인 중