mysql(35)
-
기초공부 - (10) Innodb_large_prefix
# innodb_large_prefix는 인덱스를 생성할 수 있는 최대 크기 입니다. 설정값을 ON으로 하였을 경우 인덱스의 최대 크기는 3072 byte, OFF일 경우 767 byte의 값을 갖게 됩니다. 예를 들자면 a_col varchar(255) 라는 컬럼이 있다고 가정한다면, 아래와 같이 최대 크기의 byte를 저장할 수가 있습니다. utf8일 경우 : 255 * 3byte = 765 byte utf8mb4일 경우 : 255 * 4byte = 1020 byte - varchar(255) 라는 의미는 Oracle에서는 255 byte이지만, MySQL에서는 글자길이라서 byte로 변환 한 것입니다. 만약 innodb_large_prefix 의 설정값이 OFF라면 utf8mb4 캐릭터셋으로 255..
2024.03.25 -
기초공부 - (9) event
# MySQL의 event는 Oracle의 job이라고 보면 됩니다. 즉, DB 내에서의 스케쥴러 입니다. 오늘 event 에 대해서 등록하고 간단하게 확인 하는 방법을 다뤄보도록 하겠습니다. 1. 스케쥴러 설정 SQL> show variables where variable_name = 'event_scheduler'; SQL> show variables like 'event%'; # 설정 set global event_scheduler=on; 2. 프로시저 생성 - 여기 10건 입력하는 프로시져가 있습니다. 이 프로시져를 event에 등록하여 자동 처리가 되는지 확인을 해보겠습니다. mysql> delimiter $$ mysql> drop procedure if exists test.imp_tmp_ev..
2024.03.18 -
기초공부 - (8) 테이블 복구
# 사용자 실수 또는 어떤 알 수 없는 이유로 인해 테이블 또는 데이터가 삭제가 되는 경우가 있을 것입니다. 특정 테이블을 복구하는 방법을 해보도록 하겠습니다. 1. 준비사항 (1) 백업 파일 (2) dbsake (MySQL 5.x 버전만 해당) 2. 상황 만들기 (1) 테이블 생성 mysql> create table temp_mha2(a int); Query OK, 1 row affected (0.01 sec) mysql> insert into temp_mha2 values(1); Query OK, 1 row affected (0.00 sec) mysql> insert into temp_mha2 values(2); Query OK, 1 row affected (0.01 sec) mysql> insert..
2024.03.10 -
HA 구성 - (6) MHA : FailOver
# failover 발생 후 mha 데몬은 어떻게 될까? - 아주 기본적이고 무식한 질문 일 수도 있습니다. - 저의 생각은 mha는 별도 서버에서 모니터링을 하기 때문에 failover 처리 후에도 다음 장애를 대비해 계속 모니터링을 하지 않을까 라는 생각이 문득 들게 되었습니다. - 그래서 failover 발생 시켜 확인해 보았습니다. 1. mha 실행 /usr/local/bin/masterha_manager --conf=/etc/mha.cnf & 2. mha 상태 확인 (running) [mhauser@mha01 ~]$ /usr/local/bin/masterha_check_status --conf=/etc/mha.cnf mha (pid:276453) is running(0:PING_OK), mast..
2024.03.05 -
M2(Mac)용 VMWare로 가상화 만들기 - (6) In-place upgrade
# mysql의 basedir 을 교체하여 업그레이드 하는 방법이 있습니다. 이러한 방법을 In-place upgrade 라고 합니다. 저는 현재 버전이 8.0.33 이라, 상위 버전이 얼마 있지 않아, 8.0.35 버전으로 업그레이드를 진행하도록 하여, In-place upgrade가 무엇이지를 알아 보겠습니다. # 만약 5.5 버전에서 8.0으로 업그레이드를 해야 한다면, 5.5->5.6->5.7->8.0 방식으로 안정성을 위해 한 단계씩 업그레이드를 해야한다고 합니다. 그러나 5.5 에서 5.7로 바로 넘어갈 수도 있다는 것도 참고해 두시면 좋겠죠. 1. 현재 버전 2. 다운로드 - OS에 맞는 필요한 버전을 다운 받아주세요. 저는 Mac 버전인 aarc;h64 버전을 다운 받았습니다. https:..
2024.02.27 -
기초공부 - (6) limit & offset
# limit 와 offset 은 페이징 처리에 유용하게 사용됩니다. 1. limit # 1번째 로우부터 5개 까지만 출력 mysql> select * from temp_limit limit 5; +------+ | a | +------+ | 1 | | 2 | | 3 | | 4 | | 5 | +------+ 5 rows in set (0.00 sec) # 5번재 이후 로우부터 3개만 출력 mysql> select * from temp_limit limit 5,3; +------+ | a | +------+ | 6 | | 7 | | 8 | +------+ 3 rows in set (0.00 sec) 2. offset - limit는 단독으로 사용되지만 offset은 limit와 함께 사용해야합니다. # 3..
2024.02.19