安装mongo
1、本地下载mongoDB安装包
MongoDB官网 https://www.mongodb.com/download-center/community?jmp=nav
注意:下linux版,tgz格式。
下载完成后上传到linux虚拟机。
2、解压
tar -xvzf /root/mongodb-linux-x86_64-4.0.10.tgz
3、配置环境变量
用vi编辑器打开环境变量配置文件。
vi /etc/profile
在文件最后面添加mongo环境变量
export MONGO_HOME=/root/mongodb-linux-x86_64-4.0.10
export PATH=$PATH:$MONGO_HOME/bin
使配置的环境变量立即生效
source /etc/profile
4、创建数据库文件
在mongo根目录下创建db、log两个文件夹,用以存放数据库数据;创建mongo.conf文件用来编写配置信息。
cd /root/mongodb-linux-x86_64-4.0.10
mkdir db
mkdir log
5、编写配置monodb.conf文件
用vi编辑器打开配置monodb.conf文件
vi /root/mongodb-linux-x86_64-4.0.10/bin/mongodb.conf
复制粘贴下面的信息:
注意:第二行和第三行为自己创建的db和log文件夹路径,只用改这两行。
提示:vi编辑器中按字母 i 进入编辑模式,按esc退出键,接着输入 :wq! 回车 保存退出。
port=27017 #端口
dbpath=/root/mongodb-linux-x86_64-4.0.10/db #数据库存文件存放目录
logpath=/root/mongodb-linux-x86_64-4.0.10/log/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
#noauth=true #不启用验证
auth=true #启用用户登陆验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
6、启动
提示:mongod --config是命令,后面是编写的mongobd.conf配置文件路径,路径和命令直接有个空格。
mongod --config /root/mongodb-linux-x86_64-4.0.10/bin/mongodb.conf
7、配置自启动
创建mongodb.service文件:
vi /lib/systemd/system/mongodb.service //在system目录下打开编辑mongodb.service文件,没有会自动创建
在打开的页面填写如下语句:
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/root/mongodb-linux-x86_64-4.0.10/bin/mongod -f /root/mongodb-linux-x86_64-4.0.10/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/root/mongodb-linux-x86_64-4.0.10/bin/mongod --shutdown -f /root/mongodb-linux-x86_64-4.0.10/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
提示:
- 这个文件中的ExecStop、ExecStart这两行是填写的自己mongod和mongodb.conf文件的路径。
- 编辑完成后按 esc退出键 -> 输入 :wq! -> 回车 ,保存退出。
注意:
路径一定要写对,我就是因为里面多了个字母d,启动服务是老是报如下错,最后按它报错提示输入 systemctl start mongodb.service 命令查看报错原因,发现是路径错了;而且这里貌似不能有汉字,我加了汉字注释就报这个错。
此外,报这个错有可能是mongodb.conf文件打错字了,应为我们运行启动停止命令其实是运行了mongodb.service文件,而我们在.service文件又指定了mongod文件和mongodb.conf文件路径,所以报这个错只有可能是.service的文件那两个路径不对(前提是service的内容是复制粘贴的,不是自己手打的,要是手打就要好好检查是否都输入正确)。因为mongod文件不是我们编写的,是mongo自带的文件,不可能出错,所以如果路径对那就是.conf文件输入有误。
重启服务器:
配置完服务后一定要重启服务上面配置的文件才会生效。
systemctl daemon-reload
给权限:
chmod 754 /lib/systemd/system/mongodb.service
启动服务:
systemctl start mongodb.service //启动服务
systemctl stop mongodb.service //关闭服务
systemctl enable mongodb.service //设置开机自启,以后不用手动开启
查看mongo端口是否开启:
如果有返回结果就是已启动,如果什么都没有返回则是不启动。
netstat -nltp|grep 27017
提示:如果报-bash: netstat: command not found的错,运行安装yum install net-tools即可解决。
8、创建用户
因为我们在mongodb.conf文件配置了auth=true (启用用户登陆验证),所以需要创建用户用以登录验证。
use admin
db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})
这时在用mongo 192.168.0.xxxx:27017方式连接登录就会连接失败,必须要密码才能正常连接
密码连接如下:
mongo 192.168.0.xxx:27017/admin -u root -p 123456
如果没有密码也可连接,但是操作数据库却会报错,则需要如下命令登录:
db.auth("root", "123456") //用户名和密码
创建删除用户:https://blog.csdn.net/han_cui/article/details/54314728
-----------------------centos7安装mongoDB数据库完毕----------------
mongo的简单使用
1、打开mongo命令窗口
cd /root/mongodb-linux-x86_64-4.0.10/bin/ 运行到mongo的bin目录下
./mongo 启动运行mongo文件
2、创建数据库
use mydb 打开mydb文档,没有会自动创建一个
3、添加数据
db.mydb.insert({"name":"zhang","age":"21"})
4、查询
db.mydb.find({"name":"zhang"})
5、删除
db.mydb.deleteOne({"name":"zhang"})