본문 바로가기

학교 수업/데이터베이스

데이터베이스 11주차

Mysql Sysbench

내부 루아(lua) 스크립트를 사용

lua 스크립트 종류 확인

ls /usr/share/sysbench

각 파일 이름 별 도움말 보기

sysbench lua스크립트_이름 help

ex)
sysbench oltp_read_only help

lua 설정파일 보기

cat lua스크립트_이름

ex)
cat oltp_common.lua

sysbench 스키마 생성 & 계정 생성 & 권한부여

CREATE DATABASE Sysbench;
CREATE USER 'admin'@'%' identified by 'Sysbench123123@?';
GRANT ALL priviliges on Sysbench.* to admin;

터미널 창에 Sysbench를 위한 데이터 생성

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=admin 
--mysql-password=Sysbench123123@? --mysql-db=Sysbench --tables=10 
--table-size=100000 --threads=5 /usr/share/sysbench/oltp_read_only.lua prepare

터미널 창에서 Sysbench 실행

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=admin
--mysql-password=Sysbench123123@? --mysql-db=sysbench --tables=10 
--table-size=100000 --threads=5 --time=30 /usr/share/sysbench/oltp_read_only.lua run

Sysbench 데이터 삭제

sysbench --mysql-host=localhost --mysql-port=3306 --mysql-user=admin
--mysql-password=Sysbench123123@? --mysql-db=sysbench --tables=10 
--table-size=100000 --threads=5 /usr/share/sysbench/oltp_read_only.lua cleanup

데이터베이스 최적화의 핵심 = 조회 성능 개선

최적화를 위한 주요 고려사항

SQL문 최적화

- 풀스캔 범위 최소화 (키 생성, WHERE절 추가, SELECT 범위 최소화, 연산자 자제)

- 기본 인덱스 설정

- 함수 인덱스

- SQL 구문 세부

데이터베이스 구조

INNODB엔진

메모리 테이블

버퍼링 및 캐싱

'학교 수업 > 데이터베이스' 카테고리의 다른 글

데이터베이스 13주차  (0) 2022.06.12
데이터베이스 12주차  (0) 2022.06.12
데이터베이스 10주차  (0) 2022.06.03
데이터베이스 9주차  (0) 2022.05.30
데이터베이스(2) - DCL  (0) 2022.04.16