postgres
[Database] SQLite에서 Postgres로 데이터베이스 마이그레이션
Django 개발중에 SQLite를 사용하고 있다가 Postgres로 데이터를 옮겨야 할 경우가 있다. SQLite 데이터 dump python3 manage.py dumpdata > datadump.json 이후 코드는 Django settings.py의 Database를 postgres로 설정을 변경 후 실행한다. python3 manage.py migrate --run-syncdb python3 manage.py shell >>> from django.contrib.contenttypes.models import ContentType >>> ContentType.objects.all().delete() >>> quit() python3 manage.py loaddata datadump.json
[Postgres] postgres 이미지 사용 시 시간 설정
python script에 psycopg2 패키지를 사용하여 postgres 데이터베이스에 자료를 저장하게 세팅이 되었다. 잘 동작하나 보다가 시간 설정이 한국 시간 설정이 꼬여서 이상하게 나오는 것을 확인하였다. 그래서 docker-compose.yml 파일의 environment 설정을 확인해 보니 TZ=Asia/Seoul으로 이미 설정이 되어 있었다. environment: - TZ=Asia/Seoul 알고보니 postgres 데이터 볼륨을 db라는 이름으로 생성한 도커 볼륨을 사용하고 있어서 설정 변경이 되지 않았던 것 volumes: - db: {} services: postgres: volumes: - db:/var/lib/postgresql/data 아래와 같이 postgres를 위해 생성된..
[Psycopg2] Python Psycopg2 패키지 스트링 처리
파이썬에서 psycopg2 패키지를 사용하여 postgres에 insert 쿼리를 하는 경우, 쿼리의 value 중 스트링을 처리하는 값에 대해 에러가 발생하였다. 처음에는 쿼리에 내가 원하는 values를 사용하기 위해 중괄호 포멧을 사용했었다. """Querry {0} {1}""".format(value1, value2) 하지만 value들 중 스트링 형식에 Single Quteo(' : 따옴표)를 사용하는 값에 대해서 에러가 발생하였다. postgreSQL 쿼리에 single quteo로 감싸진 값에 대해서는 colume으로 인식하는 것 같다. 그래서 아래와 같이 쿼리 변경 후 해결하였다. """Querry %s %s""".format(value1, value2)