https://blog.youkuaiyun.com/qq_47844519/article/details/117573395
参照上面windows的方法配置即可,windows和linux下两个流程一模一样。
注意wget的坑
在linux环境里面主要通过各种命令操作系统。
下载注意:通过wget下载的时候如果不能下载,报错,就去检查防火墙是否关闭:
systemctl status firewalld
systemctl stop firewalld.service //停止防火墙,但是下次开机还是会重启
systemctl disable firewalld.service //禁用防火墙,下次开机也不会启动,推荐这种,省事儿
防火墙关闭后如果还不能下载,那估计就是dns错误了,需要配置dns服务器
vim /etc/resolv.conf
添加这两句
nameserver 8.8.8.8
nameserver 8.8.4.4
假如还报错,那就:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
修改
onboot=true
基本上wget的坑就踩完了。
安装的坑
这个坑不多,主要是下载版本要注意,我就是下载的版本不对,导致文件bin目录下少了很多程序。
我下载的版本:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.22.tgz
之前下载的是:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.17.tgz
千万别下载4.4.17的版本,那玩意儿bin目录下该有的指令和程序一个都没有,一运行一堆错。
下载命令:
//下载
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.22.tgz //你当前在哪个目录,他就下载到哪个目录
//解压
tar -zxvf mongodb-linux-x86_64-rhel70-4.2.22.tgz //也是默认解压到当前目录
运行的坑
根据上面博客的要求,我们需要配置两个分片,一个server,一个router。总共要运行7个节点。所以我们需要7个端口
运行:
//运行指令
./mongod -config /path/config_name.conf
config文件内容:
port=10000 //端口号
fork=true //以守护进程运行服务
logpath=/xz/test1/mongo.log //日志位置
dbpath=/xz/test1/db //数据库位置
logappend=true //以追加的方式更新日志,如果没有,linux下mongodb服务重启时会覆盖掉log文档,影响不大,可以有,也可以没有。
启动后就是这样
但是偶尔会报错,报child process failed。。。。。。。。。。。。。之类的错误
这时候步骤就是关闭该服务,删除log文件,检查config文件,删除data目录下mongod.lock文件,最后重启即可
rm -f 文件名 //删除某文件
vi 文件名 //进入某文件
netstat -lanp | grep "port" //查看某端口号的进程
kill listennum //杀死该进程
或者链接shell,进入该mongodb服务,在admin数据库下使用命令:
db.shutdownServer()//关闭该服务
差不多坑就这些。
配置的坑
和在windows上面一模一样。但是有一些注意事项,在router添加shard的时候,要一个节点一个节点地添加,不能一下子加好几个节点进去,否则会报错。
通过fork=true可以让mongodb以守护线程运行。但是fork参数只有linux系统才有用,windows下不能使用。在windows下面重启mongodb服务需要把log文件删了
但是在linux下面貌似不用删除,但是也不一定,我觉得保险起见删了更好。
差不多就这些。