본문 바로가기

몽고DB

몽고DB 콘솔에서 맵리듀스(MapReduce) 기술 지난 챕터에서는 몽고DB의 가장 기본 중의 기본, CRUD 에 대해 다루어 보았는데요. itadventure.tistory.com/383 그리고 아래 파일은 share.php 와 같은 폴더에 mongo_sample.php 로 저장해 주세요. 이 샘플코드는 앞의 3개의 학과와 각각의 학급 정보를 입력해 줍니다. 트리 구조로 입력하여 주고 각각의 학급은 배열형태로 입력됩니다. 이제 웹브라우저에서 퍼블릭URL/mongo_sample.php 를 실행하면 아래와 같은 결과가 보이실 겁니다. var_dump 함수보다는 좀 더 보기 쉽지요? :) 여기서 nUpserted=>3 으로 3개의 자료가 업서트된 것을 확인하실 수 있습니다. 모든 학과를 삭제하고 새로 입력합니다. object(MongoDB\Driver\Wri.. 더보기
PHP + 몽고DB 크루드! ( CRUD ) '크루드'하면 웬지 "딴-딴-딴딴 따라다~' 배경음악이 등장하는 미션 임파서블'의 '톰 크루즈'가 생각이 납니다 :) 톰 크루즈는 불운한 어린 시절을 보냈지만 이를 극복하고 결국 멋진 연기 인생을 꽃 피우게 되지요. 하지만 단순히 운이라고 할 수 없을만한, 많은 팬들에게 사랑받는 힘은 가히 말로 설명할 수 없는 '이른바 목숨을 건 연기' 의 힘이 크다고도 합니다. 스턴트맨 없이 안전와이어도 없이 직접 암벽 등반을 해내거나 세계에서 가장 높은 부르즈 할리파라는 빌딩에서 뛰어내리는 액션을 해내는 그 밖에도 톰크루즈 주연의 여러 액션 영화에서 기막히고 위험한 액션들은 톰 크루즈가 직접 해낸 것이라고 합니다. 관객들은 정말 이 겂없는 배우의 연기에 집중하는 것보다도, '임파서블한 미션'에 집중하는 것이 더 크지.. 더보기
보안기능활성화 모드의 PHP + 몽고DB 지난 시간에는 몽고DB에서의 관리자 계정 설정에 대해서 다루어 보았습니다. itadventure.tistory.com/381 몽고DB, 데이터베이스별 관리자 계정 생성 이번 시간에는 지난번의 몽고 DB 최고관리자 계정 생성에 이어, 데이터베이스별로 각각 관리자 아이디를 생성하는 방법을 알아보도록 하겠습니다. itadventure.tistory.com/380 몽고DB, 계정 보안! 최고 itadventure.tistory.com 특히 최고관리자 계정과 데이터베이스별 관리자 계정을 생성하고 패스워드를 설정하는 방법에 대해 살펴보았었는데요. 그러다 보니 원래 PHP 에서 잘되던 몽고DB 접속이 한가지 문제가 발생되었습니다. PHP 에서 몽고 DB에 접속할 때 만일 몽고DB에 아이디, 패스워드가 걸려 있는 경우.. 더보기
몽고DB, 데이터베이스별 관리자 계정 생성 이번 시간에는 지난번의 몽고 DB 최고관리자 계정 생성에 이어, 데이터베이스별로 각각 관리자 아이디를 생성하는 방법을 알아보도록 하겠습니다. itadventure.tistory.com/380 몽고DB, 계정 보안! 최고관리자 계정 만들기 이번 시간에는 몽고DB 의 계정 보안에 대해 살펴보겠습니다. 관계형 데이터베이스 대부분은 데이터베이스에 로그인할 때 관리자 계정이라는게 있습니다. 보통 mysql(or mariadb)과 mssql 계열은 root, itadventure.tistory.com 1대의 서버를 여러 다중 목적으로 사용한다고 생각해 봅시다. 이를 테면 대학교 홈페이지, 도서관, 건설사 홈페이지를 한대의 서버에 폴더를 따로 두어 각각 도메인을 세팅하여 서비스 한다고 가정해 볼까요? ※ 이를 가상 .. 더보기
몽고DB, 계정 보안! 최고관리자 계정 만들기 이번 시간에는 몽고DB 의 계정 보안에 대해 살펴보겠습니다. 관계형 데이터베이스 대부분은 데이터베이스에 로그인할 때 관리자 계정이라는게 있습니다. 보통 mysql(or mariadb)과 mssql 계열은 root, 오라클은 sys이지요. 몽고DB도 관리자 계정이란게 있긴 하지만 처음 몽고DB를 설치하면 관리자 계정 없이 로그인이 됩니다. 계정 인증 기능이 없는게 아니라 기본으로 비활성화(disable) 되어 있기 때문이지요. 이는 사실 외부 해킹의 소지가 있습니다. 그것도 매우 큽니다. 만일 해커가 몽고 DB의 진입 입구까지만 도달할 수 있다면 그 후부터는 아무런 비밀번호 없이 들어갈 수 있으니 아파트 문을 열어둔 셈이나 마찬가지입니다. 그래서 처음에는 이 보안설정을 해주어야 합니다. 연습하는 수준이라면.. 더보기
AWS(아마존 웹서비스) 몽고DB + php 드라이버 설치 몽고DB를 보면 볼수록 그 매력이 더한것 같습니다. 비록 관계형 데이터 베이스처럼 간단하게 한줄로 group by 문을 통한 통계를 낼 수는 없지만, 맵 리듀스라는 기술을 이용해서 가능하고, 맵 리듀스라는 기술은 관계형 데이터베이스의 프로시저와 맞먹는 기술이라 응용력은 매우 다양해 보입니다. 오늘 그 부분을 다룰건 아니구요. 지난번에 이어 AWS 에 몽고DB 및 php 드라이버를 설치하는 부분을 진행해보겠습니다. itadventure.tistory.com/373 AWS(아마존 웹서비스) 웹서비스 자동 시작 & PHP 설치 지난 시간에는 AWS 프리티어 서버를 세팅하고 nginx 웹서비스를 설치하여, 홈페이지를 띄워보는 부분까지 알아보았습니다. 그리고 소요 시간이 소진되지 않게 서버를 중지하는 부분까지 진.. 더보기
몽고 DB ?! 기본 개념 & 연습 약간 몽고DB? json DB! 오?!! 15여년 넘게 mysql, mssql, msaccess, dbaseIII+ 등의 관계형 DB만 접하다가 ( 최근에 오라클 약간.. ) 몽고 DB 라는걸 만나게 되었습니다. mysql 이나 mssql, 오라클은 모든 자료가 표의 형태이지요. 그리고 조인을 걸고 인덱스를 걸어 속도를 극대화 시킬 수 있는 특징이 있습니다. 이런 식으로 DB 튜닝을 하면 기존 서비스보다 5~20배 가량 속도가 향상되는 것을 자주 보아왔거든요. 하지만 몽고 DB를 얼마간 살펴보고 책자를 본 결과 확인된 것은 몽고 DB 는 트리형 구조라는 것입니다, 나무에 가지가 달려 있고, 또 그 가지에 여러 가지가 딸릴수 있는, 그것도 2진 트리가 아닌 다차원 트리가 지원되는 것입니다. 이런 트리(나무) 구.. 더보기