전체 글 210

DBeaver)데이터베이스 필요하면 빌려쓰는 것도 (AWS)

(변경사항)올해부터 RDS를 '퍼블릭 액세스 허용'으로 사용시 Public IPv4 사용요금 명목으로 월 3달러정도 추가요금이 발생해서한 번 만들어보고 안쓰면 삭제합시다.이외엔 Azure가면 MySQL 유동서버 이런 것들도 만들기 쉬운데 IPv4 이용요금은 없고아니면 Supabase 가면 무료로 PostgreSQL 500MB 호스팅받을 수 있습니다.    강의 맨 처음에 했던 것 처럼 MySQL을 컴퓨터에 설치하면여러분 컴퓨터에서 데이터베이스를 이용할 수 있습니다.근데 개발자 마케터 등 회사 내 많은 사람들이 이용하게 하고 싶으면데이터베이스를 직접 컴퓨터에 설치하는 것 보다 AWS, GCP 같은 클라우드서비스에서 하나 호스팅받는게 훨씬 안전합니다. - 자동 백업- 자동 스케일업- 모니터링 - 로그작성 -..

Mysql&DBeaver 2024.09.08

DBeaver)돈 다루다가 큰일나기 싫으면 Transaction

데이터베이스를 너무 믿으면 안됩니다.간혹가다 INSERT, UPDATE, DELETE가 안되고 실패하는 경우가 많은데 그럼 뭐 다시 시도하면 되긴 합니다만 동시에 여러 쿼리를 실행해야하는데 그 중에 하나만 실패하는 경우여러분들 서비스 운영에 심각한 문제가 발생하는 경우가 있습니다.  예를 들어 여러분이 은행 DB를 운영하는데A 고객 -> B 고객 이렇게 1000원을 보내야한다고 칩시다. 1. 그럼 A 고객의 잔고에서 -1000을 하고 2. B 고객의 잔고에 +1000을 하면 됩니다. UPDATE 문법을 2번 쓰면 되겠군요.  근데 1번은 성공했는데 2번은 실패하면 어떻게되죠? 은행 문닫아야합니다. 문닫기 싫으면 transaction이라는 기능을 사용합시다.       Transaction 기능 위와 같은..

Mysql&DBeaver 2024.09.08

DBeaver)진짜 검색기능은 Full Text search

여러분이 게시판 서비스를 운영한다고 칩시다.그래서 테이블 하나에 게시물의 글내용, 작성자, 발행일을 저장하기 시작했는데  검색기능이 필요해진겁니다. 검색기능은 어떻게 구현하죠?    LIKE 연산자 예전에 간단한 검색기능 만들고 싶으면 컬럼명 LIKE %단어% 하면 된다고 했습니다.짧은 문장 안에서 검색하는건 이걸로 충분하지만 1. % 기호를 맨 앞에 쓰면 인덱스활용을 못하고2. 문장이 좀 길거나 행이 너무 많아지면 LIKE 만으로는 매우 느리게 동작합니다.하지만 full text index를 만들어두면 걱정없습니다.       Full text search를 위한 index  긴 글도 데이터베이스의 컬럼 하나에 보관할 수 있습니다. text 데이터타입 쓰면 6만5천자를 보관할 수 있으니까요. 이렇게 긴..

Mysql&DBeaver 2024.09.08