如果是第一次安装,建议使用apt工具在终端安装:
官方推荐安装方法:https://docs.mongodb.com/v3.2/tutorial/install-mongodb-on-ubuntu/
1.导入公钥:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
2.创建安装文件
如果是Ubuntu 14.04
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
如果是Ubuntu 16.04
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
3.
重新载入本地安装数据库
sudo apt-get update
4.
安装MongoDB
sudo apt-get install -y mongodb-org
如果要指定某个版本的mongdb,可以如下配置
sudo apt-get install -y mongodb-org=3.2.21 mongodb-org-server=3.2.21 mongodb-org-shell=3.2.21 mongodb-org-mongos=3.2.21 mongodb-org-tools=3.2.21
5.安装robomongo数据库可视化软件
在此下载对应版本deb包并进行安装:https://studio3t.com/download-now/
如果通过
sudo apt-get purge mongodb-org*
卸载过mongodb, 或者发现上面的方法安装不了,可以考虑采用二进制文件进行安装:
官方教程:https://docs.mongodb.com/v3.2/tutorial/install-mongodb-on-linux/
1
从 https://www.mongodb.org/downloads
下载二进制文件,或者运行以下命令下载到home目录
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.21.tgz
2
解压下载文件
tar -zxvf mongodb-linux-x86_64-3.2.21.tgz
3
将解压好的文件拷贝到希望安装的目录如/usr
mkdir -p /usr/mongodb cp -R -n mongodb-linux-x86_64-3.2.21/ mongodb
4
将二进制文件添加到环境变量,Mongdb的二进制文件在/bin目录下,需要将其添加到环境变量中去
官方教程提示将以下命令添加到/.bashrc文件的末尾,但对我来说不起作用
export PATH=<mongodb-install-directory>/bin:$PATH 其中mongodb-install-directory是刚才你拷贝文件到的目录,如/usr/mongodb
我的解决方法是编辑
/etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
在开头添加mongodb的bin目录的路径,注意以冒号分割
PATH="/usr/mongodb/mongodb-linux-x86_64-ubuntu1404-4.0.2/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
运行下面命令使其生效
source /etc/environment && export PATH
如果你的shell跟我一样是zsh, 还需要
编辑 /etc/zsh/zshenv,在注释行后添加
source /etc/environment
使用echo $PATH查看发现path中有了该bin目录
如果便完成了mongodb的二进制文件安装
然互可安装robomongo管理数据库
#使用mongodb
mongodb默认使用/data/db文件夹存储数据库,运行
mongo 启动数据库
会发现
exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: /data/db, terminating
这是因为只有根用户才有根目录文件夹的写权限,要解决这个问题运行下面两条命令其一:
改变权限使得所有用户具有读写该文件夹的权限,不建议
sudo chmod -R go+w /data/db
只有当前用户具有写权限
> sudo chown -R $USER /data/db
至此安装完成, robomongo可以连接数据库,后台服务也可以启动