체인의정석

docker에 DB 설치하기 (3) - postgreSQL 본문

개발/docker & linux

docker에 DB 설치하기 (3) - postgreSQL

체인의정석 2021. 8. 12. 18:31
728x90
반응형

다른 프로젝트를 급하게 마무리하고 마지막 postgreSQL에 테이블이 잘 생성되는지 체크를 하기로 하였다.

 

https://judo0179.tistory.com/96

 

Docker Postgresql 설치 및 셋팅하기

리눅스 컨테이너 즉 docker는 프로세스 형태로 자원을 격리하여 사용하기 때문에 컨테이너가 삭제되면 기존에 저장되었던 데이터는 사라진다. 이를 예방하기 위해서 docker volume을 사용하거나 로

judo0179.tistory.com

위 블로그를 참고해서 만들어 보자.

 

(base) lambda256@ethan ~ % docker run -p 5432:5432 --name postgres -e POSTGRES_PASSWORD=1q2w3e4r -d postgres

먼저 이미지를 풀 받고, docker ps -a 로 이미지 있는지 체크! 이미지가 있다면 설치해주면 

(base) lambda256@ethan ~ % docker exec -it postgres /bin/bash

도커 안의 컨테이너로 접속! 그후에 이제 테이블을 생성하면 된다.

root@f8c9dba95448:/# psql -U postgres
psql (13.3 (Debian 13.3-1.pgdg100+1))
Type "help" for help.

postgres=#

postgresqld에서는 디폴트 set이 SQL_ASCII이다. 이걸 UTF8로 바꾸어주어야 한다.

근데 쿼리를 입력해도 바뀔수가 없다고 나와서 현재 인코딩을 살펴보니 이미 utf8이였다.

만약 바꿔야 한다면 아래 링크에 들어가서 보고 따라하면 된다고 한다.

postgres=# set server_encoding='UTF8';
ERROR:  parameter "server_encoding" cannot be changed
postgres=# set client_encoding='UTF8';
SET
postgres=# SHOW SERVER_ENCODING;
 server_encoding
-----------------
 UTF8
(1 row)

https://www.shubhamdipt.com/blog/how-to-change-postgresql-database-encoding-to-utf8/

 

Dr. Shubham Dipt

Data Scientist, Data Engineer, Full Stack Developer, Python Programmer, Computational Neuroscientist

www.shubhamdipt.com

 

그리고 테이블을 생성하고 varchar의 데이터 사이즈를 바꿔줘야지 하는순간 에러가 안났다!

 

postgresql의 varchar는 데이터 사이즈 리미트 자체가 큰 것이였다!

https://dba.stackexchange.com/questions/189876/size-limit-of-character-varying-postgresql

 

Size limit of character varying Postgresql

What is the size limit of various data types in postgresql? I saw somewhere that for character varying(n), varchar(n) n must be between 1 to 10485760. Is that true? What are the valid sizes for

dba.stackexchange.com

무려 10485760 바이트라고 한다. 

다른애들이랑 다르게 사이즈리밋이 매우 큰걸 확인할 수 있었다.

 

이제 db생성 테스트는 끝! 이다.

728x90
반응형
Comments