范范的日常 發表於 2024-3-16 19:09:00

【Mongodb】Linux安装Mongodb

<p><span style="font-size: 12px">目录:</span></p>
<p><span style="font-size: 12px">  一、官网下载安装包</span></p>
<p><span style="font-size: 12px">  二、安装配置Mongodb</span></p>
<p><span style="font-size: 12px">  三、安装mongosh</span></p>
<p><span style="font-size: 12px">  四、安全配置</span></p>
<p>&nbsp;</p>
<p><strong><span style="font-size: 16px">一、官网下载安装包</span></strong></p>
<p>1、下载安装包 (Mongodb官网地址:https://www.mongodb.com/zh-cn)</p>
<p><img src="https://img2024.cnblogs.com/blog/1280347/202403/1280347-20240316160016717-482279386.png"></p>
<p><img src="https://img2024.cnblogs.com/blog/1280347/202403/1280347-20240316160857219-637917536.png"></p>
<p><strong>二、安装配置Mongodb</strong></p>
<p>&nbsp;1、上传到服务器后解压</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> 解压</span>
tar -xvf mongodb-linux-x86_64-enterprise-rhel70-7.0.6<span style="color: rgba(0, 0, 0, 1)">.tgz
</span><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> 移动位置</span>
mv 解压位置 目标位置(一般会放到 /usr/local/mongodb 下)<br># 创建数据、日志、配置存储目录<br>mkdir 数据存储目录<br>mkdir 日志存储目录<br>mkdir 配置存储目录<br># 到配置目录中创建配置文件<br>vim 配置文件名称</pre>
</div>
<p>2、配置文件内容如下:</p>
<div class="cnblogs_code">
<pre>systemLog:
# MongoDB发送所有日志输出的目标指定为文件
destination: file
# mongod或者mongos应向其发送所有诊断日志记录信息的日志文件的路径
path: "【日志存储路径】"
# 当mongod活着mongos实例重新启动时,mongod或者mongos会将新条目附加到现有日志文件的末尾
logAppend: true
storage:
# mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod
dbPath: "【数据存储路径】"
# 新版本不再需要指定持久性日志(默认启用)
#journal:
#    enabled: true

processManagement:
# 启用在后台运行mongod或mongos进程的守护进程模式
fork: true
net:
# 服务实例绑定的IP,默认是localhost(本处增加内网ip,查看方式可以运行ifconfig命令,inet后边的ip就是)
bindIp: localhost,127.0.0.1,【内网ip】
# 绑定的端口号
port: 【端口号】

【此处第一次需要注释掉(否则启动后由于没有默认用户名密码,会导致无法在外部连接),在设置好用户名密码后可开启安全验证】
security:
# 启动安全验证
authorization: enabled
# 指定密钥文件(openssl rand -base64 756 &gt; 【生成位置/文件名】)(key文件需要设置文件权限:chmod 400 【生成位置/文件名】)
keyFile: 【文件位置/文件名】</pre>
</div>
<p>3、启动mongodb(去除配置文件中的安全验证)</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> 切换到mongodb安装目录的bin目录下(使用mongo命令启动)(-f 为后台启动)</span>
mongod <span style="color: rgba(0, 0, 255, 1)">-f</span> 配置文件位置</pre>
</div>
<p><strong><span style="font-size: 16px">三、安装mongosh</span></strong></p>
<p>1、背景</p>
<p>  由于mongodb的4.4版本后bin目录下就没有mongo命令了,所以需要单独安装mongosh工具</p>
<p>2、下载安装包(官网下载路径:https://www.mongodb.com/try/download/shell)</p>
<p><img src="https://img2024.cnblogs.com/blog/1280347/202403/1280347-20240316185149948-441535087.png"></p>
<p>&nbsp;3、rpm安装</p>
<div class="cnblogs_code">
<pre># 无法指定安装目录,有固定的安装目录<br>rpm -ivh mongodb-mongosh-1.8.0.x86_64.rpm</pre>
</div>
<p>4、shell连接mongodb数据库</p>
<div class="cnblogs_code">
<pre>mongosh --port 端口号 --host localhost</pre>
</div>
<p><strong><span style="font-size: 16px">四、安全配置</span></strong></p>
<p>1、创建用户及密码</p>
<div class="cnblogs_code">
<pre>// 跳转到admin数据库
use admin
// 创建用户(权限类型可查看步骤3)
db.createUser(
   {
   user: "用户名",
   pwd: "密码",
   roles: [{"role":"权限","db":"数据库"}]
   }
)</pre>
</div>
<p>2、其他验证命令</p>
<div class="cnblogs_code">
<pre>// 查看当前库下的用户
show users
// 删除用户
db.dropUser('用户名')
// 修改用户密码
db.updateUser('用户名', {pwd: '密码'})
// 密码认证
db.auth('用户名', '密码')</pre>
</div>
<p>3、权限</p>
<div class="cnblogs_code">
<pre><strong>Read:</strong>允许用户读取指定数据库 readWrite:允许用户读写指定数据库
<strong>dbAdmin:</strong>允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
<strong>userAdmin:</strong>允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
<strong>clusterAdmin:</strong>只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
<strong>readAnyDatabase:</strong>只在admin数据库中可用,赋予用户所有数据库的读权限
<strong>userAdminAnyDatabase:</strong>只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
<strong>dbAdminAnyDatabase:</strong>只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
<strong>root:</strong>只在admin数据库中可用。超级账号,超级权限</pre>
</div>
<p>4、关闭mongodb后,重新打开配置文件中的安全验证启动</p>
<p>5、验证是否生效</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> 方式一</span>
<span style="color: rgba(0, 0, 0, 1)">mongosh
use admin
db.auth('用户名', '密码')
</span><span style="color: rgba(0, 128, 0, 1)">#</span><span style="color: rgba(0, 128, 0, 1)"> 方式二</span>
mongo 数据库(可以不指定) -u 用户名 -p 密码</pre>
</div>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><strong>本博客参考:</strong></p>
<p>MongoDB数据库设置账号密码完整步骤:https://www.jb51.net/article/284523ehn.htm</p>
<p>MongoDB【部署 01】mongodb最新版本6.0.5安装部署配置使用及mongodb-shell1.8.0安装使用(云盘分享安装文件):https://blog.csdn.net/weixin_39168541/article/details/129638385</p><br><br>
来源:https://www.cnblogs.com/hwh000/p/18077453
頁: [1]
查看完整版本: 【Mongodb】Linux安装Mongodb