본문 바로가기

반응형

전체 글

(58)
mariadb 통계 정보 데이터베이스에서 두뇌의 역할을 담당하는 옵티마이저는 비용 기반 최적화 방법(CBO) 으로 SQL 수행계획을 작성한다. * 예전엔 통계 정보를 생성하는 연산에 필요한 리소스가 부족하여 규칙 기반 최적화 방법(RBO)을 사용했었다. 비용 기반 최적화에서 중요한것은 통계 정보이다. db는 빠른 SQL 수행을 위해 통계 정보를 작성하게 되는데, 이 통계정보에 따라 필요한 레코드만 가져올 수 있도록 인덱스 레인지 스캔을 할 수도 있고 처음부터 끝까지 읽는 풀스캔을 수행할 수도 있다. 때문에 통계 정보가 잘못 되었다면 1초면 수행 가능한 쿼리문도 10분이 걸릴 수 있다. 통계 정보의 수집 조건 테이블 생성 테이블의 레코드가 대량으로 변경 되는 경우 (INSERT, UPDATE, DELETE) SHOW TABLE S..
mariadb 쿼리 실행 -mairadb 에서쿼리가 실행되는 과정 1. SQL 파싱 2. 실행계획 수립 3. SQL 실행 SQL 파싱 SQL 문을실행시키면 우선 SQL 파서 모듈이 처리를 한다. 이때 SQL 문법을 검색하며 문법이 잘못되었다면 이 단계에서 수행이 멈추게 된다. 또한 이 단계에서는 SQL파스트리 가 만들어진다. * SQL 파스트리 : 문장을 의미있는 단위로 쪼개어 만들어진 SQL 구조 실행계획 수립 앞의 단계에서 만들어진 SQL 파스트리를 참조 하면서 실행계획을 수립하게된다. 실행계획 수립에는 다음과 같은 내용이 진행된다. 조건 및 연산의 단순화 SQL에 사용된 조건과 인덱스 통계 정보를 이용해 사용할 인덱스 선택 조인이 있는 경우 어떤 순서로 테이블을 읽을지 선택 이외에도 많은 작업들이 수행되지만 주요작업은 위의..
<장자> 내편 - 소요유 멀고 먼 북쪽 바다에 물고기 한 마리가 살고 있었는데 이름을 곤이라고 했다. 곤의 크기는 몇천 리나 되는지 모를 정도였다. 어느날 이 물고기가 변신을 하더니 새가 되었다. 그 새의 이름은 붕이라고 한다. 붕새의 등 길이는 몇천 리나 되는지 모를 정도다. 온 힘을 다해 날면, 그 날개가 마치 하늘에 그리운 구름과 같았다. 이 새는 바다가 크게 출렁일 때 남쪽 바다로 날아간다. 남쪽 바다는 천지다. 매미와 작은 비둘기가 붕새를 비웃으면서 말했다. "나는 힘차게 날아올라서 나릅나무나 다목나무에 다다라 머물곤 하는데, 때때로는 거기에 닿지 못하고 땅에 내동댕이쳐질 때도 있다. 그런데 왜 붕새는 9만 리나 올라 가서 남쪽으로 날아가는 건가?" 장자가 보기엔 사람들은 우물 속에 있는 개구리로 비춰져 보인듯 하다. ..
mariadb 권한 role mariadb 의 권한은 role (역할)로 부여 하고 사용자들을 해당 role 에 소속시켜서 권한을 부여할 수 있다 role 을 사용하면 사용자 하나하나 권한을 부여할 필요 없이 role 의 소속을 변경하여 권한 관리가 가능하다. 1. role 생성 (create user 권한을 가진 사용자만 가능) >create role role1 with admin {current_user | current_role | user | role}; create role [role 명] [role 권한 부여 여부] role 명까지만 입력해서 role 은 생성이 가능하다. role 명까지만 입력하면 current_user 로 생성이 된다. with admin 은 해당 role 을 관리할 수 있는 범위를 나타낸다. 현재 사..
mariadb 의 사용자 계정 식별 과 권한 1. 사용자 계정 식별 mariadb의 사용자는 다른 dbms와 다르게 사용자의 계정뿐만 아니라 그 사용자의 접속 지점도 계정의 일부가 된다.(호스트명 혹은 ip) 예를 들어 'user1'@'192.168.0.100' 이라는 계정은 192.168.0.100 ip 를 사용하는 호스트에서만 접속이 가능하다. 간혹 'user1'@'%', 'user1'@'192.168.0.100' 처럼 같은 호스트 지점이 두가지인 경우가 있는데 이런 경우 더 좁은 범위의 계정명이 적용된다. 2.권한 grant 명령을 사용하여 권한을 부여할 수 있다. >GRANT privilege_list ON db.TABLE to 'user'@'host'; GRANT 권한 ON 대상 오프젝트 to 사용자; -오브젝트 종류 *.* : maria..
MariaDB 서버의 시작, 종료, 접속 1. 서비스로 등록 되어 있는 경우 (RPM, YUM 으로 설치할 경우 자동으로 서비스에 등록된다) // 시작 #service mysql start // 종료 #service mysql stop * os 버전에 따라 service 가 아닌 systemctl 을 사용해야할 수 있음 * mariadb 인데 실제 서비스 명은 mysql 인 이유는 mariadb 가 mysql 의 커뮤니티 버전의 clone 으로 만들어 졌고, mysql 과 mariadb 를 만든 Monty 는 mysql 의 오픈소스 버전이 그대로 유지되기를 원하기 때문에 mysql 과 그대로 호환되도록 mysql 을 그대로 서비스 명으로 사용한다. 2. 서비스로 등록되어 있지 않은 경우 (직접 컴파일을 하거나 바이너리 혹은 압축된 설치 파일로 ..
<장자> 내편 1. 소요유 - 자유롭게 노닐다 - '소요유'라는 마음의 경지는 단순한 자유로움을 뜻하는 것이 아니라 장자가 가장 중요하게 여기는 마음의 태도를 비유적으로 표현한 말이다. 장자의 전체 내용은 속박에서 벗어난 상태를 알기 위해 마음을 속박하고 구속하는 것을 알아내는 과정이라고 보아도 무방하다. 2. 제물론 - 제 : 가지런하게 하다. 고르게 하다. -제/물론 : 세상사람들의 각종 논의를 가지런하게 다스리다 -제물/론 : 만물을 평등하게 여기는 관점 - 두 가지 해석 가운데 어떠한 것도 가능하지만 이 둘을 관통하는 핵심이 여전히 '소요유' 편의 주제와 맞닿아 있음을 생각해야한다. 3. 양생주 - 생명의 주체를 수양하다 - 장자가 말하는 정신을 기르는 법에는 어떤 특별한 기술이나 기교가 있지 않고 그저 자연을..
RFP_Request for proposal (제안요청서) 1. RFP (Request for proposal, 제안요청서) : 발주자가 특정 과제의 수행에 필요한 요구사항을 체계적으로 정리함으로써 제안자가 제안서를 작성하는데 도움을 주기 위한 문서로 제안요청서에는 제안안내서, 기술제안요청서가 포함된 문서로 정의 2. 요구사항의 구분 및 속성 가) 요구사항 구분 구분 내용 비지니스 요구사항 왜( Why) 에 해당하는 정보 발주기관에서 프로젝트를 추진하는 배경 시스템을 개발함으로써 얻어지는 효과 사용자 요구사항 무엇( What)에 해당하는 정보 시스템을 통하여 달성되는 "무엇"을 설명 발주기관 협업에서 수행하려는 시스템 기능 요구사항 개발해야 하는 기술 행위 요구사항 시스템이 수행해야 하거나 시스템을 이용해 발주기관에서 할 수 있어야 하는 것들 나) 요구사항 속성..

반응형