quando eu configuro mongodb no meu Ubuntu, eu tento: ./mongo ele mostra este erro:
couldn't connect to server 127.0.0.1 shell/mongo.js
então o que eu posso fazer ,
obrigado
quando eu configuro mongodb no meu Ubuntu, eu tento: ./mongo ele mostra este erro:
couldn't connect to server 127.0.0.1 shell/mongo.js
então o que eu posso fazer ,
obrigado
mongod
primeiro
Respostas:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
Por favor observe o seguinte:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
sudo service mongodb start
Aqui está tudo, às vezes, demora um pouco para iniciar o mongo após realizar essas operações.
Mon Aug 22 11:28:17.919 Can't specify both --journal and --repair options.
Tentando executar $ mongod
Se você receber um erro como
MongoDB shell version: 2.0.5
connecting to: test
Fri Jun 1 11:20:33 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception: connect failed
hisham-agil:~ hisham$ mongod
mongod --help for help and startup options
Fri Jun 1 11:24:47 [initandlisten] MongoDB starting : pid=53452 port=27017 dbpath=/data/db/ 64-bit host=hisham-agil.local
Fri Jun 1 11:24:47 [initandlisten] db version v2.0.5, pdfile version 4.5
Fri Jun 1 11:24:47 [initandlisten] git version: nogitversion
Fri Jun 1 11:24:47 [initandlisten] build info: Darwin gamma.local 11.3.0 Darwin Kernel Version 11.3.0: Thu Jan 12 18:48:32 PST 2012; root:xnu-1699.24.23~1/RELEASE_I386 i386 BOOST_LIB_VERSION=1_49
Fri Jun 1 11:24:47 [initandlisten] options: {}
Fri Jun 1 11:24:47 [initandlisten] exception in initAndListen: 10296 dbpath (/data/db/) does not exist, terminating
Fri Jun 1 11:24:47 dbexit:
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to close listening sockets...
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to flush diaglog...
Fri Jun 1 11:24:47 [initandlisten] shutdown: going to close sockets...
Fri Jun 1 11:24:47 [initandlisten] shutdown: waiting for fs preallocator...
Fri Jun 1 11:24:47 [initandlisten] shutdown: lock for final commit...
Fri Jun 1 11:24:47 [initandlisten] shutdown: final commit...
Fri Jun 1 11:24:47 [initandlisten] shutdown: closing all files...
Fri Jun 1 11:24:47 [initandlisten] closeAllFiles() finished
Fri Jun 1 11:24:47 dbexit: really exiting now
Então você se deparou com um erro básico de inicialização que é bastante comum.
Por padrão, o mongod tentará usar / data / db para seus arquivos de banco de dados, que neste caso, não existe.
Você não pode começar
mongo
até você lidar
mongod.
Tente criar esses diretórios e verifique se eles podem ser gravados pelo mesmo usuário que está executando o processo mongod.
** Veja pergunta semelhante - Obtendo um erro, "Erro: não foi possível conectar ao servidor 127.0.0.1 shell / mongo.js" e ao tentar executar o mongodb no mac osx lion
Na verdade, isso não é um erro ... O que acontece aqui é que o Mongo depende de um daemon para executar o servidor de banco de dados local, então, para " iniciar " o servidor mongo em seu shell, você deve iniciar o serviço mongo primeiro.
Para Fedora Linux (que é a Distro que uso), você deve executar estes comandos:
1 sudo service mongod start
2 mongo
E aí está! o servidor vai rodar. Agora, se você deseja que o serviço Mongo inicie quando o sistema inicializar, você deve executar:
sudo chkconfig --levels 235 mongod on
E isso é tudo! Se você fizer isso, agora no shell você só precisa digitar mongo para iniciar o servidor, mas é basicamente isso, o problema é que você tem que iniciar o SERVIÇO primeiro e depois o SERVIDOR :)
PS Os comandos que postei podem funcionar em outras distros Linux também, não apenas no fedora ... Caso não, talvez você tenha que ajustar algumas palavras dependendo da distro que estiver usando;)
sudo service mongodb start
Tive o mesmo problema quando tentei instalar o mongo. Recebi Erro como,
Erro
"Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84"
Solução:
Primeiro instale o mongod usando:
sudo apt-get install mongodb-server
Então digite
mongod --dbpath /mongo/db
Então
sudo rm /var/lib/mongodb/mongod.lock
Então
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
Obrigado
Você precisa deletar o lockfile mongod.lock
ou /var/lib/mongodb/mongod.lock
no ubuntu, então você precisa executar mongod.exe
ou service mongodb start
no ubuntu primeiro, depois executar mongo.exe
ou mongo
no ubuntu.
.exe
arquivo.
Ou seu mongod não está rodando (verifique usando o comando "ps") ou ele está escutando em algum endereço IP externo e não em localhost. Portanto, primeiro verifique a lista de processos se 'mongod' está em execução. Se sim, verifique com "netstat -nap" para a porta relacionada.
Claro que você pode iniciar o mongod no console manualmente ou até mesmo olhar para o arquivo de log do mongod (se houver um configurado ... dependendo de como você instalou o mongod).
Primeiro você tem que se certificar de que todos os arquivos e diretórios em sua pasta / var / lib / mongodb / (ou qualquer pasta que dbpath aponte) pertencem ao usuário mongodb e grupo mongodb.
cd /var/lib/mongodb/
sudo chown mongodb filename.*
sudo chgrp mongodb filename.*
sudo chown -R mongodb directory
sudo chgrp -R mongodb directory
(Substitua o nome do arquivo e diretório com seus respectivos nomes)
Depois, você pode remover o bloqueio, reparar o banco de dados e reiniciar o daemon como outras pessoas já mencionaram:
sudo rm /var/lib/mongodb/mongod.lock
sudo -u mongodb mongod -f /etc/mongodb.conf --repair
sudo service mongodb start
sudo -u mongodb mongod -f /etc/mongod.conf --repair
no Ubuntu 14.
Primeiro inicie o seu servidor mongo por
Users-MacBook-Pro:csv1 Admin$ mongod
all output going to: /usr/local/var/log/mongodb/mongo.log
Em seguida, abra outra janela de terminal e abra o shell
Users-MacBook-Pro:csv1 Admin$ mongo
Verifique também se a partição raiz tem espaço suficiente para iniciar o mongod.
df -h /
Você verá algo assim no lançamento do mongod:
Mon Aug 12 17:02:59.159 [initandlisten] recover : no journal files present, no recovery needed
Mon Aug 12 17:02:59.159 [initandlisten]
Mon Aug 12 17:02:59.159 [initandlisten] ERROR: Insufficient free space for journal files
Mon Aug 12 17:02:59.159 [initandlisten] Please make at least 3379MB available in /var/lib/mongodb/journal or use --smallfiles
Mon Aug 12 17:02:59.159 [initandlisten]
Mon Aug 12 17:02:59.159 [initandlisten] exception in initAndListen: 15926 Insufficient free space for journals, terminating
Mon Aug 12 17:02:59.159 dbexit:
Mon Aug 12 17:02:59.159 [initandlisten] shutdown: going to close listening sockets...
Pode ser uma combinação de $ PATH e problema de permissão.
Tente seguir as etapas fornecidas abaixo:
Atualize sua variável $ PATH para apontar para seu arquivo bin MongoDB. No meu caso, instale o MongoDB nesta pasta:
/usr/local/Cellar/mongodb/2.4.6/
Para atualizar sua variável $ PATH, faça o seguinte:
$ sudo vi /etc/paths
Em seguida, pressione 'i' para inserir texto em Vi e anexe o caminho do MongoDB ao final do arquivo 'caminhos' e reinicie o terminal.
/usr/local/Cellar/mongodb/2.4.6/bin
Use 'Esc: w q' para salvar e sair do editor Vi.
Use echo para exibir sua variável de caminho:
$ echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/Cellar/mongodb/2.4.6/bin
Agora tente verificar a versão do Mongo, se você estiver seguindo, então você está no caminho certo!
$ mongo --version
MongoDB shell version: 2.4.6
Agora precisamos criar o diretório do banco de dados. Eu usei o local padrão '/ data / db' sugerido nos documentos do MongoDB. Eu também criei um diretório de log para evitar quaisquer problemas de permissão enquanto o Mongo tenta criar qualquer log. Mude a propriedade e isso fará o trabalho.
$ sudo mkdir /data/db
$ sudo mkdir /data/log
$ whoami
username
$ chown -R username /data
Agora, criaremos um arquivo de configuração padrão para MongoDB a ser fornecido pela primeira vez que executarmos o comando 'mongod'. Agora, também gostaria de salientar que 'mongod' iniciará um serviço, que ouvirá as conexões de dados de entrada. Isso é semelhante a ter '$ service mysqld start' executado. Vamos em frente e criar o arquivo de configuração. Lembre-se de que criei um arquivo de configuração muito básico. No entanto, você pode adicionar muitas outras variáveis para configurar o MongoDB. Esta é a primeira vez que estou jogando com o MongoDB, então sei tanto quanto leio nos documentos do MongoDB! Criei 'mongodb.conf'.
$ sudo vi /etc/mongodb.conf
Adicione o seguinte:
fork = true
port = 27017
quiet = true
dbpath = /data/db
logpath = /data/log/mongod.log
logappend = true
journal = true
Observe que a porta padrão para o servidor MongoDB é 27017. Use seu próprio caminho para dbpath e logpath que você criou na Etapa - 5. Não se esqueça de fechar e salvar o arquivo conf.
Agora estamos prontos para iniciar nosso serviço MongoDB. Abra duas instâncias do Terminal. No Terminal 1, digite:
$ sudo mongod -f /etc/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 3516
all output going to: /data/log/mongod.log
child process started successfully, parent exiting
Se você receber a mensagem acima, saiba que iniciou com êxito o serviço Mongod.
Agora, para se conectar a ele, no Terminal 2 digite o seguinte:
$mongo test
MongoDB shell version: 2.4.6
connecting to: test
Server has startup warnings:
Tue Sep 3 16:55:43.527 [initandlisten]
Tue Sep 3 16:55:43.527 [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
>
Ignore os avisos, mas você está conectado com sucesso ao banco de dados de 'teste'! Legal!
Isso é tudo. Eu apliquei essa solução quando tentei instalar uma cópia do MongoDB no meu Mac pela primeira vez. Veja se isso ajuda você também.
Para postagens detalhadas, você pode ir aqui - http://arcanebytes.com/2013/09/03/mongodb-installation-on-mac-os-x/#comment-1036112094 .
Espero que ajude!
Saúde, Chinmay