본문 바로가기
반응형

DATABASE18

[mongodb] 마이그레이션 스크립트 작성 with bulkWrite 이번에 신규 기능을 개발하면서 라이브서버 반영 시 기존 collection에 있는 데이터를 일부 가공해서 신규 collection에 넣어야 하는 일이 생겼다. 이런 경우 mongodb에서 돌리면 바로 가능한 스크립트를 작성해놓으면 된다. 일단 간단히 느낀점은 자바스크립트나 일반적인 다른 프로그래밍 언어에 익숙하다면 금방 작성 가능할 것이다. var, let, const를 사용해서 쿼리 실행 결과를 저장도 가능하고 map, forEach, for 같은 반복문도 사용 가능하다. 내가 작성했던 스크립트는 아래와 같다. collection 이름이랑 일부만 좀 바꿔서 코드를 올렸다. 아래처럼 코드를 작성해서 실행하면 migDataArr에 담긴 데이터를 bulkWrite하여 한번에 insert하게 된다. const.. 2023. 4. 5.
[mongodb]node.js에서 mongodb 사용 with mongoose mongodb를 직접 연결하여 사용도 가능하나 mongoose와 같은 라이브러리를 이용하여 사용하는 것을 추천한다. 이와 관련된 여러 개념들에 대해서 살펴보자. mongodb는 bson을 사용한다. bson이란? - binary json 이라는 뜻인데 말 그대로 일반적인 josn이 아닌 binary 형태라는 것이다. - josn이 가지는 단점을 보완하기 위해서 나왔다.(단점1 : 텍스트 기반으로 인한 구문 분석이 느림 / 단점2 : 공간효율성) mongoose와 같은 것을 ODM이라고 부른다. ODM이란? - Object Document Mapping로 객체 형태로 db와 맵핑시킨다는 것이다(스키마의 형태가 된다) - 원래 mongodb는 스키마가 없으나 ODM을 사용하여 mysql에서와 같이 스키마를 .. 2023. 1. 27.
[mongodb] 데이터베이스 생성 및 기본 명령어 mysql만 사용하다가 mongodb를 사용하고있는 프로젝트 분석을 위해서 일부 공부가 좀 필요하게 되었다. 찾아보니 일반적으로 mongodb Compass라는 프로그램을 사용하는듯 하다. 해당 프로그램으로 접속하면 다른 db툴과 같이 상세 정보도 나오고 mongo shell을 쓰던 터미널도 바로 나와서 나름 편리하게 사용할 수 있을듯 하다. #mysql과 mongodb에서의 용어 차이 mysql mongodb 테이블 컬렉션 로우 다큐먼트 컬럼 필드 #데이터베이스 목록 확인 show dbs show databases #사용중인 데이터베이스 확인 db #데이터베이스 생성 use 데이터베이스명 다음과 같이 하면 데이터베이스가 만들어지는데 데이터베이스 목록 확인 명령어를 치면 나타나지는 않는다. 현재 사용중인.. 2023. 1. 8.
[mongodb] mac에서 mongodb설치 mac에서 mongodb설치를 위해서는 brew를 사용하면 되며 공식 문서는 아래와 같다. 공식 문서 외에 직접 해본것들은 아래의 내용을 보면 빠르게 설치 및 테스트가 가능할 것이다. https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-os-x/ Install MongoDB Community Edition on macOS — MongoDB Manual Docs Home → MongoDB Manual MongoDB AtlasMongoDB Atlas is a hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier .. 2023. 1. 8.
[mysql8.0] 툴로 접속 시 127.0.0.1(localhost) Connection failed 해결 집에서 mac으로 학습을 시작하느라 homebrew로 mysql을 설치하고 heidisql은 mac버전이 없어 Sequel Pro로 접속을 하려 했지만 오류가 발생했다. 위와 같이 간단히 입력을 하였으나 나타나는건 "Connection failed!"와 아래에 이어지는 에러들. 그러나 Terminal로 접속은 잘 되는 상황이었고, 찾아보니 mysql의 비밀번호 설정을 추가적으로 해주어야 했었다. 일단은 따라하자. 1. mysql -u root -p - Terminal로 mysql root 계정으로 2. alter user root@localhost identified with mysql_native_password by 'PASSWORD'; - 비밀번호 설정 PASSWORD로 된 부분에 사용할 비밀번호를.. 2022. 12. 24.
[postgresql] ubuntu에 postgresql 설치 방법 및 기본 사용 예시 python-django를 하게 되면서 postgresql을 처음 사용하게 되었다. 그러다보니 다시 알아야할게 많아졌고 기록이 필요하다(잘 까먹으니깐) 설치방법 1. apt-get을 업데이트 해주고 postgresql을 설치 sudo apt-get update sudo apt-get install postgresql postgresql-contrib 위의 과정을 거치고 postgresql이 설치되면 postgres라는 계정이 생성된다. 해당 계정은 postgresql의 root계정이고, 현재 사용중인 ubuntu에도 존재를 한다(자동적으로 생성) 여기서 중요한 것은 다른 postgresql의 계정을 생성한다면 ubuntu에도 해당 계정을 생성 해줘야 한다는 것이다. 접속방법 1. ubuntu에서 post.. 2022. 11. 18.
728x90