MongoDB将我的数据库自动设置为'test',如何更改它?

mbskvtky  于 2023-04-11  发布在  Go
关注(0)|答案(6)|浏览(244)
mongoose.connect(process.env.DATABASE_URL, {useNewUrlParser: true});
const MyModel = mongoose.model(mymodel, new Schema({ name: String }));

这将创建一个名为'test'的数据库和一个名为'mymodel'的集合。如何更改数据库的'test'名称?

n3h0vuf2

n3h0vuf21#

如果你在远程mongoDB服务器上发布数据,请确保在连接url中的“?retryWrites”之前写入数据库名称。可能会写入'test'或什么都没有。如果'test'在那里,请将其替换为您的数据库名称,如果不是,请将数据库名称写入'?'标记之前。

mongodb+srv://<username>:<password>@cluster0.vbaw8.mongodb.net/<database_name>?retryWrites=true&w=majority
cnh2zyt3

cnh2zyt32#

问题是您没有在连接URI中指定数据库名称,也没有在连接选项中指定数据库名称:

const connctionUri = `mongodb://localhost:27017/database_name`
connect(connectionUri, connectionOptions).then(...).catch(...)

或者这是另一种选择

const connectionpOptions = {
  dbName: `your database name`,
  useNewParser: true,
  useUnifiedTopology: true,
  .
  .
  .
}
const connectionUri = `mongodb://localhost:27017`
connect(connectionUri, connectionOptions).then(...).catch(...)
izkcnapc

izkcnapc3#

您必须更改连接字符串。进程.env.DATABASE_URL必须更改。在.env文件中,如果有,请将DATABASE_URL更改为

mongodb://localhost:27017/myapp

这里你的数据库的名字将是myapp。现在你可以用任何你想要的名字来代替myapp。只是替换myapp的文本。

const MyModel = mongoose.model('Collection Name', new Schema({ name: String }));

而不是mymodel为您的集合给予任何名称来代替字符串Collection Name。MongoDB以小写字母保存集合,即使您提供大写的集合名称。

r6l8ljro

r6l8ljro4#

我在MacBook上使用Sping Boot 时遇到了同样的问题。
看起来默认的数据库名称是'test',所以我改变了默认的数据库在我的情况下。
在继续之前,请交叉检查默认数据库名称。
步骤1 -在终端中执行以下命令:

> mongo
> db

您可以看到test是默认的DB。
步骤2 -更改数据库名称。

> Find .mongorc.js file
Since am using mac, i found this file under /Users/userName/.mongorc.js

第3步-在.mongorc.js中添加下面一行代码

db = db.getSiblingDB("yourDBname")

第4步-重启mongoDB并重复第1步,这样你就可以看到默认的数据库了。

dluptydi

dluptydi5#

const MyModel = mongoose.model(mymodel, new Schema({ name: String }))

如果你想设置集合名称,你必须添加第三个参数。第三个参数是集合名称。在你的例子中:

const MyModel = mongoose.model('mymodel', new Schema({ name: String }), 'mymodel')
a8jjtwal

a8jjtwal6#

如果您要向远程MongoDB服务器发送数据,请确保在连接url中的“?retryWrites”之前包含数据库名称。您可以在该位置写入“test”或什么都不写。如果“test”一词已经存在,请将其替换为您的数据库名称;如果不是,直接写在问号前面。

相关问题