作者:曾经 | 来源:互联网 | 2014-05-28 16:53
1、解压tgz文件mvmongodb-linux-i686-2.2.2.tgz/usr/local/mongodb2、进入/usr/local/mongodbchmod777bin/*不写的话后面的代码无法执行3、建立两个目录、mkdir/home/mongodb_data/logmkdir/home/mongodb_
1、解压tgz文件
mv mongodb-linux-i686-2.2.2.tgz /usr/local/mongodb
2、进入/usr/local/mongodb
chmod 777 bin/* 不写的话后面的代码无法执行
3、建立两个目录、
mkdir /home/mongodb_data/log
mkdir /home/mongodb_data/data
3、启动并且后台运行
/usr/local/mongodb/bin/mongod
--dbpath=/home/mongodb_data/data/
--logpath=/home/mongodb_data/log/mongodb.log -logappend
--fork
4、加入到开机启动
echo "rm -rf
/home/mongodb_data/data/mongod.lock" >> /etc/rc.local
echo "/usr/local/mongodb/bin/mongod
--dbpath=/home/mongodb_data/data/
--logpath=/home/mongodb_data/log/mongodb.log -logappend --fork"
>> /etc/rc.local
同等配置再次安装一台服务器
Mongodb已经配置结束
5、主从配置
我使用我自己的虚拟机192.168.78.33:从
192.168.78.5:主
在主上执行
/usr/local/mongodb/bin/mongod --fork
--master --oplogSize=4096 --port 27017
--dbpath=/home/mongodb_data/data/
--logpath=/home/mongodb_data/log/mongodb_master.log
在从上执行
/usr/local/mongodb/bin/mongod --fork
--slave --source 192.168.78.5:27017 --port 27017
--dbpath=/home/mongodb_data/data/
--logpath=/home/mongodb_data/log/mongodb_slave.log
如果执行不成功,查看27017端口开放没有
6、测试数据
进入主的bin目录下面执行shell语句./mongo或者 sh mongo
执行use janlyone
db.users.save({name:”zhaojie”})
db.users.find()
show dbs
然后可以发现janlyone这个数据库,再进入从数据库中show
dbs也可以发现janlyone这个数据库
7、备份
1> ./mongodump -h dbhost -d dbname -o
dbdirectory
-h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d:需要备份的数据库实例,例如:janly
-o:备份的数据存放位置,例如:/opt/,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个janly目录,这个目录里面存放该数据库实例的备份数据。
2>./mongorestore -h dbhost -d dbname --directoryperdb
dbdirectory
-h:MongoDB所在服务器地址
-d:需要恢复的数据库实例,例如:janly,当然这个名称也可以和备份时候的不一样,比如janly2
--directoryperdb:备份数据所在位置,例如:/opt/janly
自动备份任务
在mongo的bin文件夹下建立sh文件,命名start(随便命名)
执行start文件,看看是否成功
crontab ?e 编辑crontab服务文件
* 1 * * * /bin/sh /usr/local/mongodb/bin/start.sh
/sbin/service crond start
ps -ax | grep cron 查看服务是否开启