MongoDB 7.0.2启动失败,无法在27017端口建立连接
MongoDB 7.0.2启动失败:版本与现有数据文件不兼容
执行mongod命令启动MongoDB 7.0.2时出现错误,无法在27017端口建立可用连接,核心报错显示当前MongoDB版本过新,无法适配现有数据文件,需使用MongoDB 4.2或更早版本。
执行命令
$ mongod
报错输出
{"t":{"$date":"2023-09-30T23:35:49.825-07:00"},"s":"I", "c":"NETWORK", "id":4915701, "ctx":"thread1","msg":"Initialized wire specification","attr":{"spec":{"incomingExternalClient":{"minWireVersion":0,"maxWireVersion":21},"incomingInternalClient":{"minWireVersion":0,"maxWireVersion":21},"outgoing":{"minWireVersion":6,"maxWireVersion":21},"isInternalClient":true}}} {"t":{"$date":"2023-09-30T23:35:49.827-07:00"},"s":"I", "c":"CONTROL", "id":23285, "ctx":"thread1","msg":"Automatically disabling TLS 1.0, to force-enable TLS 1.0 specify --sslDisabledProtocols 'none'"} {"t":{"$date":"2023-09-30T23:35:50.921-07:00"},"s":"I", "c":"NETWORK", "id":4648602, "ctx":"thread1","msg":"Implicit TCP FastOpen in use."} {"t":{"$date":"2023-09-30T23:35:50.923-07:00"},"s":"I", "c":"REPL", "id":5123008, "ctx":"thread1","msg":"Successfully registered PrimaryOnlyService","attr":{"service":"TenantMigrationDonorService","namespace":"config.tenantMigrationDonors"}} {"t":{"$date":"2023-09-30T23:35:50.923-07:00"},"s":"I", "c":"REPL", "id":5123008, "ctx":"thread1","msg":"Successfully registered PrimaryOnlyService","attr":{"service":"TenantMigrationRecipientService","namespace":"config.tenantMigrationRecipients"}} {"t":{"$date":"2023-09-30T23:35:50.923-07:00"},"s":"I", "c":"CONTROL", "id":5945603, "ctx":"thread1","msg":"Multi threading initialized"} {"t":{"$date":"2023-09-30T23:35:50.923-07:00"},"s":"I", "c":"TENANT_M", "id":7091600, "ctx":"thread1","msg":"Starting TenantMigrationAccessBlockerRegistry"} {"t":{"$date":"2023-09-30T23:35:50.924-07:00"},"s":"I", "c":"CONTROL", "id":4615611, "ctx":"initandlisten","msg":"MongoDB starting","attr":{"pid":21760,"port":27017,"dbPath":"C:/data/db/","architecture":"64-bit","host":"CGPaari-LT"}} {"t":{"$date":"2023-09-30T23:35:50.924-07:00"},"s":"I", "c":"CONTROL", "id":23398, "ctx":"initandlisten","msg":"Target operating system minimum version","attr":{"targetMinOS":"Windows 7/Windows Server 2008 R2"}} {"t":{"$date":"2023-09-30T23:35:50.924-07:00"},"s":"I", "c":"CONTROL", "id":23403, "ctx":"initandlisten","msg":"Build Info","attr":{"buildInfo":{"version":"7.0.2","gitVersion":"02b3c655e1302209ef046da6ba3ef6749dd0b62a","modules":[],"allocator":"tcmalloc","environment":{"distmod":"windows","distarch":"x86_64","target_arch":"x86_64"}}}} {"t":{"$date":"2023-09-30T23:35:50.925-07:00"},"s":"I", "c":"CONTROL", "id":51765, "ctx":"initandlisten","msg":"Operating System","attr":{"os":{"name":"Microsoft Windows 10","version":"10.0 (build 22621)"}}} {"t":{"$date":"2023-09-30T23:35:50.925-07:00"},"s":"I", "c":"CONTROL", "id":21951, "ctx":"initandlisten","msg":"Options set by command line","attr":{"options":{}}} {"t":{"$date":"2023-09-30T23:35:50.926-07:00"},"s":"I", "c":"STORAGE", "id":22270, "ctx":"initandlisten","msg":"Storage engine to use detected by data files","attr":{"dbpath":"C:/data/db/","storageEngine":"wiredTiger"}} {"t":{"$date":"2023-09-30T23:35:50.926-07:00"},"s":"I", "c":"STORAGE", "id":22315, "ctx":"initandlisten","msg":"Opening WiredTiger","attr":{"config":"create,cache_size=7526M,session_max=33000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,remove=true,path=journal,compressor=snappy),builtin_extension_config=(zstd=(compression_level=6)),file_manager=(close_idle_time=600,close_scan_interval=10,close_handle_minimum=2000),statistics_log=(wait=0),json_output=(error,message),verbose=[recovery_progress:1,checkpoint_progress:1,compact_progress:1,backup:0,checkpoint:0,compact:0,evict:0,history_store:0,recovery:0,rts:0,salvage:0,tiered:0,timestamp:0,transaction:0,verify:0,log:0],"}} {"t":{"$date":"2023-09-30T23:35:50.939-07:00"},"s":"F", "c":"STORAGE", "id":4671205, "ctx":"initandlisten","msg":"此MongoDB版本过新,无法启动现有数据文件。请尝试MongoDB 4.2或更早版本。"} {"t":{"$date":"2023-09-30T23:35:50.939-07:00"},"s":"F", "c":"ASSERT", "id":23091, "ctx":"initandlisten","msg":"致命断言","attr":{"msgid":4671205,"file":"src\\mongo\\db\\storage\\wiredtiger\\wiredtiger_kv_engine.cpp","line":640}} {"t":{"$date":"2023-09-30T23:35:50.940-07:00"},"s":"F", "c":"ASSERT", "id":23092, "ctx":"initandlisten","msg":"***fassert()失败后终止"}
解决方案
1. 降级MongoDB版本
卸载当前MongoDB 7.0.2版本,安装MongoDB 4.2或更早版本,启动后即可直接适配现有数据文件。
2. 迁移数据至新版本(保留旧数据)
- 安装对应旧版本(4.2或更早)并启动服务;
- 导出所有数据:
mongodump --out C:/data/mongo_backup/ - 停止旧版本服务,安装MongoDB 7.0.2;
- 清空原数据目录(默认
C:/data/db/); - 导入备份数据:
mongorestore C:/data/mongo_backup/ - 启动MongoDB 7.0.2服务。
3. 使用新数据目录启动(舍弃旧数据)
若无需保留旧数据,可指定空的新数据目录启动:
mongod --dbpath C:/data/new_db/
内容的提问来源于stack exchange,提问作者Nari Gaming
相关产品推荐
相关产品推荐

