본문 바로가기

Others

(103)
Mongoose(몽구스) 스키마(Schema) 안녕하세요. 이번 시간에는 몽구스 스키마에 대해 알아보겠습니다. 지난 시간에 몽구스는 스키마가 장점이라고 말씀드렸죠?MySQL같은 SQL에 익숙하신 분들은 처음에 MongoDB나 Redis같은 nosql을 사용하면 헤맵니다. 바로 테이블이 없기 때문입니다. 다큐먼트에 아무거나 넣어도 에러가 생기지 않습니다! 어떻게보면 에러가 안 나서 매우 편리한 기능인 것 같지만, 실제로 사용하다보면 아무거나 다 들어가서 문제가 생깁니다. 실수로 오타를 낸 데이터도 들어가고, 같은 필드인데 자료형이 다른 경우도 생깁니다.스키마이러한 문제를 막기 위해 몽구스는 Schema(스키마)를 도입했습니다. 몽구스는 사용자가 작성한 스키마를 기준으로 데이터를 DB에 넣기 전에 먼저 검사합니다. 스키마에 어긋나는 데이터가 있으면 에러..
SSH PASSWD 없이 접속하기 [출처] https://kimdoky.github.io/deploy/2017/06/06/ssh-nonpass-connect.html [출처] https://kimdoky.github.io/deploy/2017/06/06/ssh-nonpass-connect.htmlTDD 스터디하는중 2부의 내용은 배포와 관련된 내용이 진행됩니다. AUTOMATING DEPLOYMENT WITH FABRIC진행 도중 SSH로 접속시 패스워드 때문에 진행이 막히게 되었습니다.AWS EC2로 진행하였고, EC2는 기본적으로 Keypair를 이용하여 접속하게 됩니다.fabric으로 접속시 Keypair를 사용할 수 없었기 때문에 EC2 접속에서 패스워드 부분에서 접속이 막혀 더이상 진행되지 못하였습니다.Python Korea, ..
[OS X] 맥 기본 터미널로 AWS EC2 터미널 접속하는 방법 [출처] http://blog.freezner.com/archives/1249OS X에서 EC2를 접속하기 위한 준비물은 이렇습니다.터미널 프로그램 (기본 터미널 : command + space -> ter -> 엔터)EC2 키파일(.pem)준비 되었다면 아래와 같이 세팅합니다.키파일을 원하는 위치에 복사하고 퍼미션을 400으로 조정합니다. (저는 ~/Desktop/key/로 정했습니다.)Shell1$ chmod 400 ~/Desktop/key/keyfile.pem터미널에서 키파일 옵션을 추가한 명령으로 ssh 접속Shell1$ ssh -i ~/Desktop/key/keyfile.pem ec2-user@[서버 아이피 또는 도메인] 아래는 참고 사항입니다.pem 파일이 아닌 ppk를 키파일로 사용하는 경우..
맥 osx에 mongodb 설치 및 테스트 Hello world 출처: http://uxicode.tistory.com/entry/맥-osx에-mongodb-설치하기 [헬!!!로월드] 홈브루 패키지 매니저를 사용하면 몽고DB를 아래 두번의 명령어로 설치 가능하다고 한다? (의문표시는 ..... 솔직히 안해봤음 ) brew updatebrew install mongoDB 근데 왠지 위 방법으로 딱 하고 싶지 않다...( 너무 쉬운 것도 문제인가? 병인듯 ㅠㅠ )터미널로 실행을 많이 해야겠기에 터미널 명령어 선행 지식이 필요...필요없다면 Mongodb 설치하기로 이동. cd ( 해당 경로 이동 )cd 입력할 경로명pwd ( 현재 터미널 경로 표시 )pwdls ( 조건 검색어 )F : 파일 유형을 나타내는 기호를 파일명 끝에 표시 (디렉토리는 '/', 실행파일은 '*',..
Redis 레디스는 Remote Dictionary Server의 약자로서, "키-값" 구조의 비정형 데이터를 저장하고 관리하기 위한 오픈 소스 기반의 비관계형 데이터베이스 관리 시스템이다. 2009년 살바토르 산필리포가 처음 개발했다. 2015년부터 Redis Labs가 지원하고 있다. 모든 데이터를 메모리로 불러와서 처리하는 메모리 기반 DBMS이다. BSD 라이선스를 따른다. 위키백과 후다닥 정리하는 장점 - 고가용성구현이 가능 ( Master - slave, Chain 모델 등 )- 모든 데이터 구조 지원 : stack(LIFO), queue(FIFO) 지원 Key List Set Queue value array 집합 pop 등 json 형태 FIFO * HA (고가용성)- 구현 대상 : 365일 24시간 ..
[Mongo DB] 몽고디비 자주 쓰는 명령어 정리 / find() 위주 # MongoDB 정규표현식으로 검색시 대소문자 무시하는 방법먼저 일반적 방법으로 find()를 사용하여 검색시 정규표현식을 적용한다면 아래와 같이 쿼리문을 사용할 수 있습니다. 아래 예제는 컬렉션에서 sitename 컬럼에 정규식을 사용... 'web'이 포함된 값을 찾게됩니다. db.myCollection.find({'sitename': {'$regex': 'web' }}) 위 쿼리문은 web의 대소문자 구분을 하지 않습니다. 만약 web, WEB 처럼 대소문자 구분없이 모든 값을 찾으려면? 이 경우 $option 값을 추가해야합니다. 아래는 수정된 쿼리문입니다. @ 수정 후 MongoDB 쿼리 db.myCollection.find({'sitename': {'$regex': 'web', '$optio..
[스프링] 스프링 Spring AJAX 406 Not Acceptable 에러시 해결법 org.codehaus.jacksonjackson-mapper-asl1.5.0 produces = "application/json"를 안붙혀서 라는데 실제로는 위의 코드가 pom.xml에 위의 코드가 없을 가능성이 크다. 저걸로도 에러가 뜬다면 produces = "application/json"을 mapper쪽에 붙히면 될것이다. @ResponseBody@RequestMapping(value = "/ajax", method = RequestMethod.POST, produces = "application/json")public ArrayList ajax() { 출처: http://stratosphere.tistory.com/54 [StratoSphere Stream]
[SSL] 최신 안드로이드 브라우저에서 SSL 인증서 경고가 뜨는 경우 다른 디바이스에서는 문제가 없는데 안드로이드 기본 브라우저(혹은 안드로이드 크롬)에서 SSL 인증서 경고가 발생한다면 Intermediate Certification 문제를 의심해볼 필요가 있다.우선 다음 링크에서 문제가 있는 URL을 체크해보자.GeoCerts SSL Checker GeoTrust SSL Certificates at Wholesale Prices - GeoCertswww.geocerts.com만약 제일 아래 항목인 Certificate Chain Complete 부분에서 오류가 난다면 서버에서 SSL 인증서를 적용할 때 CA 부분이 정상적으로 설정되어지지 않았다는 것이다. 따라서 다음과 같이 CA 번들을 생성하거나 해당 인증서를 제공하는 곳에서 CA 번들을 다운로드 받아야 한다.(여기서..