전체 글 22

[MySQL] mysqldump, mydumper를 이용한 데이터 마이그레이션

mysqldump 사용mysqldump -h database-1.xxxxxxx.us-east-2.rds.amazonaws.com -uadmin -p --single-transaction --databases db1 db2 db3 > backups/dump.sqlmysql 데이터베이스에 dump파일 넣기$ mysql --show-warnings 그런 다음 AWS RDS 복제본에서 SHOW SLAVE STATUSG를 실행 하고 온프레미스 서버에 복제하는 AWS RDS 마스터에 연결할 때 사용할 Master_Log_File 및 Exec_Master_Log_Pos를 기록해 둡니다 . CHANGE MASTER TO… MASTER_LOG_FILE=Master_Log_File, MASTER_LOG_POS=를 실행할..

DataBase 2024.07.15

[AWS] Aurora mySQL 3.0 업그레이드 - Cluster간 binlog replication (스냅샷 복원 및 Aurora clone 복제) , Blue-Green Deployment(블루-그린 배포) 작업 스크립트

업그레이드 전 사전 확인사항MySQL 8.0과 MySQL 5.7 변경 사항 중 개발자들이 숙지해야 할 변경 사항을 사전에 확인하여 공지한다.딱히 존재하지 않아 보인다. 기능 테스트를 통해 프로시저 및 jdbc를 통한 DB 동작 호환성 정도만 보면 될것 같다.중요한 확인사항아래는 AWS 공식 문서에서 가져옴.Character set 변경 : UTF8 → UTF8MB4 (utf8mb4_0900_ai_ci)예약 키워드 추가 : RANGE쿼리 캐시 제거구문 에러뷰, 루틴, 트리거 및 이벤트에는 SQL_CACHE, SQL_NO_CACHE, QUERY_CACHE와 같이 더 이상 사용되지 않는 SQL 구문이 없어야 합니다.FTS 인덱스가 없는 테이블에는 FTS_DOC_ID 열이 없어야 합니다.InnoDB 데이터 사전..

DataBase 2024.06.20

[AWS] DB에서 파라미터를 통한 RDS 인스턴스명 찾기

show variables like '%server%';Variable_name |Value |-------------------------------+------------------------------------+aurora_server_id |instance_name |  DB 접속 후, AWS를 쓸수 없을 경우간단한 명령어로 instance명을 조회가능하다​​show variables like '%db%';show variables like '%group%';show variables like '%rds%';이런 명령어로파라미터명을찾느라 고생했다​결국 인스턴스를 나..

DataBase 2024.04.25

MySQL InnoDB Architecture

mySQL 5.6 - data dictionary, 정합성을 위한 doublewrite buffer, dml 성능을 위한 change buffer, mvcc를 위한 undo log, innodb_file_per_table이 off면 시스템테이블스페이스에 table이 저장되는 구조 - ibdata 파일이 커지기 굉장히 쉬운 환경 - 특히 undo log가 커졌을때 DB상에서 트랜잭션이 종료되어도 OS의 파일 사이즈는 자동으로 반환되지 않기 때문에 장애 위험성이 있음 MySQL 5.7 Mysql 5.5 => 5.6으로 올라오면서 undo logs를 System tablespace 에서 별도로 둘 수 있게 됨 커진 undo log truncate 기능 - innodb_max_undo_log_size보다 커지면..

DataBase 2023.04.13

[Oracle] tablespace를 user로 해놓으면 안됨. 반드시 tablespace 지정해야한다! 오라클 TABLESPACE 변경하는 법, 오라클 인덱스 테이블스키마 변경법

테이블 스페이스 작동방식오라클 에서는 테이블스페이스라고 불리우는 테이블이 저장될 공간을 먼저 만들고 나서 테이블을 생성합니다. 테이블에 실질적으로 저장되는 장소라고 생각하시면 됩니다. 이러한 작동방식은 각각의 테이블을 테이블스페이스별로 나누어서 관리와 퍼포먼스의 향상을 가지고 옵니다. 테이블스페이스를 생성하면 정의된 용량만큼 미리 확보한 테이블스페이스가 생성되어지고 생성되어진 테이블스페이스에 테이블의 데이타가 저장됩니다. 이렇게 설정된 데이터 스페이스에 용량이 가득차면 오라클 서버가 죽습니다. 그러므로 관리를 잘해주어야합니다. 하지만 또 테이블 스페이스마다 용량을 너무나도 크게 잡아버리면 문제가 되는게 용량을 적게 차지하고 있다고해서 가변적으로 max용량이 줄어들지는 않습니다. 고로 또 용량낭비가 ..

DataBase 2023.02.02

[톰캣, 메이븐 에러] [Java]maven dependency 에러 maven update 해도 안되는경우 / WEB Dymamic Project 에 라이브러리 폴더 설정하기

만약 개발환경을 다 셋팅했는데도 불구하고.. 다른컴퓨터에서는 됐는데 죽어도 내 컴퓨터에서는 maven dependency를 못가져오는경우 maven repository 위치도 잘 잡아줘도(maven > User Settings) pom.xml 에러도 나고, spring 톰캣이 제대로 실행이 안될 경우 마지막으로 체킹할 것이 있다. 그전에 아래 게시글도 먼저 확인해 주길 바란다! 2023.01.05 - [개발/환경설정] - [Spring Tool Suite 4]Spring boot maven 이 다운로드가 안되는 경우 해결법, maven dependency 에러나는 경우 [Spring Tool Suite 4]Spring boot maven 이 다운로드가 안되는 경우 해결법, maven dependency ..

개발 2023.01.13

ORA-02270: no matching unique or primary key for this column-list / 이 열목록에 대해 일치하는 고유 또는 기본 키가 없습니다.

자식 테이블을 생성하는도중에 에러메시지를 반환하였다. ORA-02270: no matching unique or primary key for this column-list 이 열목록에 대해 일치하는 고유 또는 기본 키가 없습니다. 하아.. 이건또뭐지? 싶었는데 참조하고자하는 테이블에 기본키가 없을 때 발생하는 현상이란다. 그래서 ALTER TABLE SCHEMA.TV_SET_TABLE ADD CONSTRAINT TV_SET_UNIQUE UNIQUE(COL_ID); 이렇게 바꿔주니 한방에 해결! 저기서 TV_SET_TABLE은 참조하고자 하는 부모 테이블이고, COL_ID는 부모테이블의 PK 컬럼이다. 저 쿼리는 유니크 키를 걸어주는 쿼리문이다. 이렇게 하고 다시 자식테이블의 CREATE 문을 실행시켰더니..

개발 2023.01.11

자바스크립트 call by value, call by reference의 차이

인자를 전달하는 방식에는 크게 두가지가 있는데, call by value와 call by reference이다. call by value : 기본적으로 c언어에서 지원하는 방식이다 함수에서 값을 복사해서 전달하는 방식으로, 인자를 전달되는 변수를 함수의 매개변수에 복사한다. 원본 값을 바꿀 필요가 없는 경우에는 call by value 방식을 이용하면 된다. call by value 형식으로는 swap을 진행해도 매개변수가 바뀌는 것일뿐 원래 변수인 a, b의 값을 변하지않는다. call by reference : 함수에서 값을 전달하는 대신 주소값을 전달하는 방식을 call by reference라고 한다. 약은 복사 방식이 적용된다. 포인터 변수는 자신이 가리키는 변수값을 메모리 주소로 보고 해당 메..

개발 2023.01.05