목록공부 (58)
기록을 합시다.
Oraccle 21C XE란? Oracle 21C XE는 Oracle에서 제공하는 DBMS이다. XE는 Express Edition의 약자로, 작은 규모의 프로젝트나 혹은 Oracle DBMS 학습용으로 사용된다. Oracle 21C 설치 1) 아래의 오라클 홈페이지에서 "Oracle Database 21c Express Edition for Windows x64"를 다운 받아준다. Oracle Database Express Edition (XE) Downloads | Oracle 대한민국 Support Oracle Database Express Edition (XE) is a community supported edition of the Oracle Database family. Please go to..
Hyper-V 관리자에서 디스크 용량 늘리기 처음에는 Hyper-V 관리자에 들어가서, 용량을 늘리고싶은 가상 컴퓨터의 [작업] -> [디스크 편집]을 눌러준다. 늘리고 싶은 가상 하드 디스크를 선택해준다. 확장을 선택해 준 다음에, 가상 하드 디스크의 용량을 적는다. 완료를 했으면, 가상 컴퓨터에 들어가서, Terminal 창을 열고, 아래와 같은 커맨드를 쳐준다. fdisk -l은 디스크 파티션의 내용을 출력해준다. sudo fdkisk -l 나는 이미 디스크 용량을 늘렸지만.. 위의 작업을 했다면 아마 Freespace라는 공간도 함께 뜰 것이다. 여기에서 Freespace의 공간을 사용하여 늘려주고 싶은 디스크가 /dev/sda1이다. Linux filesystem이라는 것은 파일을 저장하고 보관..
docker Volume? Volumes docs.docker.com Docker Volume은 Docker 컨테이너와 호스트 파일 시스템 간의 데이터 공유를 지원하는 기능이다. Docker Volume을 사용하면 컨테이너 내부에 데이터를 저장하지 않고 호스트의 파일 시스템에 저장하게 되어 컨테이너가 삭제되더라도 데이터가 유지된다. Volume 생성 명령어 docker volume create [볼륨 이름] Volume 리스트 출력 명령어 docker volume ls Volume 세부사항 확인 명령어 docker volume inspect [볼륨 이름] Volume 삭제 명령어 docker volume rm [볼륨 이름] Volume에 Container 생성하고, 폴더 경로 Mount하는 명령어 doc..
docker에서 network를 사용하는 이유 docker에서 network 설정 없이, container를 생성하게 되면 default bridge에 container가 생성되고, default bridge에 생성된 container들끼리는 서로 통신하기가 힘들다. 그리하여 container들끼리 통신해야할 일이 생긴다면, network를 하나 생성(브릿지를 하나 생성)하여, 그 안에 container들을 포함시키게 만들면 된다. (와이파이 공유기에 연결된 기기끼리 통신할 수 있는 거랑 비슷함) Use bridge networks docs.docker.com docker의 network 생성 명령어 docker network create --gateway [게이트웨이 주소] --subnet [서브넷마스..
혼자 프로젝트를 진행하면서, 로그인 인증을 어떻게 할지 고민을 해봤다. Django로 할 때는 아무 생각 없이 authenticate 하나 써서 사용자 인증을 했었는데, Next.js로 하니 확실하게 공부를 하게 되는 것 같다. 아무튼 그 과정에서 공부해 본 것들을 간단하게 정리해봤다. 세션 기반 인증 세션 기반 인증은 서버가 사용자가 로그인 중임을 기억한다는 뜻이다. 사용자가 로그인을 하게 된다면, 서버는 세션 저장소(파일 혹은 DB)에서 사용자의 정보를 조회 하고, 세션 id를 발급한다. 이 때, 발급된 id는 사용자의 브라우저에 쿠키로 저장된다. 그 후에 사용자가 헤더에 id를 담아 요청을 보낼 때마다 서버는 세션 저장소의 정보(세션)을 조회한 후, 로그인이 되어있다는 것이 확인 되면 그 요청을 처..
form을 만들다가, 역시 이것도 내가 하기 귀찮으니 사람들이 만들어준 문명의 이기 중에 하나인 react-hook-form을 이용하기로 했다. 자, 일단은 react-hook-form을 깔아주자. npm install react-hook-form 이 포스트에서는 react-hook-form중에서 사람들이 제일 자주 쓰고 유명한 useForm을 위주로 이야기하겠다. useForm Performant, flexible and extensible forms with easy-to-use validation. react-hook-form.com useForm의 props들은 form의 기본 세팅을 해주는 것 위주이다. (지금은 쓸 게 없음..) 우리는 useForm의 return props 중에 registe..
RDBMS 테이블을 작성하다가, 늘 INT auto_increment로 user_id를 생성해서 primary key로 사용하면 갑자기 의문이 들었다. 왜 email은 primary key로 안 쓰는 거지? 모든 것에는 다 이유가 있는 법.. 검색을 해보니 이런 글이 떴다. (무려 12년전 글..) https://stackoverflow.com/questions/3804108/use-email-address-as-primary-key Use email address as primary key? Is email address a bad candidate for primary when compared to auto incrementing numbers? Our web application needs the ..
NoSQL이란? NoSQL은 "Not Only SQL"의 약자이며, 전통적인 테이블 기반으로 데이터를 저장하는 것이 아닌 다른 방식의 데이터 저장방식을 이용한다. NoSQL특징 NoSQL 데이터베이스는 보통 비정형,반정형 등의 구조화 되지 않은 대용량 데이터를 저장하는데 적합하다. 이런 특징은 사전에 스키마를 정의하지 않기 때문에 나타난다. NoSQL의 종류 MongoDB, Cassandra, Redis 등의 NoSQL가 있다. (보통 NoSQL이라 하면 DBMS를 이야기하는 거다.) NoSQL을 쓰는 이유 NoSQL은 RDBMS에서 처리하기 힘들었던 비정형 데이터를 다루기에 유용하다. 특히 비정형 데이터는 JSON, XML, key-value, document, graph와 같이 다양한 형태가 있다. ..
DatePicker를 이용하여, 해당 날짜마다의 데이터를 출력하고싶었다. 하지만 아직 서버를 구현하지 않아 DB에 연결하여 더미데이터를 만들 수 없었다. 그래서 일단은 아래와 같이 직접 일일이 더미데이터 한 7개 정도 만들어놨다. const user_data = [ { key: "1", category: "커피", detail: "라떼", price: 3500, date: new Date() }, { key: "2", category: "외식", detail: "마라탕", price: 8000, date: new Date() }, { key: "3", category: "집밥", detail: "나물", price: 30000, date: new Date() }, { key: "4", category: ..
이번에는 NextUI를 이용해 손쉽게 ProgressBar를 만들어볼 것이다. 아래 이미지는 결과물이다. 일단은 NextUI의 문서를 한 번 확인해보자. https://nextui.org/docs/components/progress Progress | NextUI - Beautiful, fast and modern React UI Library The Progress component allows you to view the progress of any activity. nextui.org 위의 문서를 보았듯이 Progress를 import 시켜서 props에 값을 넣어주면 된다. 확인해본 결과, 당연하게도 Progress의 value값은 0~100이다. 물론 그 이상의 값을 넣더라도 Progress의 ..