mongodb的安装
1.先下载最新的mongodb版本
wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.2.tgz
wget 下载的文件默认在当前目录
2.解压大指定目录
tar -zxvf mongodb-linux-i686-2.0.2.tgz /usr/local/mongodb
3.创建数据库运行时需要的数据存储和日志目录
mkdir -p /data/mongodb
4.配置mongodb启动参数
vi /etc/mongodb.conf
写入如下参数:
dbpath=/home/yangzerun/mongodb/data/mongodb
logpath=/home/yangzerun/mongodb/data/mongodb/mongodb.log
logappend=true
replSet=repset/192.168.1.231:27017//副本集配置选项
进入mongodb安装目录
# cd /usr/local/mongodb/bin
运行mongo
# ./mongod -f /etc/mongodb.conf &
通过ps -def | grep mongod 可以查看到已经启动的服务进程
配置mongodb的副本集
#使用admin数据库
use admin;
配置
config = { _id:"repset", members:[
{_id:0,host:"192.168.1.230:27017"},
{_id:2,host:"192.168.1.231:27017"}]
}
db.runCommand({
"_id" : "repset",
"members" : [
{
"_id" : 0,
"host" : "192.168.1.230:10000"
},
{
"_id" : 1,
"host" : "192.168.1.231:10001"
}
]
})
#初始化副本集配置
rs.initiate(config);
#输出成功
{
"info" : "Config now saved locally. Should come online in about a minute.",
"ok" : 1
}
查看副本集状态
rs.status();
//查看连接数
db.serverStatus().connections
//C驱动的安装
下载C客户端包,按照readme步骤安装即可
使用中说明
db.QD_ROADMARK_INFO.insert({"App_num" : " 651807462@qq.com","name":"迪拜","gps":{"wd":22.541275,"jd":113.948915},"creation_time":new Date()})
创建集合:
db.createCollection("QD_TERMINAL_LOCATION_INFO", { capped : false, autoIndexID : true, size : 6142800, max : 10000 } )
地理空间索引:
db.QD_TERMINAL_LOCATION_INFO.ensureIndex({"gps":"2d"})
查询:
$near:
db.QD_ROADMARK_INFO.find({"gps":{"$near":[22.56,113.948915]}})
$geonear
db.runCommand({gerNear:"QD_ROADMARK_INFO",near:[22.56,113.948915]})
gcc -o example1 example-client.c $(pkg-config --cflags --libs libmongoc-1.0)
更新:
db.QD_ROADMARK_INFO.update({"data_id":2254},{"$set":{"label":"meijing"}})
mongodb的使用阅读其官方文档特别重要,各种需求分析到位