PHP에서 mongoDB 사용하기

PHP RPM 설치된 환경.


 


# pecl install mongo  로 설치하면 pecl.php.net 사이트에서 mongo관련 파일을 내려받아 컴파일 하게됨.


컴파일 완료후 /usr/lib64/php/modules/mongo.so 파일이 생성됨.


 


해당 파일을 /etc/php.ini 파일에서 아래와 같이 설정


extension=mongo.so


후에 아파치 재시작


 


phpinfo()를 통해 mongo가 제대로 로딩 되었는지 확인 후 사용

shading rs.initiate() 오류

mongoDB 에서 sharding 설정시,


첫번째 node를 primary로 설정시 rs.initiate()로 설정할 수 있으나, 아래와 같은 오류가 발생하는 경우가 발생


 







[root@loony22-test1 mongodb]# ./mongo mongodbtest:30000
MongoDB shell version: 2.0.6
connecting to: mongodbtest:30000/test


 > rs.initiate()
{
        “info2” : “no configuration explicitly specified — making one”,
        “me” : “mongodbtest:30000”,
        “errmsg” : “couldn’t initiate : can’t find self in the replset config my port: 30000”,
        “ok” : 0
}


 






$ sudo hostname (name chosen above including the .local at the end)

LINUX에서 HOSTNAME확인후 표시되는 HOSTNAME으로 mongo 접근


[root@mongodbtest mongodb]# ./mongo hostname:30000
MongoDB shell version: 2.0.6
connecting to: hostname:30000/test
> rs.initiate()
{
        “info2” : “no configuration explicitly specified — making one”,
        “me” : “hostname:30000”,
        “info” : “Config now saved locally.  Should come online in about a minute.”,
        “ok” : 1
}
>


 


참고 URL :  http://www.mongodb.org/display/DOCS/Replica+Sets+Troubleshooting