본문 바로가기

반응형

DB(SQL)

(82)
[mysql] mariadb 있는 곳에 mysql install 도전 (feat. 포기) 결론만 말하면 안된다. 아니면 설정 오지게 해야한다(포기)가장 쉬운 방법은 도커로 분리하는 방법이라고 한다.또는 설정을 오지게 해줘야한다.우리 서버는 실제로 운영을 하고 있기에 실험을 하기엔 무리가 있다고 판단 포기하고 그냥 도커로 했다.1. mariadb port 확인mariadb와 mysql 환경설정 등이 같은곳을 보고 있을 가능성도 많으면 기본포트 3306도 동일하다그래서 포트가 겹칠 경우 install 당시 오류가 생길 수 있으므로 기존 mariadb의 포트를 확인하고 변경하던가 mariadb를 uninstall 및 사용 중지를 해놓는것이 좋다.cat /etc/mysql/mariadb.conf.d/50-server.cnf## These groups are read by MariaDB server...
[DB] table data copy 예를들어 A라는 테이블이 있는데 그대로 어떤 테이블에 데이터를 넣고 싶은 경우 아래와 같이 할 수 있다. -- 테이블 A의 컬럼 정보를 조회하는 쿼리SELECT GROUP_CONCAT(COLUMN_NAME) INTO @columnsFROM INFORMATION_SCHEMA.COLUMNSWHERE TABLE_NAME = 'A' AND TABLE_SCHEMA = DATABASE();-- 트리거 생성 스크립트를 생성하는 쿼리SET @trigger_sql = CONCAT('CREATE TRIGGER insert_into_b_after_aAFTER INSERT ON AFOR EACH ROWBEGIN INSERT INTO B (', @columns, ') VALUES (', REPLACE(@columns..
[MariaDB] GRANT ALL PRIVILEGES / Trigger 이슈 아래와 같이 %에서 특정 IP에서만 접속이 가능하도록 권한을 부여하였다. GRANT ALL PRIVILEGES ON *.* TO 'ROOT'@'192.168.0.1' IDENTIFIED BY 'TEST1' WITH GRANT OPTION;그런데 DB에서 직접적으로 실행하면 되는데 백엔드에서 요청했더니 안되는것이다.trigger 이슈였다.db에서 직접적으로 실행하면 trigger가 권한 이슈가 안생기는데 backend 에서 실행시키니까 root@% 권한이 없다는 에러가 떴다. trigger 가 있다면 grant 옵션줄때 조심하자.. + 추후 어떻게 처리 했는지 올릴 예정
[Redis] 라이선스 변경 BSD에서 SSPL로 변경 영향도? 개인 또는 사용하는 회사는 상관이 없다. aws ms 같은 라이선스 가져다가 다시 팔아먹는 사람들만 영향이 있다. 레디스, “MS 등이 본사의 노력과 투자를 상품화” 불만 https://redis.com/legal/licenses/ Redis Licensing Overview | Redis Learn about the Redis Source Available License 2.0 (RSALv2), SSPL, and the open source 3-Clause-BSD license. redis.com https://www.apple-economy.com/news/articleView.html?idxno=73033 ‘레디스’, 조건부 오픈소스에 사용자들 ‘경악’ - 애플경..
[DB] DB Monitoring의 시작.. (일기) DB 모니터링을 무작정 시작해보았다... 음 근데 이렇게 하는게 맞는지 궁금해서 그냥.. 공부는 안하고 커뮤니티에 물어봤다. 어..? 그거 다하면 과부하가 걸릴수도 있단다. 보통은 슬로우 쿼리부터 잠깐 켜놓고 문제되는것들을 수집하여 고치고 active session 을 모니터링 해서 튈때 잡아도 된다고 한다. 첫번째꺼는 이해갔지만.. 두번째꺼는 정확하게 이해가 안갔다.. active session을 맨날 모니터링하다가 너무 많이 생겼을 때 그때 로그를 확인하라는 뜻.. 이겠지..? 다음에 해봐야겠다.. ㅠ https://www.rtinsights.com/8-observability-best-practices-every-org-should-implement/ https://news.hada.io/topic..
[DB] CTE(Common Table Expression)와 파생테이블(derived table) (feat. with) Recursive Common Table Expressions 서브 쿼리 (Subquery) 정의 서브 쿼리는 하나의 큰 쿼리 내에 포함된 또 다른 쿼리입니다. 이는 주로 SELECT, INSERT, UPDATE, DELETE 문 내에서 데이터를 필터링하거나 조건을 제공하는 데 사용됩니다. 예시 SELECT * FROM Employees WHERE DepartmentID IN (SELECT DepartmentID FROM Departments WHERE Name = 'IT') 파생 테이블 (Derived Table) 정의 쿼리의 FROM 절 안에서 정의되는 임시 테이블 쿼리 실행 시 생성되고, 쿼리 실행이 끝나면 사라집니다. 예시 SELECT a.* FROM (SELECT * FROM Employees)..
[DB] 달력 DB 구조는 어떻게 구성 할까? (sqlshack Calendar) https://www.sqlshack.com/designing-a-calendar-table/ Designing a Calendar Table In this article we will explore a need in reporting to aggregate or return data that is crunched based on date attributes. www.sqlshack.com
[DB] PMM 구성하기 (DB Monitoring Tool) 2023년 4월에 하려고 했던걸 이제 해본다... 이번에는 할 수 있을까..? Mariadb 모니터링 시스템으로 PMM(Percona Monitoring and Management)을 사용해보고자 한다. Maria DB를 지원하는건 아니지만 mysql 로 호환이 가능하다고 해서 고고싱 percona에서 docs 도 제공해주고 메뉴얼도 다운로드 받을 수 있다.. percona docs : https://docs.percona.com/percona-monitoring-and-management/index.html 다운로드 페이지 : https://www.percona.com/downloads 다운로드 페이지에서 메뉴얼 다운로드 및 docs 링크 바로 접근 가능하다 메뉴얼 및 Docs 살짝 봤는데 엄청 설명이..

반응형