묻고 답해요
137만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨Real MySQL 시즌 1 - Part 2
테이블이 1:N 구조에서 N쪽 테이블에 유니크 제약조건에 의한 오류발생 회피 방법이 뭘까요?
안녕하세요. 질문 드립니다.1:N 구조의 웹 어플리케이션입니다.종종 동일한 insert 요청이 짧은 시간에 발생 합니다.insert는 N(child) 테이블에 되어야 합니다.해당 테이블에는 유니크 제약조건이 걸려있어서 중복 데이터는 절대로 insert 되지 않지만 동일 요청에 의해서 DeadLock이 발생하고 있습니다.(물론 빈도는 많지 않습니다.)실행 순서는 이렇게 됩니다.Parent테이블의 id를 이용해서 join 쿼리로 select 합니다. (child 테이블 존재 여부 확인)child 테이블에 데이터가 존재한다면 수량 증가, 없다면 insert를 합니다.이 때 데이터가 없는 상황에서 select-insert 요청이 서로다른 tx에서 발생할 때 데드락이 발생합니다.이 경우 어떤 전략으로 회피할 수 있을까요?유니크 제약 조건에 의해서 중복 데이터가 생기는건 방지되고 있고, 데드락 자체가 하루 한 건 정도 발생하고 있어서 시스템 운영상에서는 문제가 없으나 어떤 해결책이 있을지 궁금합니다.
-
미해결[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
SequelizeEagerLoadingError: User is not associated to Post!
안녕하세요 제로초님, User 테이블이랑 Post테이블이 관계설정이 안되어있다는 에러가 떠서 문의드립니다. 분명 시퀄라이즈 관계설정하는 부분 빠짐없이 모두 따라했는데 이런 오류가 뜹니다.
-
미해결입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
뷰 개발 - 테이블페이지 (삽입 Script)부분
안녕하세요. fragment-script-util.html을 작성하고 강의에서 보여주신것처럼 addDetail('detail')을 동작하는 버튼을 누르면 내용이 비어있는채로 아래에 창이 생기질 않네요. 콘솔에서 확인해보면TypeError: Cannot read properties of null (reading 'detail') at addDetail (experience:775:65) at HTMLButtonElement.onclick (experience:366:105)이 나타나고 콘솔로그를 찍어보면 데이터테이블 초기화가 안되고 있는것같습니다. 어떤부분을 점검해봐야할까요
-
미해결Real MySQL 시즌 1 - Part 1
LATEAL 사용 관련 질문
안녕하세요. 현재 강의를 수강중인 학생입니다. RATERAL 사용 관련되어 질문이 있어 글 남겨드립니다. 잘못된 지식일 수 있지만, 서브쿼리를 사용하면 DBMS에서 지원하는 최적화를 지원받지 못해 서브쿼리를 사용하는 것보다는 최대한 조인을 사용하거나 차라리 쿼리를 나눠서 사용하는 것을 권장한다고 알고 있었습니다. 그런데 해당 강의를 수강하고 LATERAL의 사용을 적극 권장하셔서 제가 알고 있는 지식과 충돌하는 것 같습니다 혹시 어떤 경우에 LATERAL을 사용 하는 것이 좋을 지 여쭤보고자 글을 작성합니다.감사합니다.
-
미해결처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지] (업데이트)
지마켓파일 DBeaver(디비버) 에서 실행하는 방법
안녕하세요 🙂 DBeaver(디비버) 툴에서 실습을 진행하고 싶은데 ㅜㅜ제공해주신 [ 지마켓 SQL ] 파일 실행시키는 방법에 대해 도움 받을 수 있을까요?감사합니다.
-
미해결Real MySQL 시즌 1 - Part 1
수업과는 상관 없을 수 있는 질문인데요..
안녕 하세요..이런 질문을 드려도 될까 모르겠습니다만..현재 운영 되는 사이트는 ms-sql 로 bak 파일 기준 약 50기가 정도 됩니다.사이트를 개편 하려고 하고 있는데요..mysql 로 바꾸는 것을 논의 중 입니다.처음 부터 데이터가 50기가 가 입력 되는 것은 아니고..운영 하면서 데이터가 늘어날텐데.. 경험 상 50기가 정도 될 것으로 예상 됩니다.특정 테이블은 몇천만건의 데이터가 입력 될 수도 있는데요..mysql 이나 mariadb 로 이 정도의 데이터베이스를 운영 할 수 있을지..사이트 속도 에는 큰 문제가 없을지..조언 부탁 드립니다.감사 합니다.
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
시작도 하기 전에 계속 오류가 납니다.
자바 11버전을 깔았는데 계속 자바 1.8버전으로 뜨네요... 그래서 다시 11버전으로 바꿔서 실행을 해보았더니이런 에러가 뜹니다.. 해결방법이 있을까요ㅠ
-
미해결Real MySQL 시즌 1 - Part 2
복합 인덱스의 컬럼중 선행 컬럼을 조건에서 누락해도 인덱스가 사용될 수도 있나요?
안녕하세요. 이제 2회차로 다시 잘 보고 있는 수강생입니다 🙂 Ep15를 보던 중 복합 인덱스의 컬럼들 중 선행컬럼을 조건에서 누락할 경우 풀 스캔이 될 수 있다고해서 직접 쿼리를 실행해봤습니다. 환경: MySQL 8.2.0쿼리explain select * from users where joined_at > '2022-07-24 00:00:00';결과8.0.21버전부터는 인덱스 스킵 스캔을 통해 선행 컬럼이 조건에 포함되지 않아도 후속 컬럼을 이용해 인덱스 일부 활용이 가능하다고 하는데 이 때문에 위와 같은 실행 계획나 나온걸까요?
-
미해결처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지] (업데이트)
섹션 1, 2의 강의자료를 못찾겠어요
[꼭 들어주세요] 강의 자료 다운로드 관련다운로드를 했는데 압축파일안에 강의자료가 없는 것 같아요 ㅠㅎ
-
해결됨Real MySQL 시즌 1 - Part 2
SKIP LOCKED 부분에서 INNER JOIN이 아니고 LEFT JOIN이 걸릴수 있다면
예제에서는 WHERE 절 때문에 LEFT JOIN이 INNER JOIN으로 최적화되는 것으로 알고 있지만 만약에 LEFT JOIN으로 걸릴 수 있는 쿼리라면 SKIP LOCKED 의 잠금 경합의 결과가 달라질 수도 있나요?
-
미해결[Rookiss 켠김에 출시까지] 유니티 캐주얼 모바일 MMORPG (M2)
강의시 스크립트 추가될 때마다 해야하는 작업
안녕하세요 루키스님의 이번강의가 처음인 수강생입니다.클라이언트 작업만 하다가 서버 작업은 처음인지라chat gpt 돌려가며 1주차 서버 스크립트에 주석으로 공부한 내용을 달아놨고앞으로 추가되는 스크립트들은 직접 복사해서 붙여넣고 또 주석으로 공부한 내용을 넣어놓을 생각이었는데매번 바뀌는 강의자료에 제가 공부했던 내용을 덧붙일 자신이 없습니다...앞으로도 추가되는 스크립트를 직접 추가하게 될때, 해야 하는 절차를 알 수 있을까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
@PostMapping("/book")같은 걸 html에 연결하는 건 어떻게 하는 건가요
"book", "user"이런 거 연결하는 부분은 어떻게 하는 건지 항상 궁금했습니다ㅠㅠ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
컴퓨터를 재시작 했더니 작동을 안 하네요
인텔리제이로 실행했을때도 서버내부 오류라 뜨고 aws로 구동했을 때도 그냥 서버 연결이 안 됩니다ㅠㅠ aws에 확인해보면 git,sql,java다 설치되어있었고 44강부터 차근차근 다시 해봐도 똑같네요 왜 그럴까요 ㅠㅠ
-
해결됨Real MySQL 시즌 1 - Part 1
강의 자료는 따로 제공되지 않나요??
질문 내용은 제목 그대로 입니다!
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
한번만 도와주세
commit and push 하면 저는 자꾸 이게 뜨는데 구글링 해도 잘안되는데 혹시 방법이있을까요?
-
미해결처음하는 SQL과 데이터베이스(MySQL) 부트캠프 [입문부터 활용까지] (업데이트)
회사노트북 보안
안녕하세요 회사노트북에 My SQL과 Anaconda (주피터노트북)을 다운받아서 연습해보려고 하는데 혹시 이렇게 사용해도 따로 자료 유출이나 보안적인 부분에서 이슈가 될만한 사항은 없겠죠? 주피터 노트북을 다운받고나니 회사 노트북에 One drive에 저장된 모든 문서가 떠서 좀 당황스러워서 확인차 여쭤봅니다!
-
해결됨Real MySQL 시즌 1 - Part 1
조건 없는 COUNT(*)에 대한 궁금증
안녕하세요, 강의 잘 듣고 있습니다. 강의와 책을 동시에 보면서, 학습을 하고 있습니다. 근데 강의와 도서에서 설명하는 내용에 다른점이 있는 것 같아서 질문드립니다. REAL MySQL 8.0 (2권) 중 11.4.6 COUNT() 절에서는 아래와 같이 설명되어 있습니다.MyISAM 스토리지 엔진을 사용하는 테이블은 항상 테이블의 메타 정보에 전체 레코드 건수를 관리한다. 그래서 "SELECT COUNT(*) FROM tb_table"과 같이 WHERE 조건이 없는 COUNT(*) 쿼리는 MySQL 서버가 실제 레코드 건수를 세어 보지 않아도 바로 결과를 반환할 수 있기 때문에 빠르게 처리된다.하지만, 강의 Ep.03 COUNT(*) vs COUNT(DISTINCT) 튜닝 에서는 WHERE 절 없는 COUNT(*) 는 제거 대상이라고 설명을 해주셨습니다. 책의 내용처럼 메타 정보에서 가져온다고 한다면 굳이 제거 대상이 될 것 같지는 않은데, 혹시 제가 놓친 배경이 있었을까요? 아니면 이게 뭔가 이분법적인 차원에서 접근하기에는 어려운 내용일까요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
테이블 생성
엔티티를 만들면 엔티티의 형식에 맞게 테이블이 생성이 되던데 테이블 생성하는 sql을 직접 작성한 후 엔티티 코드를 작성하는 이유가 무엇인가요?
-
해결됨Real MySQL 시즌 1 - Part 2
단일 인덱스 크기, 전체 인덱스 크기 구하는 계산식
안녕하세요!14분 쯤 나오는 단일 인덱스 크기와 전체 인덱스 크기가 얼마인지 나오는데, 각각 구하는 계산식을 알 수 있을까요..?어떻게 8바이트가 1억건의 테이블이 있을때 6GB가 되는지 잘 모르겠습니다..8바이트 x 1억 레코드 = 800MB800MB / 1000 = 0.8GB인줄알았는데 따로 계산법이 있는걸가요?추가적으로 필요인스턴스 관련해서 aws에서 계산해보고싶은데 aws요금 계산기에서 Aurora MySQL 서비스 로 검색하면되는게 맞을까요? 서비스 찾기에 Aurora MySQL 검색해도 결과없음으로 나와서요..ㅠㅠ
-
해결됨Real MySQL 시즌 1 - Part 2
primary key에 시간, uuid로 복합키로 설정하는 경우
안녕하세요!좋은 강의 감사합니다!이력 테이블의 대용량 데이터를 저장하기 위해pk값 설정 시 정수형은 제한이 있다고 생각해서시간+uuid로 복합키를 설정하려고 하는데요! 레인지 파티션도 사용하려구 하구요! 이렇게 할 경우 결국엔 String타입으로 저장되서 클러스터링 인덱스가 제대로 저장이 될까? 고민이 있었는데요!이런 고민을 갖고 강의를 보게 되었는데, 강의 내용을 참고해보면uuid값이 정수형보다 길어서 pk로 사용할 경우메모리를 많이 차지해서 메모리크기가 큰 인스턴스를 사용해야 하므로 비용처리가 드는걸로 이해했습니다.uuid대신 snowflake나 sonyflake 라이브러리로 대체하는게 더 좋다고 말씀해주셨는데, 해당 라이브러리가 망하거나(?) 제대로 작동을 안할경우의 위험성도 고려해봐야할것 같다는 생각이 들어서요! 제가 요 라이브러리는 잘 몰라서 여쭤보고자합니다!그래서 질문은 아래 3가지 입니다!Q1. 시간+uuid로 복합키로 pk를 설정하거나, 애플리케이션단에서 시간+uuid만든 String 타입을 pk를 설정하는것보다, snowflake 라이브러리 하나만 사용하는게 더 메모리가 효율적인게 맞을까요?Q2. snowflake가 실제로 현업에서도 많이 쓰이는지 해당 라이브러리가 추후에 제대로 작동을 안할 경우에는 어떻게 대처를 해야 하는지 궁금합니다!Q3. 추가적으로 uuid관련 내용이 Real Mysql 2권 중 어디에 있는지도 궁금합니다! 목차에서는 찾을 수가 없어서요 ㅠㅠ