카테고리 없음

16주차 정리

jjon-jonny 2024. 7. 23. 18:10

4.5주차

postgreSQL
 
-시작하기 전
ㄴ 새로운 DB를 배운다 라는게 어렵지 않음
ㄴ 사실 오늘 새로운 DB를 배우지만, 이것보다도 DB 기법을 공부하는게 중요함.
( Table Nomalization , 트랜잭션, SQL 고급 문법 
 
PostgreSQL 특징
ㄴ 점유율 현재 2위임 ( 매우 많은 개발자가 쓰고 있다)
 
장점
  1. 무료
  2. 독특한 자료형들이 존재한다.(json , list 등) ㄴ 이외에도 여러 유연한 기능 존재
  3. mysql과 비교했을 때 데이터가 많을 수록 보편적인 성능이 좋아짐
ㄴ 정확하게 어떤 작업에서 더 성능이 좋은가?
ㄴ 왜 그런 결과가 나오는가?
구조
ㄴ mysql 의 구조 : db -> table
ㄴ postgreSQL의 구조 : DB -> Schema -> Table
ㄴ Schema는 Table 을 모아주는 폴더의 역할
 
 
계정 시스템
ㄴ postgresql 도 root 계정이 있긴 함
ㄴ 대신에 postgres 라는 계정이 사실상 postgresql 의 관리자 계정
ㄴ postgresql 의 계정을 만들려면, 무조건 Server의 계정을 가지고 있어야 함
ㄴ 그리고 Server 계정과 같은 이름의 계정으로만 만들 수 있음
 
-만약 신규 계정을 추가하려면?
ㄴ 일단 서버 계정부터 만들어야 함
ㄴ 그런 다음에 이 계정의 아이디와 동일한 postgresql 계정을 만들 수 있는 것
 
Postgresql 은 설치하자마자 server에 Postgres 라는 서버 계정이 생성이되고 그 계정에 맞는 postgres라는 계정이 db에 형성됨.
 
sudo su root로 바꿔준다
이후에 su postgres 로 바꿔주고
Psql 로 들어가준다
 

CREATE DATABASE web;

웹이라는 데이터베이스를 만들어라

CREATE USER ubuntu WITH LOGIN PASSWORD '1234’;

우분투라는 유저를 비번 1234로 만들어라

 

GRANT ALL PRIVILEGES ON DATABASE web TO ubuntu;

전권을 줘라 데이터베이스에 우분투한테

psql -d web

web 에 들어가는 거임

 

\l

Show databases;랑 같은거임

 

\dn

show schemas 임

 

\dt

Show tables 임

 

\d+ project.account;

Desc 이거임

 

 

 
public schema 에 들어가는 것들은 스키마가 없는 table 들이다.
 
 

npm install pg

 
 
 
오늘의 과제 postgre로 바꿔서 완벽하게 해오기!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
api 명세서 포함해서 완벽히 해오기