Установите MongoDB на Linux Centos 7 (Легко! Подробно!)

MongoDB
Установите MongoDB на Linux Centos 7 (Легко! Подробно!)

Системная версия этого руководства по установке — Linux Centos 7 с использованием исходного кода Yum для установки MongoDB.

Источник ням

использоватьОбобщим несколько часто используемых:

// 1 安装 
yum install package  // 安装指定的安装包package 

// 2 更新和升级 
yum update  // 全部更新 
yum update package  // 更新指定程序包package
yum check-update  // 检查可更新的程序 
yum upgrade package  // 升级指定程序包package 

// 3 查找和显示 
yum info // 列出所有可以安装或更新的包的信息
yum info package //显示安装包信息package 
yum list // 显示所有已经安装和可以安装的程序包 
yum list package  // 显示指定程序包安装情况package
yum search package // 搜索匹配特定字符的package的详细信息

// 4 删除程序 
yum remove | erase package  // 删除程序包package
yum deplist package  // 查看程序package依赖情况

// 5 清除缓存 
yum clean packages  // 清除缓存目录下的软件包 
yum clean headers // 清除缓存目录下的 headers 
yum clean oldheaders // 清除缓存目录下旧的 headers 
yum clean, yum clean all  // (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers

Установить MongoDB

Настройте источник системы yum

1. Создайте файл .repo для создания источника mongodb.

vi /etc/yum.repos.d/mongodb-org-4.0.repo

2. Добавьте следующую информацию о конфигурации:

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/#releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

Детальное объяснение:

name         # 名称
baseurl      # 获得下载的路径
gpkcheck=1   # 表示对从这个源下载的rpm包进行校验;
enable=1     # 表示启用这个源。
gpgkey       # gpg验证

3. Сохраните и выйдите

wq # 退出保存

Установите MongoDB с помощью yum

1. Установите MongoDB

sudo yum install -y mongodb-org

安装MongoDB

2. Проверьте результат установки

rpm -qa |grep mongodb
rpm -ql mongodb-org-server

验证安装结果

3. Запустите MongoDB

Запустите службу MongoDB

systemctl start mongod.service

Порт MongoDB по умолчанию — 27017, проверьте, включен ли он

netstat -natp | grep 27017

Проверьте, успешно ли установлена ​​база данных

ps -aux | grep mongod    # 查看数据库的进程是否存在

启动MongoDB

4. Убедитесь, что служба включена

mongo

验证服务开启

Список общих команд

// 1、开启MongoDB
sudo service mongod start  或者 systemctl start mongod.service  # 开启MongoDB
sudo chkconfig mongod on  # 加入开机启动
sudo service mongod restart # 重启MongoDB

// 2、关闭MongoDB
sudo service mongod stop  # 关闭防火墙

// 3、卸载MongoDB
sudo yum erase $(rpm -qa | grep mongodb-org)    # 卸载MongoDB
sudo rm -r /var/log/mongodb  # 删除日志文件
sudo rm -r /var/lib/mongo    # 删除数据文件

Удаленное подключение к MongoDB

1. Измените файл конфигурации mongodb.conf.

vi /etc/mongod.conf

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.

Измените IP-адрес привязки по умолчанию 127.0.0.1, разрешающий только локальные подключения, поэтому измените его на bindIp: 0.0.0.0, выйдите и сохраните

2. Перезапустите службы MongoDB.

sudo service mongod restart 

3. Откройте внешние порты

метод первый

systemctl status firewalld  # 查看防火墙状态
firewall-cmd --zone=public --add-port=27017/tcp --permanent # mongodb默认端口号
firewall-cmd --reload  # 重新加载防火墙

firewall-cmd --zone=public --query-port=27017/tcp # 查看端口号是否开放成功,输出yes开放成功,no则失败

Способ второй

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT

4. Удаленное подключение

соединение по умолчанию

mongo 10.128.218.14:27017

Подключиться к пользовательскому пользователю

  1. Создание пользователей, установка учетных записей, паролей, разрешений
// admin数据库
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

// 其他数据库
> use test
switched to db test
> db.createUser({ user:"admin", pwd:"123456", roles:["readWrite", "dbAdmin"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
  1. Измените файл mongodb.conf, чтобы включить аутентификацию.
vi /etc/mongod.conf

security:
  authorization: "enabled"   # disable or enabled
  1. Перезапустите MongoDB
sudo service mongod restart 
  1. Аутентификация пользователя
> use admin
switched to db admin
> db.auth("root", "123456")
1 // 授权成功
// 其他常用命令
db.updateUser(user, writeConcern) # 更新用户
db.dropUser('test') # 删除用户
  1. Удаленное подключение
// 终端连接
mongo 10.128.218.14:27017/database -u username -p password

// mongoose方式连接
mongoose.connect('mongodb://username:password@host:port/database?options...', {useNewUrlParser: true});

// 通过客户端连接

Описание роли разрешения пользователя

правило иллюстрировать
root Доступно только в базе данных администратора. супер аккаунт, супер полномочия
Read Разрешить пользователям читать указанную базу данных
readWrite Позволяет пользователям читать и писать в указанную базу данных
dbAdmin Позволяет пользователям выполнять административные функции в указанной базе данных, такие как создание индекса, удаление, просмотр статистики или доступ к system.profile.
userAdmin Разрешить пользователям записывать в коллекцию system.users, создавать, удалять и управлять пользователями в указанной базе данных
clusterAdmin Доступно только в базе данных администратора, что дает пользователю административные привилегии для всех функций, связанных с сегментами и наборами реплик.
readAnyDatabase Доступно только в базе данных администратора, что дает пользователю доступ для чтения ко всем базам данных.
readWriteAnyDatabase Доступно только в базе данных администратора, что дает пользователю права на чтение и запись для всех баз данных.
userAdminAnyDatabase Доступно только в базе данных администратора, что дает пользователю привилегии userAdmin во всех базах данных.
dbAdminAnyDatabase Доступно только в базе данных администратора, что дает пользователю привилегии dbAdmin во всех базах данных.

использованная литература