본문 바로가기

코딩과 알고리즘

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 과금되다! 음? 프리티어인데? 요금내역서 보는 방법 AWS 를 며칠 테스트하다 보니 EC2 프리티어로 테스트만 진행해서 서비스 용량에는 훨씬 못 미치는데 0.7$(약 700~800원)의 과금이 부과된 것을 확인할 수 있었습니다. 이게 어떻게 된 것일까요? 그것은 바로 'Elastic IP Address'에 있었습니다. 바로 '고정IP주소 서비스'인데요. AWS에서는 이를 탄력적 IP로 해석하고 있습니다 :) EC2로 인스턴스를 할당받으면 기본적으로 유동 IP 서비스를 제공합니다. 그래서 인스턴스를 중지후 재시작하면 항상 변경이 되는데 그것도 완전 다른 IP로 바뀌어 버립니다. EC 서비스 중 '탄력적 IP'라는 서비스가 있어서 대략 고정 IP를 제공해주는 서비스구나 감이 외서 시도해보았었는데요. 비용은 그리 비싸지는 않지만 처음에는 뭔지 모르니 약간 불안.. 더보기
유용한 SSH, 모바XTERM으로 AWS 접속하기 아마존 리눅스의 웹페이지에서 접속가능한 리눅스 콘솔창은 놀라운 기능이긴 하지만 사용이 매우 불편해 보입니다. 그 이유인 즉, 한글이 우선 안되는 것과 칼라링이 없어 온통 검정배경 흰 글씨로 보인다는 것을 예로 들수가 있습니다. 그렇게 때문에 보통 SSH 작업을 할 때는 기본 콘솔 창이 아닌 별도의 SSH 툴을 사용하는 것이 일반적이지요. 아주 적절한 도구가 있어 소개해 드립니다. 바로 MobaXterm( 모바엑스텀 ) 입니다. 뭐.. 원래 영어 이름이나 한글로는 짓기 나름이니 이게 꼭 맞는 명칭이라고는 볼 수 없지만.., 이 글에서는 그렇게 지칭하도록 하겠습니다. 모바XTERM 이란 원격 서버에 있는 파일을 편집도 할 수 있고 파일을 서버에 전송하거나 다운받을 수 있는 도구인데요. 보통 putty 나 S.. 더보기
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진 트리가 아닌 다차원 트리가 지원되는 것입니다. 이런 트리(나무) 구.. 더보기