TIL 11주차 4일 - SQL(1)

Sang heon lee·2021년 7월 22일
0

TIL 리스트

목록 보기
39/60

1. SQL 소개

1.1 SQL

  • SQL = Structured Query Language (구조화된 Query 언어)
  • 관계형 데이터베이스에 사용되는 프로그래밍 언어
  • 데이터 베이스에 쿼리를 보내 원하는 데이터를 가져오거나 삽입할 수 있습니다.

1.2 SQL vs NoSQL

  • 구조화가 되어 있는 데이터 베이스 : SQL (ex : MySQL, Oracle, SQLite, PostgresSQL, MariaDB)
  • 구조화가 되어 있지 않은 데이터 베이스 : NoSQL (ex: MongoDB)

1.3 쿼리란?

  • '질의문' 이라는 뜻을 가지고 있습니다.
  • 저장되어 있는 데이터를 필터하기 위한 질의문

2. ACID

  • ACID는 데이터베이스 내에서 일어나는 하나의 트랜잭션(transaction)의 안전성을 보장하기 위해 필요한 성질

2.1 Atomicity (원자성)

  • 하나의 트랜잭션 내의 개별 작업이 전부 성공해야 하나의 트랜잭션이 성공한 것으로 다룹니다.

  • 개별 작업 중 하나라도 실패한다면 해당 트랜잭션은 실패한 것입니다.

2.2 Consistency (일관성)

  • 하나의 트랜잭션이 수행된 이전과 이후, 데이터베이스의 상태는 일관성이 유지되어야 합니다.

2.3 Isolation (독립성)

  • 각각의 트랜잭션은 다른 트랜잭션에 영향을 끼치지 않고 독립적이어야 합니다.

2.4 Durability (지속성)

  • 하나의 트랜잭션이 성공적으로 수행되었다면, 해당 트랜잭션의 수행에 대한 로그는 영구적으로 남아 있어야 합니다.

3. MySQL 설치

3.1 설치

링크 : https://gist.github.com/nrollr/3f57fc15ded7dddddcc4e82fe137b58e

brew install mysql
// sql 설치
brew info mysql
// 설치되었는지 확인
mysql --version
// 설치되었는지 확인

3.2 서비스 시작

brew services start mysql

3.3 서비스 접속

mysql -u root
// 서비스에 접속

show databases;
// 표가 보이면 정상 (뒤에 ; 를 꼭 붙여야 한다.)
  • 비밀번호 설정된 이후
# -u(계정 접근), -p(비밀번호)
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'yourPassword'; 

3.4 SQL GUI Support Tool

  • MySQL Workbench
  • Sequel Pro (OSX 전용)
  • Table Plus
  • DBeaver
  • DataGrip

3.5 MySQL 삭제

brew services stop mysql
// 서비스 종료

brew remove mysql
// sql 삭제

brew cleanup
// 캐쉬 삭제

sudo rm -rf /usr/local/var/mysql
// 디렉토리 삭제

sudo rm -rf /usr/local/mysql
// 디렉토리 삭제

sudo rm -rf /Library/StartupItems/MySQLCOM
// 디렉토리 삭제

sudo rm -rf /Library/PreferencePanes/MySql
// 디렉토리 삭제 
profile
개초보

0개의 댓글