MySQL/Class(38)
-
기초공부 - (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 -
기초공부 - (7) 매개변수 이름을 테이블명으로 사용한다면
# 테이블 또는 컬럼명을 지정할 때 사용하지 말아야 할 매개변수 이름을 사용하게 된다면 어떻게 될까요? # 이번에는 매개변수로 테이블 또는 컬럼명으로 지정하여 생성하였을 경우 무엇이 다른지 확인을 해보겠습니다. 1. 매개변수명 생성 - `(억음부호라고 하네요) 표시를 붙히자 정상적으로 생성 되었습니다. mysql> create table `alter` (a int); Query OK, 0 rows affected (0.11 sec) 2. 조회 억음부호(`)를 붙인다면 테이블명이든지, 컬럼명이든지 매개변수 이름을 사용할 수가 있습니다. 그러나 매개변수 이름을 사용하는 것은 혼란을 주기 때문에 사용을 하지 않는 것이 좋습니다.
2024.02.21 -
기초공부 - (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 -
기초공부 - (5) 더미 데이터 넣기
# 테스트를 하기 위해서 데이터를 임의로 넣어야하는 경우가 종종 있습니다. 많은 데이터를 필요로 할 때 손쉽게 더미 데이터를 넣을 수 있는 방법들을 알아보도록 하겠습니다. # 테이블 생성 mysql> create table temp_dummy (a int, b varchar(10)); Query OK, 0 rows affected (0.03 sec) 1. 다른 데이터 이용한 데이터 생성 mysql> insert into temp_dummy -> select @seq:=@seq+1, concat('test',@seq) -> from temp_isolation,(select @seq:=0) as seq -> ; Query OK, 6 rows affected, 2 warnings (0.00 sec) Recor..
2024.02.12