MongoDB:修订间差异

来自Gea-Suan Lin's Wiki
跳到导航 跳到搜索
此页面具有访问限制。如果您看见此消息,则说明您没有权限访问此页面。
第50行: 第50行:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
echo "show dbs" | mongo -u root
echo "show dbs" | mongo -u root
</syntaxhighlight>
再來是開放讓外部可以連,把<code>bindIp</code>的<code>127.0.0.1</code>改成<code>0.0.0.0</code>:
<syntaxhighlight lang="yaml">
net:
  port: 27017
  bindIp: 0.0.0.0
</syntaxhighlight>
</syntaxhighlight>



2023年3月12日 (日) 19:33的版本

MongoDB是一套NoSQL类型资料库。

简介

MongoDB是一套以JSON为资料储存型态的资料库。要注意软体授权,在4.0.4之后的版本,以及4.1.5之后的版本为SSPL授权,社群一般不认可为开源软体。

安装

这边安装的是Percona包装的版本(Percona Server for MongoDB 3.6,对应到官方的3.6版):

cd /tmp; wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb; sudo dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb; sudo percona-release enable psmdb-36 release; sudo apt update; sudo apt install -y percona-server-mongodb-36

如果没有授权条款的疑虑,可以安装4.2版(Percona Server for MongoDB 4.2,对应到官方的4.2版):

cd /tmp; wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb; sudo dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb; sudo percona-release enable psmdb-42 release; sudo apt update; sudo apt install -y percona-server-mongodb

基本设定

MongoDB发现没有使用者设定时会强制开放本地的anonymous登入,所以如果要关掉本地的anonymous操作,一定要先设定一组帐号与密码。

这边先建立root帐号:

echo -e 'use admin\ndb.createUser({user:"root",pwd:"password",roles:["root"]})' | mongo

然后在/etc/mongod.conf里面启动帐号认证:

security:
  authorization: "enabled"

接著重跑MongoDB:

sudo service mongod restart

最后可以测试anonymous模式与登入后的差异:

echo "show dbs" | mongo
echo "show dbs" | mongo -u root

再来是开放让外部可以连,把bindIp127.0.0.1改成0.0.0.0

net:
  port: 27017
  bindIp: 0.0.0.0

外部连结