Meteor가 실행되는 동안 다른 클라이언트에서 Meteor의 MongoDB에 액세스하려면 어떻게 해야 합니까?
Meteor가 실행되는 동안 Python 클라이언트에서 Meteor의 MongoDB에 액세스하고 싶습니다.
Meteor의 데이터베이스가 잠겨 있어서 mongod를 시작할 수 없습니다.
다른 클라이언트에서 데이터베이스에 액세스하려면 어떻게 해야 합니까?
그meteor
command는 깨끗한 방법을 제공합니다.실행 중인 mongod의 URL을 가져오는 방법
meteor mongo -U
파이썬에서 구문 분석할 수 있습니다.
Meteor는 당신이 3002 포트를 실행할 때 당신을 위해 mongod를 시작합니다.meteor
명령을 실행하고 mongo 데이터 파일을 저장합니다..meteor/local/db
출력지ps aux | grep 'mongod'
유성에서 사용하는 mongod 명령을 보여줍니다.
/usr/local/meteor/mongodb/bin/mongod --bind_ip 127.0.0.1 --smallfiles --port 3002 --dbpath /path/to/your/project/.meteor/local/db
따라서 당신의 몽고 클라이언트를 그에 맞게 연결하면 됩니다.파이썬에서:
>>> import pymongo
>>> con = pymongo.Connection(host='127.0.0.1', port=3002)
>>> con.database_names()
[u'meteor', u'local']
업데이트: 유감스럽게도 이런 방식으로 mongo에서 직접 변경하면 앱에 실시간으로 반영되지 않지만 변경 사항은 전체 페이지 로드에 반영됩니다.
명령은 다음과 같습니다.
PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp node bundle/main.js
또한 다음을 사용하여 서버 사이드 코드 내에서 찾을 수 있습니다.
process.env.MONGO_URL
실행 시 이 환경 변수를 설정하지 않더라도 기본값으로 설정됩니다.이렇게 내부적으로 검색됩니다(packages/mongo/remote_collection_driver.js).
하나는 다음과 같이 주어집니다.meteor mongo -U
는 기본 도메인/ip 및 db-name을 재구성하는 것처럼 보이지만 파일에 저장된 포트를 사용합니다.
서버 폴더의 아무 곳에나 저장하고 명령줄에서 읽을 수 있습니다.
console.log('db url: ' + process.env.MONGO_URL);
저는 실시간 데이터를 덮어쓰지 않고 셀레늄 테스트에서 테스트 데이터베이스를 사용하고 있는지 다시 확인하기 위해 웹 페이지를 설정했습니다.
다음은 Mongo URI 및 Mongo Database를 가져오기 위한 셸 스크립트입니다.
#!/bin/bash -eux
read -s -p "Enter Password: " password
cmd=$(meteor mongo --url myapp.meteor.com << ENDPASS
$password
ENDPASS)
mongo_uri=$(echo $cmd | cut -f2 -d" ")
mongo_db=$(echo $mongo_uri | cut -d/ -f 4)
#my_client_command_with MONGODB_URI=$mongo_uri MONGO_DB=$mongo_db
````
업데이트가 10초 지연된 경우:MongoD 블로그를 추적합니다!자세한 내용은 여기를 참조하십시오.
http://meteorhacks.com/lets-scale-meteor.html
스마트 컬렉션을 설치하고 사용해야 합니다(Meteor를 사용하여 컬렉션을 인스턴스화).유성 대신 스마트 컬렉션입니다.수집)을 클릭하면 업데이트가 기본적으로 즉시 수행된다는 것을 확인할 수 있습니다.
언급URL : https://stackoverflow.com/questions/10293781/how-do-i-access-meteors-mongodb-from-another-client-while-meteor-is-running
'programing' 카테고리의 다른 글
유닛 테스트 내부 코드가 번들 리소스를 찾을 수 없는 이유는 무엇입니까? (0) | 2023.05.06 |
---|---|
ASP에 필요한 확인란을 만들려면 어떻게 해야 합니까?NET 양식? (0) | 2023.05.06 |
목표-C: id와 void의 차이 * (0) | 2023.05.06 |
Windows용 ActivePerl 또는 StrawberryPerl 중 어느 것을 선택해야 합니까? (0) | 2023.05.06 |
PHP 스프레드시트로 매우 큰 스프레드시트 구축 (0) | 2023.05.06 |