准备
1,服务器购买成功后,连接SSH Shell和FileZilla
2,登录下面的网址下载mongodb
https://www.mongodb.com/download-center#community
说明下,这里用的版本比较低,是因为现在这个服务器准备做另外一个服务器的迁移工作,所以mongodb的版本和原有服务器版本一致,防止出现数据导入出问题;
3,把下载下来的压缩问题,通过FileZilla上传到服务器的/home/mongodb/下
4,登录ssh shell,进入mongodb压缩包的目录
cd /home/mongo/
5,解压缩
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
解压缩后把解压缩的文件夹名太长,重新命名下(我这里是通过filezilla重命名的,也可以通过命令重命名);
配置
1,创建logs和data目录,如图所示
2,创建配置文件mongodb.conf,并配置相关参数
port=27001
dbpath=/home/mongodb/mongodb3/mongodb/data/db/
logpath=/home/mongodb/mongodb3/mongodb/logs/mongodb.log
pidfilepath=/home/mongodb/mongodb3/mongo.pid
fork=true
logappend=true
shardsvr=true
auth=false
3,启动服务
./bin/mongod -f mongodb.conf
4,启动客户端
./bin/mongo 127.0.0.1:27001
说明:由于在配置第2步设置的端口不是默认端口,所以这里启动要指定mongodb.conf文件指定的端口;否则启动不起来;
5,杀死mongodb服务
ps -def|grep mongo
kill -4 20045
配置权限
1,命令行配置
> show dbs
admin 0.078GB
local 0.078GB
> use admin
switched to db admin
> db.createUser({ user:'root',pwd:'111@20180305',roles:[{ role:'userAdminAnyDatabase',db:'admin' }] })
Successfully added user: {
"user" : "root",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
> db.auth('root','111@20180305')
> use edu
switched to db edu
> db.createUser({ user:'daoda',pwd:'111@20180305',roles:[{ role:'readWrite',db:'edu' }] })
Successfully added user: {
"user" : "daoda",
"roles" : [
{
"role" : "readWrite",
"db" : "edu"
}
]
}
> db.auth('daoda','111@20180305')
2,修改mongodb.conf
auth=true
3,重启mongodb服务
[root@iZm5egfo7g34520g6yn0t0Z mongodb3]# ps -def|grep mongo
root 20152 1 0 17:52 ? 00:00:00 ./bin/mongod -f mongodb.conf
root 20164 10541 0 17:54 pts/0 00:00:00 grep --color=auto mongo
[root@iZm5egfo7g34520g6yn0t0Z mongodb3]# kill -4 20152
[root@iZm5egfo7g34520g6yn0t0Z mongodb3]# ./bin/mongod -f mongodb.conf
使用
1,使用本地电脑的客户端连接服务器的mongodb,新建个连接,把所有参数都正确输入,“test”按钮,发现根本连不上服务器,提示如图:
这是因为在阿里云的服务器没有开启端口;
2,开启阿里云安全访问端口,先进入本实例服务器:
3,选择“配置规则”,进入规则配置页面,选择右上角的“添加安全组规则”,并设置各项参数如下:
这时候应该就可以访问了,
这里请注意,这样设置后打开了所有的端口,安全起见还是用到那个打开那个,后续在优化下这里。
数据迁移
直接拷贝数据库文件
此方法简单粗暴,要在导出和导入的两个mongodb相同版本下进行,否则强烈不建议使用此方法
1,停止mongodb服务
2,复制要拷贝的数据库所以文件,在data/db目录下
3,拷贝到要导入的data/db目录下
4,cd到mongo安装目录下,重启mongodb服务
至此整个安装部署和数据迁移已经完成!