본문 바로가기

728x90

데이터베이스

[MySQL] 인덱스 /* 인덱스란? */인덱스(INDEX)란 색인, 목차라고 하며, 데이터 검색을 보다 효율적으로 할 수 있습니다. MySQL에서는 B-Tree를 개선시킨 B+Tree 인덱스 구조가 사용된다.인덱스를 활용하면 데이터를 조회하는 SELECT 외에도 UPDATE, DELETE의 성능이 함께 향상된다. 인덱스를 여러개 설정하면 각각의 인덱스는 별도의 B+Tree 구조를 갖는다. /* B-Tree 구조 */B-Tree는 자식 2개만은 가진 이진 트리 (Binary Tree)를 확장하여 N개의 자식을 가질 수 있도록 고안된 것이다.  B-Tree는 최상위에 루트 노드, 중간에 브랜치 노드, 최하위에 리프 노드가 존재한다. - B-Tree에서 모든 노드는 키와 포인터를 가진다. 내부 노드, 리프 노트 모두 키와 데이터.. 더보기
SQL 문법 정리 #1 Real MySQL 8.0을 읽기전에 SQL 을 정리해보겠다. 쿼리들을 쭉 나열할건데 보는 것만으로도 큰 도움이 될 것 같다. /* SELECT 관련 */ SELECT name, addr FROM user WHERE addr IN ('Seoul' , 'Busan'); SELECT name, height FROM user WHERE name like '김%' ; --찾고싶은 문자열 수를 모를때 SELECT name, height FROM user WHERE name like '김_' ; --찾고싶은 문자열 수를 알때 -- ANY 와 ALL SELECT name, height FROM user WHERE height >= ANY(SELECT height FROM user WHERE addr = 'Seoul'.. 더보기
MySQL 리눅스와 터미널연결 및 MySQL 설치 MySQL 공부는 realMySQL8.0을 읽으며 공부할 예정이다. 그리고 우분투서버를 이용할 생각이다 . 나 같은 경우는 리눅스 서버를 UTM을 통해서 미리 만들어놨었기 때문에 이 글에서는 리눅스 서버안에서 MySQL을 설치하는 방법을 알아보겠다. 하지만, 리눅스 데스크탑안에서 MySQL을 설치하는 방법도 있지만 나는 맥북의 터미널에서 ssh를 이용해 리눅스 서버에 연결을 해서 다운받을 생각이기때문에 먼저, 터미널을 통한 리눅스 서버 연결을 가능하도록 해보겠다. /* mac 터미널로 리눅스 서버 연결하기*/ 이 방법은 매우 간단하다. 우선 리눅스 데스크탑에 들어가서 터미널을 열고 아래의 명령어들을 차례로 따라한다. sudo apt update sudo apt install openssh-server.. 더보기
DB (MySQL) 공부시작 /* 시작 이유 (다시, 기초부터 돌아보자) */ 내 자신의 위치는 어디쯤에 있는지, 앞으로 무엇을 해야하는지에대해 알고싶어 멘토링을 받았다. 나는 지금 프로젝트를 계속 만들고 싶었고 이러한 성과들을 눈으로 확인하고 싶었다. 하지만, 기업에 들어가기 위해서는 테크니컬 인터뷰에 유연해질 필요가 있다고 조언을 받았다. SQL 쿼리를 작성할 줄은 알지만 내가 쓰는 데이터베이스는 정확하게 무엇인지, 구동방식, 연결방식, 기능 등의 근본적인 질문에 대해서는 말이 잘 안나오는 나를 발견했다. 그래서 RealMySQL 8.0을 읽으면서 느끼고 배운 내용들을 블로그에 잘 녹여들게 하겠다. 더보기

728x90