본문 바로가기
반응형

CS/DataBase11

[DataBase] 외래키(Foreign Key)에 관한 고찰... 스타트업에 이직 후 업무 중 거의 대부분의 테이블에 외래키 설정이 안되어 있는 것을 알게 되었다. 대학교에서나 기존 직장에서는 왠만하면 외래키 설정이 되어 있었기 때문에 의아한 부분이였다.  다행히 직속 팀장님이 과거 데이터베이스 코어단을 직접 만드시던 디비 전문가셨기 때문에 바로 질문을 드렸고 답변을 해주셨다. 외래키란? 관계형 데이터베이스 관리 시스템(RDBMS)은 테이블 간의 관계를 정의하기 위해 외래키(foreign key)를 사용한다. 외래키는 한 테이블의 열이 다른 테이블의 기본 키(Primary Key)와 연결됨으로써 데이터 무결성을 보장하고, 테이블 간의 관계를 명확하게 정의하는 역할을 한다. 이는 데이터 중복을 방지하고 정합성을 유지하는데 중요한 요소로 작용한다.  과거에는 컴퓨팅 자원이.. 2025. 1. 6.
[DataBase] 관계형 데이터 베이스 관계형 데이터 베이스 (Relational Database) 관계형 데이터 베이스는 데이터를 테이블 형식으로 관리하는 데이터베이스 시스템이다. 각각의 테이블은 행과 열로 구성되며 행은 개별 데이터를, 열은 데이터의 속성을 나타낸다. 명칭을 정리하자면 - 테이블 (Table) : 데이터를 행과 열로 구성하여 저장하는 구조. 예를 들어 사용자의 정보를 저장하는 User 테이블이 있을 수 있음 - 행 (Row) : 테이블 내의 각 레코드(Record)를 나타낸다. 예를 들어 사용자 정보가 한 행이 된다. - 열 (Column) : 테이블 내의 데이터 속성을 나타낸다. 예를 들어 User 테이블에서 고객의 이름을 저장하는 name 열과 고객의 전화번호를 저장하는 phone 열이 있을 수 있다. -  기본 키 :.. 2024. 8. 6.
[MySQL] UPDATE 쿼리 시 에러코드 1175 처리 MySQL에서 제공하는 워크벤치를 설치하여 이용하는 경우에 update 시 이런 에러가 날 수 있다.  저 로그를 해석해보면 UPDATE에 대해서 안전 모드로 되어 있기 때문에 발생한 문제라고 한다. 따라서 안전모드(SAFE MODE)를 꺼주면 된다. 제일 간단한 방법은 옵션을 바꿔주는 명령어 하나만 샐행하면 된다. SET SQL_SAFE_UPDATES = 0;  그러면 update 쿼리가 실행된다. 2024. 6. 19.
[MySQL] AWS RDS MySQL Too many connections 에러 프로젝트를 하던 중에 갑자기 위 에러가 떴다. 즉 모든 연결 가능한 커넥션들이 다른 clients 들에 의해 쓰이고 있다는 것이고 max_connect_errors 동안 커넥션에 실패하면 이후의 모든 커넥션이 블로킹이 되버린다. 일단 왜 커넥션을 확인해보니 현재 59개가 연결되어 있고 show variables like '%max_connections%'; 명령어를 통해 max_connections를 보니 60이였다. 참고로 이 RDS는 db.t3.micro이고 기본 max_connections는 66이라고 한다. 왜 커넥션 수가 증가 했는지도 파악하긴 해야겠지만 일단 당장 에러가 났으니 커넥션 수를 늘리려고 시도했다. 방법은 두가지인데 RDS 인스턴스 스펙을 db.t3.small로 올리던가(이러면 15.. 2023. 10. 5.
반응형