mongod——修复导致回溯



我有一个unifi控制器在树莓派上的docker上运行,但是由于不干净的关闭,我的mongo数据库似乎有一些损坏。我试图mongod -repair,但我得到以下错误。我该怎么做才能恢复呢?谢谢!

021-03-06T21:34:14.261+0000 I CONTROL
2021-03-06T21:34:14.265+0000 W CONTROL  32-bit servers don't have journaling enabled by default. Please use --journal if you want durability.
2021-03-06T21:34:14.265+0000 I CONTROL
2021-03-06T21:34:14.288+0000 I CONTROL  [initandlisten] MongoDB starting : pid=15 port=27017 dbpath=/data/db 32-bit host=ae6010a02591
2021-03-06T21:34:14.289+0000 I CONTROL  [initandlisten] db version v3.0.14
2021-03-06T21:34:14.289+0000 I CONTROL  [initandlisten] git version: 08352afcca24bfc145240a0fac9d28b978ab77f3
2021-03-06T21:34:14.289+0000 I CONTROL  [initandlisten] build info: Linux raspberrypi 4.9.41-v7+ #1023 SMP Tue Aug 8 16:00:15 BST 2017 armv7l BOOST_LIB_VERSION=1_49
2021-03-06T21:34:14.289+0000 I CONTROL  [initandlisten] allocator: system
2021-03-06T21:34:14.289+0000 I CONTROL  [initandlisten] options: { repair: true }
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten]
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten]
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten] ** NOTE: This is a 32 bit MongoDB binary.
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten] **       32 bit builds are limited to less than 2GB of data (or less with --journal).
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten] **       Note that journaling defaults to off for 32 bit and is currently off.
2021-03-06T21:34:14.370+0000 I CONTROL  [initandlisten] **       See http://dochub.mongodb.org/core/32bit
2021-03-06T21:34:14.371+0000 I CONTROL  [initandlisten]

2021-03-06T21:34:34.406+0000 I STORAGE  [initandlisten] repairDatabase unifi_stat
2021-03-06T21:34:35.338+0000 I INDEX    [initandlisten] allocating new ns file /data/db/_tmp_repairDatabase_16/unifi_stat.ns, filling with zeroes...
2021-03-06T21:34:36.845+0000 I STORAGE  [FileAllocator] allocating new datafile /data/db/_tmp_repairDatabase_16/unifi_stat.0, filling with zeroes...
2021-03-06T21:34:36.846+0000 I STORAGE  [FileAllocator] creating directory /data/db/_tmp_repairDatabase_16/_tmp
2021-03-06T21:34:36.863+0000 I STORAGE  [FileAllocator] done allocating datafile /data/db/_tmp_repairDatabase_16/unifi_stat.0, size: 64MB,  took 0.011 secs
2021-03-06T21:34:36.885+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_5minutes properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "unifi_stat.stat_5minutes" }
2021-03-06T21:34:36.885+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:36.888+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_5minutes properties: { v: 1, key: { site_id: 1, datetime: 1 }, name: "site_id_1_datetime_1", ns: "unifi_stat.stat_5minutes" }
2021-03-06T21:34:36.888+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:36.893+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_5minutes properties: { v: 1, key: { datetime: 1, o: 1, site_id: 1, oid: 1 }, name: "datetime_1_o_1_site_id_1_oid_1", ns: "unifi_stat.stat_5minutes" }
2021-03-06T21:34:36.893+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:37.449+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_archive properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "unifi_stat.stat_archive" }
2021-03-06T21:34:37.449+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:37.452+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_archive properties: { v: 1, key: { site_id: 1, o: 1, oid: 1, datetime: 1 }, name: "site_id_1_o_1_oid_1_datetime_1", ns: "unifi_stat.stat_archive" }
2021-03-06T21:34:37.453+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:37.456+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_archive properties: { v: 1, key: { datetime: 1 }, name: "datetime_1", ns: "unifi_stat.stat_archive" }
2021-03-06T21:34:37.456+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:38.075+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_daily properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "unifi_stat.stat_daily" }
2021-03-06T21:34:38.075+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:38.077+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_daily properties: { v: 1, key: { site_id: 1, datetime: 1 }, name: "site_id_1_datetime_1", ns: "unifi_stat.stat_daily" }
2021-03-06T21:34:38.077+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:38.080+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_daily properties: { v: 1, key: { datetime: 1, o: 1, site_id: 1, oid: 1 }, name: "datetime_1_o_1_site_id_1_oid_1", ns: "unifi_stat.stat_daily" }
2021-03-06T21:34:38.081+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:39.454+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_dpi properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "unifi_stat.stat_dpi" }
2021-03-06T21:34:39.454+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:39.457+0000 I INDEX    [initandlisten] build index on: unifi_stat.stat_dpi properties: { v: 1, key: { site_id: 1, o: 1, oid: 1, datetime: 1, app: 1, cat: 1 }, name: "site_id_1_o_1_oid_1_datetime_1_app_1_cat_1", ns: "unifi_stat.stat_dpi" }
2021-03-06T21:34:39.457+0000 I INDEX    [initandlisten]          building index using bulk method
2021-03-06T21:34:39.490+0000 I -        [initandlisten] Fatal Assertion 17441
2021-03-06T21:34:39.629+0000 I CONTROL  [initandlisten]
0x1622348 0x15c50a0 0x15abc08 0xdc63ec 0x13e0730 0x13e026c 0x13f883c 0x13faf84 0x122a440 0xcf1838 0xcf2f1c 0xcf3acc 0xcf4e00 0xcf3e28 0x76b7a678
----- BEGIN BACKTRACE -----
{"backtrace":[{"b":"10000","o":"1612348","s":"_ZN5mongo15printStackTraceERSo"},{"b":"10000","o":"15B50A0","s":"_ZN5mongo10logContextEPKc"},{"b":"10000","o":"159BC08","s":"_ZN5mongo13fassertFailedEi"},{"b":"10000","o":"DB63EC","s":"_ZN5mongo7fassertEib"},{"b":"10000","o":"13D0730","s":"_ZNK5mongo17RecordStoreV1Base21getNextRecordInExtentEPNS_16OperationContextERKNS_7DiskLocE"},{"b":"10000","o":"13D026C","s":"_ZNK5mongo17RecordStoreV1Base13getNextRecordEPNS_16OperationContextERKNS_7DiskLocE"},{"b":"10000","o":"13E883C","s":"_ZN5mongo27SimpleRecordStoreV1Iterator7getNextEv"},{"b":"10000","o":"13EAF84","s":"_ZN5mongo12MMAPV1Engine14repairDatabaseEPNS_16OperationContextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb"},{"b":"10000","o":"121A440","s":"_ZN5mongo14repairDatabaseEPNS_16OperationContextEPNS_13StorageEngineERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb"},{"b":"10000","o":"CE1838"},{"b":"10000","o":"CE2F1C"},{"b":"10000","o":"CE3ACC","s":"_ZN5mongo13initAndListenEi"},{"b":"10000","o":"CE4E00"},{"b":"10000","o":"CE3E28","s":"main"},{"b":"76B64000","o":"16678","s":"__libc_start_main"}],"processInfo":{ "mongodbVersion" : "3.0.14", "gitVersion" : "08352afcca24bfc145240a0fac9d28b978ab77f3", "uname" : { "sysname" : "Linux", "release" : "5.4.83-v7+", "version" : "#1379 SMP Mon Dec 14 13:08:57 GMT 2020", "machine" : "armv7l" }, "somap" : [ { "elfType" : 2, "b" : "10000", "buildId" : "77BB9BC6C28CA032211CCD119B903FDEE2C6A7D8" }, { "b" : "7ECB5000", "path" : "linux-vdso.so.1", "elfType" : 3, "buildId" : "8E8ADD944B36D89CB5A4AE6DAB825D428D5407ED" }, { "b" : "76ED3000", "path" : "/lib/arm-linux-gnueabihf/librt.so.1", "elfType" : 3, "buildId" : "4C7E415AA306267E5BA73CD0FE8F6F8ABC5D9370" }, { "b" : "76EC0000", "path" : "/lib/arm-linux-gnueabihf/libdl.so.2", "elfType" : 3, "buildId" : "99B3CD788031A72A37B9C9F10C5A63FEABF1BCDB" }, { "b" : "76D78000", "path" : "/usr/lib/arm-linux-gnueabihf/libstdc++.so.6", "elfType" : 3, "buildId" : "5909F48F93D947CDD017977DA479EC563E8B426E" }, { "b" : "76CF9000", "path" : "/lib/arm-linux-gnueabihf/libm.so.6", "elfType" : 3, "buildId" : "1128E26D3F2FA311FE65EDF9E3930D2162AF9BE8" }, { "b" : "76CCC000", "path" : "/lib/arm-linux-gnueabihf/libgcc_s.so.1", "elfType" : 3, "buildId" : "030EF284554E9F6259572226A3F26F86F86E1B35" }, { "b" : "76CA3000", "path" : "/lib/arm-linux-gnueabihf/libpthread.so.0", "elfType" : 3, "buildId" : "4B15D4A8FE60C9A013D924976C36C1281A60E04D" }, { "b" : "76B64000", "path" : "/lib/arm-linux-gnueabihf/libc.so.6", "elfType" : 3, "buildId" : "B84C7156F66DE515C6257D0A4A71D9F31CE6F9CF" }, { "b" : "76EEA000", "path" : "/lib/ld-linux-armhf.so.3", "elfType" : 3, "buildId" : "21F72FB00897D4F06093D6F0451C9CA7D1F6E14C" } ] }}
mongod(_ZN5mongo15printStackTraceERSo+0x2C) [0x1622348]
mongod(_ZN5mongo10logContextEPKc+0x88) [0x15c50a0]
mongod(_ZN5mongo13fassertFailedEi+0x78) [0x15abc08]
mongod(_ZN5mongo7fassertEib+0x34) [0xdc63ec]
mongod(_ZNK5mongo17RecordStoreV1Base21getNextRecordInExtentEPNS_16OperationContextERKNS_7DiskLocE+0x90) [0x13e0730]
mongod(_ZNK5mongo17RecordStoreV1Base13getNextRecordEPNS_16OperationContextERKNS_7DiskLocE+0x30) [0x13e026c]
mongod(_ZN5mongo27SimpleRecordStoreV1Iterator7getNextEv+0x8C) [0x13f883c]
mongod(_ZN5mongo12MMAPV1Engine14repairDatabaseEPNS_16OperationContextERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb+0xD00) [0x13faf84]
mongod(_ZN5mongo14repairDatabaseEPNS_16OperationContextEPNS_13StorageEngineERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEbb+0x1C8) [0x122a440]
mongod(+0xCE1838) [0xcf1838]
mongod(+0xCE2F1C) [0xcf2f1c]
mongod(_ZN5mongo13initAndListenEi+0x20) [0xcf3acc]
mongod(+0xCE4E00) [0xcf4e00]
mongod(main+0x28) [0xcf3e28]
libc.so.6(__libc_start_main+0x114) [0x76b7a678]
-----  END BACKTRACE  -----
2021-03-06T21:34:39.630+0000 I -        [initandlisten]
***aborting after fassert() failure

复制您的数据,然后:

  • 使用最新的补丁版本
  • 尝试下一个功能版本的最新补丁版本

如果两者都不行,从备份中恢复。

最新更新