alma linux9.4搭建MongoDB6.0集群(三节点副本集)

步骤一:需求分析

        我的需求:原本MongoDB仅有一个节点,且物理机并无阵列卡、无UPS电源、未备份;数据丢失风险高。

        解决方案:在高性能、低性能物理服务器上分别新建一台虚拟机;因服务器仅两台,那么第三台咋搞???看了公司仓库,刚好有一台快报废的PC,装上alma linux9.4系统即可;准备就绪,开干。

步骤二:主机规划

IP

端口

主机

192.168.1.208

27017

高性能虚拟机

192.168.1.211

27017

低性能虚拟机

192.168.1.202

27017

低性能物理机

步骤三:在三台服务器上分别添加MongoDB存储库

        首先在三台服务器将MongoDB官方存储库添加到系统中,本次安装的是6.0版本,其他版本请传送至MongoDB官网

        1、创建存储库文件

sudo vi /etc/yum.repos.d/m
### 如何在 IntelliJ IDEA 中配置 MyBatis 动态 SQL 输出 为了实现 MyBatis 动态 SQL 的打印,可以通过调整日志框架的配置来完成。以下是具体的说明: #### 配置 Log4j 或其他日志框架 MyBatis 支持多种日志框架(如 SLF4J、Log4j 和 Commons Logging)。通过设置日志级别为 `DEBUG`,可以捕获并显示生成SQL 语句。 以下是个基于 Log4j 的示例配置文件内容: ```properties log4j.rootLogger=DEBUG, Console log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p %c - %m%n # 设置 MyBatis 日志级别为 DEBUG log4j.logger.org.mybatis=DEBUG log4j.logger.com.example.mapper=DEBUG ``` 上述配置会将 MyBatis 的运行时信息以及生成SQL 显示到控制台中[^1]。 #### 使用 MyBatis Plus 自动化特性 如果项目使用的是 MyBatis Plus,则其内置了些增强功能可以帮助简化开发流程。例如,在 Mapper 方法调用期间自动生成的日志也会包含最终执行的 SQL。 #### 处理特殊字符问题 当遇到类似于 `order` 这样的保留字作为表名的情况时,需注意手动为其加上反引号 `` 来避免语法错误。这通常发生在动态 SQL 场景下,因为 MyBatis 默认不会自动处理这些特殊情况[^3]。 #### 测试环境下的验证 确保测试类中的 SqlSession 已经被正确初始化,并且对应的 Factory Builder 不再参与后续操作之后即可丢弃它[^2]。这样能够减少不必要的资源占用同时保持程序逻辑清晰明了。 ```java // 创建 SqlSessionFactory 实例 () SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(reader); // 获取 Session 并关闭 builder 变量作用域外的对象引用 try(SqlSession session = factory.openSession()) { OrderMapper mapper = session.getMapper(OrderMapper.class); } ``` 以上代码片段展示了如何安全地管理 SqlSessionFactory 生命周期以防止内存泄漏等问题发生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

正义的卓别林

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值