내 로컬 서버에 AMPPS와 함께 우분투 14.04를 사용하고 있습니다. mongoDB 확장을 사용할 수있게되었고 rockmongo에 데이터베이스와 콜렉션을 생성했습니다. mongo를 사용하는 터미널을 사용하는 경우에도 마찬가지입니다.연결에 실패했습니다 : localhost : 27017 : AMPPS를 사용하여 MongoDB 데이터베이스에 연결이 거부되었습니다
하지만 난 아래의 오류 메시지가 얻을 내 코드에서 MongoDB를 사용하려고 시도하고있을 때 :
<?php
// connect to mongodb
$m = new MongoClient();
echo "Connection to database successfully";
// select a database
$db = $m->laravel;
echo "Database mydb selected";
$collection = $db->laravel;
echo "Collection selected succsessfully";
$cursor = $collection->find();
// iterate cursor to display title of documents
foreach ($cursor as $document) {
echo $document["title"] . "\n";
}
?>
:
(!) Fatal error: Uncaught exception 'MongoConnectionException' with message 'Failed to connect to: localhost:27017: Connection refused' in /usr/local/ampps/www/TMongo.php on line 3
(!) MongoConnectionException: Failed to connect to: localhost:27017: Connection refused in /usr/local/ampps/www/TMongo.php on line 3
이 내가 MongoDB를 테스트하기 위해 노력했습니다 코드의 평화입니다
나는 모든 mongodb 프로세스를 죽이고 다시 시작하기위한 몇 가지 방법을 수색하고 시도했지만, 그들 중 누구도 나를 위해 일하지 않았다.
나는 실행하면ps -eF | grep 'mongo\|PID'
내가 얻을 :
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
root 3516 3331 0 223796 118188 3 12:42 pts/22 00:00:01 /usr/local/ampps/mongodb/bin/mongod --journal --pidfilepath=/usr/local/ampps/mongodb/data/pid --config=/usr/local/ampps/mongodb/mongo.conf
server 7091 25150 0 2939 2280 2 12:47 pts/26 00:00:00 grep --color=auto mongo\|PID
것은 내가 실행하면 sudo killall -15 mongod
그리고 다시 내가 위의 명령을 실행 내가 얻을 :
UID PID PPID C SZ RSS PSR STIME TTY TIME CMD
server 8299 25150 0 2939 2268 3 12:49 pts/26 00:00:00 grep --color=auto mongo\|PID
내 MongoDB를 서비스하는 동안이 명령을 실행 꺼짐 : sudo netstat -tlnp | grep 27017
mongodb 서비스를 시작하고 다시 netstat 명령을 실행할 때 얻을 수있는 것 :
tcp 0 0 0.0.0.0:27017 0.0.0.0:* LISTEN 9956/mongod
mongodb.conf : 참고로
#Turn on simple rest api
rest=true
journal=true
#Storage Engine Set to mmapv1
storageEngine=mmapv1
#Directory for Data Files
dbpath={$path}/mongodb/data/db
#log file to send write to instead of stdout - has to be a file, not directory
logpath={$path}/mongodb/logs/mongo.log
#Append to logpath instead of over-writing
logappend=true
#Specify port number
#port=27017
#Full path to pidfile (if not set, no pidfile is created)
pidfilepath={$path}/mongodb/data/pid
#Each database will be stored in a separate directory
directoryperdb=true
#Run "{$path}/mongodb/bin/mongod.exe" --help in command prompt for more help.
: 거기에 내가 설치 한 ampps 리눅스에 대한 기본 경로입니다 :/usr/지방/ampps/
내가 AMPPS 3.6와 우분투 14.04를 사용하고 있습니다 localserver. 이 문제를 어떻게 해결할 수 있습니까?
UPDATE 나는 파일을 mongodb.conf이 매개 변수를 추가하고 난이 실행 MongoDB를
bind_ip = 127.0.0.1
그런 다음 다시 시작했습니다 sudo netstat -tlnp | grep 27017
가 MongoDB를이 127.0.0.1:27017
그리고에서 수신 보인다 mongo를 사용하여 명령 줄에서 연결하려고하면 작동하지만 PHP 페이지에서 나는 여전히 같은 문제가 있습니다.
의견이 있으십니까?
명령 줄에서 연결할 수 있습니까? –
네, 몽고를 실행할 때 명령을 연결하고 실행할 수 있습니다. –
마비에게 올바른 문제가 있습니다. PHP에서 몽고 레퍼토리에 액세스 할 수 있습니까? –