如何修复MongoDB错误代码 – 116 – 对于Capped太大的文档
在使用MongoDB时,有时候会遇到错误代码 – 116,这个错误通常出现在Capped Collection(固定集合)中,提示文档太大。本文将介绍如何修复这个错误。
错误代码 – 116
错误代码 – 116是MongoDB的一个常见错误,它表示Capped Collection中的文档大小超过了集合的限制。Capped Collection是一种固定大小的集合,它的大小是固定的,一旦达到了限制,新的文档将无法插入。
当出现错误代码 – 116时,你需要采取一些措施来修复这个问题。
修复错误代码 – 116的方法
以下是修复错误代码 – 116的几种方法:
1. 增加Capped Collection的大小
你可以通过增加Capped Collection的大小来解决错误代码 – 116。你可以使用以下命令来增加Capped Collection的大小:
db.runCommand({ CONvertToCapped: 'collectionName', size: newSize })
其中,
collectionName
是你要增加大小的Capped Collection的名称,是你要设置的新的大小。
2. 删除旧的文档
如果Capped Collection中的文档太大,你可以考虑删除一些旧的文档,以释放空间。你可以使用以下命令来删除旧的文档:
db.collectionName.deleteOne({})
其中,
collectionName
是你要删除文档的Capped Collection的名称。
3. 创建新的Capped Collection
如果以上方法都无法解决问题,你可以考虑创建一个新的Capped Collection,并将数据从旧的集合中导入到新的集合中。你可以使用以下命令来创建新的Capped Collection:
db.createCollection('newCollectionName', { capped: true, size: newSize })
其中,
newCollectionName
是你要创建的新的Capped Collection的名称,是你要设置的新的大小。
总结
错误代码 – 116表示Capped Collection中的文档太大,无法插入新的文档。为了修复这个错误,你可以增加Capped Collection的大小,删除旧的文档,或者创建一个新的Capped Collection。根据具体情况选择合适的方法来解决问题。
如果你正在寻找可靠的香港 服务器 ,树叶云是你的首选。树叶云提供高性能的香港服务器,为你的业务提供稳定可靠的支持。点击这里了解更多信息。
我用VMware安装win95一直卡到这个界面这是为什么
你的启动盘一键安装没有杀毒,你先杀毒,最好采用管方安装,我都是用这样的程序安装的
C语言中\0、'\0'、'0'、0分别是什么?
1、‘\0’是字符串结束标志位 对应ascii 码:00;2、‘0’是字符0 对应ascii 码:30;3、0是数字0 对应ascii 码:00。 C语言:C语言是一门通用计算机编程语言,应用广泛。 C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。 尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。 二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。
西门子S7200 温度控制系统程序
主程序
LDSM0.0// SM0.0常ON
LPS// 将SM0.0压栈
AR<= VD30, 105.0// 如果温度小于105℃
SQ0.3, 1// 使Q0.3保持ON
RQ0.4, 1// 使Q0.4保持OFF
LPP// 弹出SM0.0
AR>= VD30, 105.0// 如果温度大于105℃
SQ0.4, 1// 使Q0.4保持ON
RQ0.3, 1// 使Q0.3保持OFF
AI0.1// 按下启动按扭,启动系统
ANI0.3// I0.3为保护关开,一般情况下保持ON
AI0.2// 按下关闭按扭,停止运行
RQ0.1, 1// 使停止指示灯(Q0.1)OFF
SQ0.0, 1// 使运行指示灯(Q0.0)ON
SQ0.1, 1// 使停止指示灯(Q0.1)ON
RQ0.0, 1// 使停止指示灯(Q0.0)OFF
CALL SBR0// 调用子程序0
CALL SBR1// 调用子程序1
TON T50, 100
=M0.3//每10S使中间继电器M0.3为ON
CALL SBR2//每10S调用一次子程序2
ANT52//T51炉子一个周期内的加热时间
TON T51, VW34//T51炉子一个周期内的非加热时间
=Q0.5//使继电器(Q0.5)接通,炉子加热
TON T52, VW36
子程序0
AR<= VD30, 84.0//如果温度小于84℃
SI0.4, 1//使I0.4常ON
RI0.5, 1//使I0.5常OFF
AR>= VD30, 84.0//如果温度大于84℃
SI0.5, 1//使I0.5常ON
RI0.4, 1//使I0.4常OFF
LDM0.0//常ON继电器
AI0.4//如果I0.4为ON,则执行以下程序
MOVR 300.0, VD0//输入P值300到VD0
MOVR .0, VD4//输入I值.0到VD4
MOVR 0.0, VD8//输入D值0.0到VD8
MOVR 100.0, VD12//输入设定温度值100.0到VD12
AI0.5//如果I0.5为ON,则执行以下程序
MOVR 120.0, VD0//输入P值120.0到VD0
MOVR 3.0, VD4//输入I值3.0. 到VD4
MOVR 1.0, VD8//输入D值1.0到VD8
MOVR 100.0, VD12//输入设定温度值,100.0到VD12
子程序 1
MOVR VD12, VD104//输入设定温度值
/R3200.0, VD104//把设定值归一化处理
MOVR VD0, VD112//输入P值到PID回路中
MOVR 10.0, VD116//输入采样时间到PID回路中
MOVR VD4, VD120//输入I值到PID回路中
MOVR VD8, VD124//输入D值到PID回路中
子程序2
MOVW AIW0, AC1//采样温度,放于AIW0中
DTR AC1, AC1
MOVR AC1, VD100
/R.0, VD100//把采样值归一化处理
MOVR AC1, VD30
/R10.0, VD30//把实际温度值放于VD30中
PID VB100, 0//调用PID指令
+R10.0, VD16
MOVR VD16, VD20//计时
/R60.0, VD20
MOVR VD108, AC1//控制器输出
*R100.0, AC1//把输出值转化为下一周期的加热时间
ROUND AC1, AC1
DTI AC1, VW34
MOVW +100, VW36//下一周期的非加热时间
-IVW34, VW36
发表评论