linux MongoDB -正在关闭,代码为:100

kadbb459  于 2022-12-03  发布在  Linux
关注(0)|答案(8)|浏览(158)

我一直在尝试在我的Ubuntu 16.04.2 LTS (GNU/Linux 4.4.0-22-generic x86_64) VPS上设置MongoDB,但遇到了一些问题。我在我的服务器上以用户身份运行,拥有root访问权限,但没有使用root帐户本身。
当我在admin数据库上执行db.createUser()以便添加其他用户时,我开始注意到这个问题,并且我得到了以下错误:not authorized to execute command
因此,我然后继续卸载和安装再次使用教程上提供的网站:https://docs.mongodb.com/v3.2/tutorial/install-mongodb-on-ubuntu/
现在,当我在阶段2验证MongoDB是否已成功启动Run MongoDB Community Edition部分时,也就是我查看文件/var/log/mongodb/mongod.log的输出时,我得到以下结果:

2017-04-14T14:23:09.309+0200 I CONTROL  [main] ***** SERVER RESTARTED *****
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] MongoDB starting : pid=9691 port=27017 dbpath=/var/lib/mongodb 64-bit host=vps338741
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] db version v3.4.3
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] git version: f07437fb5a6cca07c10bafa78365456eb1d6d5e1
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2g  1 Mar 2016
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] allocator: tcmalloc
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] modules: none
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] build environment:
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten]     distmod: ubuntu1604
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten]     distarch: x86_64
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten]     target_arch: x86_64
2017-04-14T14:23:09.316+0200 I CONTROL  [initandlisten] options: { config: "/etc/mongod.conf", net: { bindIp: "127.0.0.1", port: 27017 }, storage: { dbPath: "/var/lib/mongodb", journal: { enabled: true } }, systemLog: { destination: "file", logAppend: true, path: "/var/log/mongodb/mongod.log", quiet: true } }
2017-04-14T14:23:09.349+0200 I STORAGE  [initandlisten] 
2017-04-14T14:23:09.349+0200 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2017-04-14T14:23:09.349+0200 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
2017-04-14T14:23:09.349+0200 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=464M,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-04-14T14:23:09.366+0200 E STORAGE  [initandlisten] WiredTiger error (2) [1492172589:366629][9691:0x7f1755946cc0], file:WiredTiger.wt, connection: /var/lib/mongodb/WiredTiger.wt: handle-open: open: No such file or directory
2017-04-14T14:23:09.367+0200 I -        [initandlisten] Assertion: 28595:2: No such file or directory src/mongo/db/storage/wiredtiger/wiredtiger_kv_engine.cpp 267
2017-04-14T14:23:09.367+0200 I STORAGE  [initandlisten] exception in initAndListen: 28595 2: No such file or directory, terminating
2017-04-14T14:23:09.367+0200 I NETWORK  [initandlisten] shutdown: going to close listening sockets...
2017-04-14T14:23:09.367+0200 I NETWORK  [initandlisten] removing socket file: /tmp/mongodb-27017.sock
2017-04-14T14:23:09.367+0200 I NETWORK  [initandlisten] shutdown: going to flush diaglog...
2017-04-14T14:23:09.367+0200 I CONTROL  [initandlisten] now exiting
2017-04-14T14:23:09.367+0200 I CONTROL  [initandlisten] shutting down with code:100

我看了看周围,这不是同样的错误as found here,因为这是做的事实是没有一个/data/db文件夹,我有.从该日志,我可以看到它是与此行:

2017-04-14T14:23:09.366+0200 E STORAGE  [initandlisten] WiredTiger error (2) [1492172589:366629][9691:0x7f1755946cc0], file:WiredTiger.wt, connection: /var/lib/mongodb/WiredTiger.wt: handle-open: open: No such file or directory

这是正确的,当我转到/var/lib/mongodb并执行ls -l时,结果是:

drwxr-xr-x 2 mongodb mongodb 4096 Apr 14 14:10 journal
-rw-r--r-- 1 mongodb mongodb    0 Apr 14 14:02 mongod.lock
-rw-r--r-- 1 mongodb mongodb    0 Apr 14 14:10 WiredTiger
-rw-r--r-- 1 mongodb mongodb   21 Apr 14 14:10 WiredTiger.lock
-rw-r--r-- 1 mongodb mongodb 1004 Apr 14 14:10 WiredTiger.turtle

但我不知道我是否应该手动创建该文件,因为在其他地方没有看到这个问题。我确保mongodb用户对这些文件也有权限,如in the answer to this question所述,但仍然没有运气。
我真的不知道该怎么办,任何帮助都将非常感激,因为这是我第五次尝试让它工作!
谢谢你!

n1bvdmb6

n1bvdmb61#

如果您创建了mkdir -p /data/db,则可能必须使用以下命令启动服务器:sudo mongod
macOS/OSX操作系统的最新版本

ecr0jaav

ecr0jaav2#

尝试:
sudo服务监视器启动;
然后使用以下命令运行mongodb:
蒙戈

ahy6op9u

ahy6op9u3#

这是MongoDB中的已知错误,请检查report
您的问题不是文件丢失,而是在干净关机后重新启动时丢失。您的问题与/data/db目录无关,而更多的是与重新启动后丢失的WiredTiger.wt文件有关。
10月1日20:00:44阿尔法蒙哥[1074:0x 7 fdba 8 fd 4 bc 0],文件名:WiredTiger.wt,连接方式:/数据库/有线老虎.wt:无此文件或目录
bug报告也是这么说的。

试试看:

我建议在配置文件中尝试禁用WiredTiger。
MongoDB Config Options
WiredTiger

**更新:**要禁用WiredTiger,您必须更改mongo配置文件中的storage.engine选项,默认情况下mongod使用WiredTiger,但您也可以使用InMemory LINK

k10s72fa

k10s72fa4#

创建目录
sudo mkdir /数据库
提供对目录的访问权限
sudo chown -R $用户/数据/数据库
然后运行
蒙戈德
如果你得到的端口已经在使用停止mongod,它可能正在后台运行
sudo服务监视停止
如果最后一行是
正在等待端口27017上的连接
那就是神在工作

toiithl6

toiithl65#

这个命令帮助了我:

mongod --dbpath /data/db --repair
qlfbtfca

qlfbtfca6#

对我来说,“答案”是执行以下命令(因为service mongod startmongod失败了)

sudo mongod --fork --port 27017 --replSet admin --logpath /data/log/mongo.log

我不需要关闭连线老虎

rsl1atfo

rsl1atfo7#

Docker容器:

在我的例子中,我使用的是一个码头集装箱

mongodb:
    image: 'bitnami/mongodb:latest'
    user: root
    command: "chown -R $USER /bitnami/mongodb"
    volumes:
      - '/var/www/mongodb_data:/bitnami'
    environment:
      - MONGODB_USERNAME=bn_parse
      - MONGODB_PASSWORD=3yfQexfqcc
      - MONGODB_DATABASE=bitnami_parse

我将Docker主机迁移到其他VPS/VM(AWS太贵了)。
我临时添加了命令“chown -R $USER /bitnami/mongodb”来更改文件夹/bitnami/mongodb的所有者。

nukf8bse

nukf8bse8#

sudo mdkir data/db

sudo service mongod stop

sudo mongod

mongosh

这为我在ubuntu 22. 04上修复了它,经过几个小时又几个小时的寻找解决方案

相关问题