MongoDB安装和部署
本文最后更新于:2023年4月15日 下午
MongoDB的版本可以在官网 https://docs.mongodb.com/manual/installation/ 上查询。
我们使用的是社区版。
mac
目前用mac来开发,需要在本地安装运行一个mongdb,便于测试调试。
安装
mac上安装mongodb。在终端中用brew来安装速度有点太慢了。
我们去 https://www.mongodb.com/try/download/enterprise 下载一个mac使用的版本。
在网页右侧选择mongodb版本(这里选的是4.4.4),Platform选择macOS,压缩格式选tgz即可。
点击Download需要填一些资料。填好后确认Submit即可。下载后解压文件,得到一个文件夹。
1 |
|
我们将这个目录复制到/usr/local/mongo
中,需要用到管理员权限。
修改~/.bash_profile
,添加如下命令。即mongo的目录添加到环境变量中1
2# mongo db
export PATH=$PATH:/usr/local/mongo/bin
此时可以重启命令行(终端)。
检查版本mongod --version
1
2
3
4
5
6
7
8
9
10
11
12~ $ mongod --version
db version v4.4.4
Build Info: {
"version": "4.4.4",
"gitVersion": "8db30a63db1a9d84bdcad0c83369623f708e0397",
"modules": [],
"allocator": "system",
"environment": {
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
能看到版本说明mongodb安装完成。
启动
Mac上启动。我们可以指定数据库路径--dbpath
和log位置--logpath
1
sudo mongod --dbpath /Users/rustfisher/.mongodb/data --logpath /Users/rustfisher/.mongodb/log/mongodb1.log
如果不用sudo
,可能会报错1
ERROR: child process failed, exited with 14
后台启动,需要加上--fork
1
2
3
4$ sudo mongod --dbpath /Users/rustfisher/.mongodb/data --logpath /Users/rustfisher/.mongodb/log/mongodb1.log --port 1993 --fork
about to fork child process, waiting until server is ready for connections.
forked process: 7580
child process started successfully, parent exiting
查询mongo进程1
2
3$ ps aux | grep mong
rustfisher 7608 0.0 0.0 4268424 732 s003 S+ 7:45下午 0:00.00 grep mong
root 7580 0.0 0.2 5548488 27868 ?? S 7:44下午 0:01.02 mongod --dbpath /Users/rustfisher/.mongodb/data --logpath /Users/rustfisher/.mongodb/log/mongodb1.log --fork
Ubuntu
我们的服务器一般是Linux。接下来在Ubuntu上安装运行mongodb。
安装
Ubuntu上安装mongodb比较简单,用apt-get
命令。
先upadate一次1
sudo apt-get update
然后装上4.4.4版本的mongodb1
sudo apt-get install -y mongodb-org=4.4.4 mongodb-org-server=4.4.4 mongodb-org-shell=4.4.4 mongodb-org-mongos=4.4.4 mongodb-org-tools=4.4.4
等它装完后,看一下版本号1
2
3
4
5
6
7
8
9
10
11
12
13
14~$ mongod --version
db version v4.4.4
Build Info: {
"version": "4.4.4",
"gitVersion": "8db30a63db1a9d84bdcad0c83369623f708e0397",
"openSSLVersion": "OpenSSL 1.0.2g 1 Mar 2016",
"modules": [],
"allocator": "tcmalloc",
"environment": {
"distmod": "ubuntu1604",
"distarch": "x86_64",
"target_arch": "x86_64"
}
}
可以发现,这里的gitVersion和前面用mac装的是一样的。
一些关于Linux的操作笔记,可以访问 https://rustfisher.com/tags/Linux/
运行
Ubuntu操作mongodb的官方文档
默认的配置文件为 /etc/mongod.conf
把端口改为1993,服务器如果启用了防火墙,记得允许1993端口1
sudo ufw allow 1993
或者在云服务器控制台那里检查一些,是否开放了端口
服务器使用的是systemctl
启动mongodb1
sudo systemctl start mongod
查看状态1
sudo systemctl status mongod
重启1
sudo systemctl restart mongod
MongoDB Compasss
前面我们已经安装好了mongodb,并且运行起来了。接下来我们找一个有图形化界面的软件来访问数据库。
MongoDB Compass能让用户清晰地看到文档结构,执行查询,修改等等操作。
在这里可以下载MongoDB Compasss https://www.mongodb.com/try/download/compass
这里我们使用mac下的1.25.0版本。
连接到本地的数据库,在Compass中选择新建连接1
mongodb://127.0.0.1:1993/rustfisher-db?readPreference=primary&appname=MongoDB%20Compass&ssl=false
前面我们启动mongodb是在1993端口,连接的时候要注意端口号。
127.0.0.1
是我们本地的ip,如果要连接到服务器的mongodb,一般可以直接用服务器ip来连接。
例如服务器公网ip是1.2.3.4
,端口是1993
1
mongodb://1.2.3.4:1993/rustfisher-db?readPreference=primary&appname=MongoDB%20Compass&ssl=false
连上mongodb后,就可以自由地进行操作了。