首先。应该了解下什么情况下使用mongodb,什么情况下用mysql:
业务需要事物,使用mysql,因为mongodb不支持事物
数据量大,但是数据本身价值不大,使用mongodb
数据是非结构化的,且数据量大,使用mongodb
业务未来走向不明确,使用mongodb,方便扩展
1.下载安装
## 使用wget下载4.0.6版本
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.6.tgz
## 解压
tar -zxvf mongodb-linux-x86_64-4.0.6.tgz
## 重命名为 mongodb-4.0.6
mv mongodb-linux-x86_64-4.0.6 mongodb-4.0.6
2.配置变量
vim /etc/profile
## 1、先定义MONGO_HOME;2、在PATH中追加$MONGO_HOME/bin:
## 多个目录使用:分割
export MONGO_HOME=/opt/mongodb-4.0.6
export JAVA_HOME=/opt/jdk/jdk1.8.0_144
export PATH=$JAVA_HOME/bin:$PATH:$MONGO_HOME/bin:
3.配置目录
## 创建 db 和 logs目录
mkdir -p /data/mongodb/db
mkdir -p /data/mongodb/logs
4.配置conf
在mongo安装bin目录创建 mongodb.conf文件
cd /opt/mongodb-4.0.6/bin
vim mongodb.conf
具体配置mongodb.conf如下
dbpath = /data/mongodb/db #数据文件存放目录
logpath = /data/mongodb/logs/mongodb.log #日志文件存放目录
port = 27017 #端口
bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1是只允许本地访问
5.启动
./mongod -f mongodb.conf &
## 进入mongodb数据库
mongo
## use product 没有product 讲创建
use product
## 看看有哪些数据库
show dbs
db.createUser({user:"root",pwd:"123456",roles:["root","userAdminAnyDatabase"]}) -- 建立root并且分配角色
6.来个demo
## 新增
db.students.save({"id":"1","name":"jack"})
## 查询
db.students.find({"id":"1"})
7.SpringBoot示例
7.1、maven引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-mongodb</artifactId>
</dependency>
7.2、定义entity
/**
* @description: 学生类
* @Date : 2019/3/10 下午8:13
* @Author : 石冬冬-Seig Heil
*/
@Document(collection = "students")
@Data
public class Student {
private String id;
private String name;
}
7.3、定义Repository
/**
* @description: StudentRepository
* @Date : 2019/3/10 下午8:17
* @Author : 石冬冬-Seig Heil
*/
@Repository
public interface StudentRepository extends CrudRepository<Student,String>{
}
7.4、定义Controller
/**
* @description: StudentController
* @Date : 2019/3/10 下午8:16
* @Author : 石冬冬-Seig Heil
*/
@RestController
@ResponseBody
@RequestMapping("/student")
public class StudentController {
@Autowired
StudentRepository studentRepository;
@PostMapping("save")
public String save(@RequestBody Student student){
studentRepository.save(student);
return "ok";
}
@PostMapping("findAll")
public Iterable<Student> findAll(){
return studentRepository.findAll();
}
}
7.5、properties配置
spring.data.mongodb.uri=mongodb://admin:123456@192.168.49.198:27017/product?maxPoolSize=256
7.6、PostMan来一下



本文对比了MongoDB与MySQL的适用场景,详细介绍了MongoDB的安装配置过程,包括环境变量设置、目录配置、conf文件编辑,并演示了基本操作如增删查改。此外,还提供了SpringBoot集成MongoDB的示例,涵盖Maven依赖、实体定义、Repository接口、Controller实现及PostMan测试。
4271

被折叠的 条评论
为什么被折叠?



