centos7 安装MongoDB
1. 下载
地址:https://www.mongodb.com/try/download/community
2. 解压安装
-
/usr/local/src下创建文件夹,并将下载好的文件放到同级目录下
-
将压缩文件解压至mongoDB下
tar zxvf mongodb-linux-x86_64-rhel70-5.0.7-rc1.tgz -C /usr/local/src/mongoDB/
-
进入/usr/local/src/mongoDB/目录,修改文件名
mv mongodb-linux-x86_64-rhel70-5.0.7-rc1 mongoServer
3. 配置环境变量
修改/etc/profile配置
vim/etc/profile
添加
export MONGO_HOME=/usr/local/src/mongodb
export PATH=$PATH:$MONGO_HOME/bin;
保存退出,更新环境变量
source /etc/profile
4. 建立日志、数据、配置文件夹
- 进入/usr/local/src/mongoDB/mongoServer目录,创建data文件夹、log文件夹、etc文件夹。
mkdir data mkdir log mkdir config
- 进入 /usr/local/src/mongoDB/mongoServer/etc 目录,创建 mongodb.conf 文件
vi mongodb.conf
dbpath=/usr/local/src/mongodb/data#数据库存放 logpath=/usr/local/src/mongodb/log/mongodb.log#日志文件 port=27017#端口 bind_ip=0.0.0.0 fork=true#设置后台运行 #auth=true#开启认证
5. 启动MongoDB
执行启动指令
/usr/local/src/mongodb/bin/mongod --config /usr/local/src/mongodb/conf/mongodb.conf
创建一个用户
db.createUser({user:"admin",pwd:"123456",roles:[{role:"root",db:"admin"}]})
登录授权
db.auth("admin","123456")
6. 设置开机自启动
- 切换到服务配置文件目录
cd /etc/systemd/system
- 创建配置文件
vi mongodb.service
- 添加内容(注意文件路径)
[UNIT] Description=mongodb After=network.target remote-fs.target nss-lookup.target [Service] Type=forking ExecStart=/usr/local/src/mongodb/bin/mongod --config /usr/local/src/mongodb/conf/mongodb.conf ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/usr/local/src/mongodb/bin/mongod --shutdown --config /usr/local/src/mongodb/conf/mongodb.conf PrivateTmp=true [Install] WantedBy=multi-user.target
systemctl start mongodb.service #启动服务
systemctl stop mongodb.service #关闭服务
systemctl restart mongodb.service #重新启动服务
systemctl status mongodb.service #查看服务当前状态
systemctl enable mongodb.service #设置开机自启动
systemctl disable mongodb.service #停止开机自启动
7. spring boot简单整合MongoDB
-
导入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </dependency>
-
下载客户端,确保连接成功
-
配置
data: mongodb: uri: mongodb://192.168.163.3/itcc
-
测试
@Autowired private MongoTemplate mongoTemplate; @Test void test2(){ Book book = new Book("小黄书",22); mongoTemplate.save(book); }
保存成功
8. 碰到问题总结
-
报错
about to fork child process, waiting until server is ready for connections. forked process: 1231
原因是因为mongodb.conf文件中日志文件地址写错了,修改后就行了 -
启动时候报权限不足
-bash: /usr/local/src/mongodb/bin/mongod: 权限不够
进入bin的同级目录执行命令
chmod -R 740 bin
-
安装成功后连接报错
-bash: mongodb: 未找到命令
要写全限定名
/usr/local/src/mongodb/bin/mongo
-
写好mongodb.service后,执行关闭服务命令,无法杀掉进程
需要先使用mongod的命令关闭,才能起作用
/usr/local/src/mongodb/bin/mongod --shutdown --dbpath /usr/local/src/mongodb/data/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了