IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Linux部署node.JS、NginX、egg、MongoDB和非js世界的后端服务之CentOS-腾讯云 -> 正文阅读

[JavaScript知识库]Linux部署node.JS、NginX、egg、MongoDB和非js世界的后端服务之CentOS-腾讯云

Linux部署node.JS、NginX、egg、MongoDB和非js世界的后端服务之CentOS-腾讯云

目录

Linux部署node.JS、NginX、egg、MongoDB和非js世界的后端服务之CentOS-腾讯云

一、“公有云”服务器部署

1.1、购买常用的云服务器硬件设施资源

1.2.1、腾讯云

1.2.2、阿里云

1.2.3、华为云

1.2.4、百度云

1.2.5、其它如“京东云”等等(略)

1.2、“公有云”服务器部署应用

1.2.1、部署操作系统“镜像”

1.2.2、在操作系统“管理控制台”部署网络安全及端口配置

1.2.3、部署?CentOS 可视化界面:

1.2.4、部署node.JS及包管理器(主要与后端应用相关)

◆1.2.4.4、让node、npm、npx进程开机立即挂载全局搜索路径PATH

◆关于开机自启服务

1.2.5、部署NginX(主要与简单负载均衡策略管理和web服务及其web代理相关)

1.2.6、部署MongoDB大数据应用

1.2.7、关于“mongoDB管理客户端”连接

1.2.8、centOS部署“非js世界”的开发的操作系统后端服务应用

1.2.9、阿里云、百度云、华为云、京东云,因其内置的centos具体版本及其优化,会在很多细节上,各有差异

二、“私有云”服务器部署

2.1、传统方案

2.2、现代通行方案

2.2.1、与对应的“公有云”服务器部署有何差异

2.2.2、“私有云”服务器部署VirtualBox虚拟机管理平台

2.2.3、在“私有云”服务器VirtualBox虚拟机管理平台上部署Ubuntu或CentOS


一、“公有云”服务器部署

? ? ? ? “公有云”服务器,简化了企业自有的硬件设施上,部署操作系统及其应用、网络管理、平台管理的复杂性。

1.1、购买常用的云服务器硬件设施资源

1.2.1、腾讯云

腾讯云 - 产业智变 云启未来

1.2.2、阿里云

https://www.aliyun.com/

1.2.3、华为云

云产品最新优惠活动_域名注册优惠促销_域名优惠购买-华为云

1.2.4、百度云

百度智能云-智能时代基础设施

1.2.5、其它如“京东云”等等(略)

1.2、“公有云”服务器部署应用

? ? ? ? 以“腾讯云”为例,其它“云服务”供应商的平台类似,不再单独赘述。

1.2.1、部署操作系统“镜像”

? ? ? ?购买时,默认有操作系统,可选择;也可事后,在“控制台”中重新安装所需的操作系统及其版本:

1.2.2、在操作系统“管理控制台”部署网络安全及端口配置

? ? ? ?购买完毕的“服务器”实例,其对应有默认的“安全组”配置,通常,常用的及所有端口,均开放的,这样会很不安全,可以“客制化”配置所需端口及其服务名:

? ? ? ? 上述为“轻量级服务器”,“云服务器”的“安全组”菜单配置内容类似。

? ? ? ? 更专业的“安全服务”需求,请购买其专业的“主机安全服务”。

? ? ? ? 远程登录服务器,即可进入OS控制台命令行,发命令进行管理或应用和部署:

? ? ? ? 点“命令块”安装,

? ? ? ? 这样就远程连接到云服务器了。

1.2.3、部署?CentOS 可视化界面:

1.2.3.1、下载及安装方法

# 搭建 CentOS 可视化界面:
# 1)、安装图形化界面组件:
sudo yum groupinstall "Server with GUI" -y
# 2)、设置默认启动图形化界面:
systemctl set-default graphical
# 3)、重启实例
reboot

? ? ? ? 安装过程,会下载并安装大量的GUI支持动态库,比较耗时,且个每个GUI原生组件CPU单例独占模式:

? ? ? ? root后,必须以VNC方式登录:

? ? ? ? 界面应当出现一下选单:

?? ? ? ? ? CentOS?Linux (? 4.08****版本号选单 ) -----光标上下键选此项,回车

? ? ? ? ? ?CentOS?Linux (? Rescue灾难安全模式 )

? ? ? ? 回车后:

# 若未出现GUI登录切换菜单,请reboot再次重启:
# 1)、设置默认启动图形化界面:
systemctl set-default graphical
# 2)、重启实例
reboot

1.2.3.2、系统GUI配置

? ? ? ? 详见,我另外一个博文:

部署CentOS可视化界面GUI-之腾讯云服务器_pulledup的博客-CSDN博客

1.2.4、部署node.JS及包管理器(主要与后端应用相关)

1.2.4.1、安装部署node.JS所需的基本信息

? ? ? ?来到node.js的官方站点,查看其在Linux下的部署:

Download | Node.js

?Installing Node.js via package manager | Node.js

如何在 Linux 上通过二进制存档安装 Node.js? ?,以下这个链接仅作参考,不同“云服务平台服务商”有差异(在配置操作系统的全局配置环节:~/.profile刷新);请以本文为准!!!

?Installation · nodejs/help Wiki · GitHub

1.2.4.2、node.js对应的芯片的二进制压缩安装包的下载链接:

Download | Node.js

1.2.4.3、下载、解压

总体操作如下:?

细解每步操作:

◆1.2.4.3.1、下载安装包

# linux下发wget下载命令:

wget https://nodejs.org/dist/v16.17.1/node-v16.17.1-linux-x64.tar.xz

◆1.2.4.3.2、配置预安装版本及操作系统芯片RO架构

# 配置安装版本:
VERSION=v16.17.1
# 配置操作系统芯片架构(本centOS v8.2虚拟机实例x86_64芯片; 若为ARM芯片的云服务器,应当下载对应的node.js版本):
DISTRO=linux-x64

◆1.2.4.3.3、创建解压目录:

# 创建解压目录:
sudo mkdir -p /usr/local/lib/nodejs

◆1.2.4.3.4、执行解压:?

# 执行解压:
sudo tar -xJvf node-$VERSION-$DISTRO.tar.xz -C /usr/local/lib/nodejs

◆1.2.4.3.5、设置环境变量(注意该步骤与node.js官方文档不一样~/.profile):

# ?设置环境变量~/.bash_profile,最后添加如下:
# 使用vim工具linux系统文件编辑器,vim使用方法参考如下:
# https://baijiahao.baidu.com/s?id=1740494152757977521&wfr=spider&for=pc(第三方文档,仅供参考)

# 3.1、vim命令进入配置文件:
vim /root/.bash_profile

# 3.2、 按 i 键(要等好一会,才会出来原始配置文件的内容),

# 3.3、 然后,加入以下配置:

# .bash_profile
  
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

VERSION=v16.17.1
DISTRO=linux-x64

# 3.4、按ESC键退出编辑状态

# 3.5、输入并敲回车键,保存修改的内容后退出
:wq

# ###若安装了GUI图形用户界面,可用Gnome应用软件gedit进行编辑###

◆1.2.4.3.6、验证安装

# 验证安装
node -v

◆1.2.4.3.7、刷新本用户的配置资料(注意该步骤与node.js官方文档不一样~/.profile)

# 刷新本用户的配置
source /root/.bash_profile

◆1.2.4.3.8、再次验证全部安装

# 再次验证全部安装
node -v
npm version
npx -v

? ? ? ? 结果:

◆1.2.4.4、让node、npm、npx进程开机立即挂载全局搜索路径PATH

# 执行这段代码,让node、npm、npx进程开机便挂载:
echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /root/.bash_profile && source /root/.bash_profile && node -v
# 或执行这段代码,也行:
echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /etc/profile && echo "export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH" >> /etc/bashrc

上述,代码,本质上,是将node.js的二进制执行程序的路径加入linux全局环境变量:

◆ 但:通常不要这么做,仅仅将其配置到 /etc/bashrc 或 /etc/profile 全局变量文件,即可!

◆ /etc/environment 文件是面对系统的,系统经过 /etc/environment 文件中的PATH去找对应的东西,如果修改有误会可能对系统产生难以修复的影响

◆重启服务器:

◆关于开机自启服务

? ? ? ? 调node让egg服务、mongod服务等服务自动启动,我将在专门的博客里介绍,部署完毕!

?◆1.2.4.5、其它相关参考资料

Vim基础用法,最常用、最实用的命令介绍(保姆级教程)

云服务器 手动搭建 Node.js 环境-最佳实践-文档中心-腾讯云

操作系统镜像安装-搭建 Node.js 开发环境-最佳实践-文档中心-腾讯云

使用标准方式登录 Linux 实例(推荐)

您也可以根据实际操作习惯,选择其他不同的登录方式:

轻量服务器-制作整机快照备份:
轻量应用服务器 管理快照-操作指南-文档中心-腾讯云

快照可用于服务器数据备份。每个地域的免费快照配额为已创建实例数(待回收实例和存储型套餐实例除外)乘以2,且最多不超过10个。注:使用存储型套餐的实例不支持创建快照。

ssh参考:
轻量应用服务器 使用远程登录软件登录 Linux 实例-操作指南-文档中心-腾讯云

Linux 常用操作及命令问题:

云服务器 Linux 常用操作及命令问题-常见问题-文档中心-腾讯云

卸载已装软件:

? ? ? ? sudo rpm -e?软件可执行文件名
查看linux服务器当前的进程信息:

? ? ? ? sudo ps -ef

标准输入输出重定向:

? ? ? ? sudo nohup 你要重定向的linux可执行文件名 start &
? ? ? ? 比如:
sudo nohup nginx start &
? ? ? ? 可让输入的进程从远程终端重定向到主机后台进程池,但注意:“并非开机自启服务”!

1.2.5、部署NginX(主要与简单负载均衡策略管理和web服务及其web代理相关)

CentOS 环境下通过?dfn或yum命令 安装软件:云服务器 CentOS 环境下通过?dfn或yum?安装软件-运维指南-文档中心-腾讯云https://cloud.tencent.com/document/product/213/2046

# CentOS 环境下通过?dfn或yum命令 安装nginx等软件:
sudo dnf install nginx

选?Y ,确认安装,结果如下:

验证Nginx安装结果:

# 验证安装版本:
nginx -v
# 结果:nginx version: nginx/1.14.
# 验证可启动nginx:
sudo nginx

验证nginx启动,在浏览器输入IP或解析后的域名,会自动显示nginx作为web服务器的默认首页:

# 重启nginx的web服务
sudo nginx -s reload
# 停止nginx的web服务
sudo nginx -s stop

查看软件包的版本信息:?

# 查看软件包的版本信息:
sudo rpm -q

查看已安装软件的信息:?

# 查看已安装软件的信息:rpm -ql +软件  
rpm -ql
# 软件安装的路径及相关信息:
?/etc/logrotate.d/nginx
/etc/nginx/fastcgi.conf
/etc/nginx/fastcgi.conf.default
/etc/nginx/fastcgi_params
/etc/nginx/fastcgi_params.default
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/mime.types.default
/etc/nginx/nginx.conf
/etc/nginx/nginx.conf.default
/etc/nginx/scgi_params
/etc/nginx/scgi_params.default
/etc/nginx/uwsgi_params
/etc/nginx/uwsgi_params.default
/etc/nginx/win-utf
/usr/bin/nginx-upgrade
/usr/lib/.build-id
/usr/lib/.build-id/2d
/usr/lib/.build-id/2d/da6018ae12edb856ad3d2cf61bf586b6b4873c
/usr/lib/systemd/system/nginx.service
/usr/lib64/nginx/modules
/usr/sbin/nginx
/usr/share/doc/nginx
/usr/share/doc/nginx/CHANGES
/usr/share/doc/nginx/README
/usr/share/doc/nginx/README.dynamic
/usr/share/licenses/nginx
/usr/share/licenses/nginx/LICENSE
/usr/share/man/man3/nginx.3pm.gz
/usr/share/man/man8/nginx-upgrade.8.gz
/usr/share/man/man8/nginx.8.gz
/usr/share/nginx/html/404.html
/usr/share/nginx/html/50x.html
/usr/share/nginx/html/index.html
/usr/share/nginx/html/nginx-logo.png
/usr/share/nginx/html/poweredby.png
/usr/share/vim/vimfiles/ftdetect/nginx.vim
/usr/share/vim/vimfiles/indent/nginx.vim
/usr/share/vim/vimfiles/syntax/nginx.vim
/var/lib/nginx
/var/lib/nginx/tmp
/var/log/nginx

# 用vim编辑nginx的web服务的入口文件index.html
vim /usr/share/nginx/html/index.html
# 安装firefox浏览器 ###若部署了GUI图形用户界面默认库已安装并挂载###
yum -y install firefox
# 查看安装的firefox浏览器版本
sudo firefox -version

附注:centOS8.2下安装vscode

centOS部署vscode_pulledup的博客-CSDN博客

1.2.6、部署MongoDB大数据应用

# 查询云服务器中,可作为标准模块而调用的软件包:
sudo dnf module list

? ? ? ? 没有MongoDB,就只能下载安装:

1.2.6.1、MongoDB官方下载页面(建议使用v4.2及其以上,这里以v4.2为例)

?◆?下载包:

◆◆◆主要安装包是要“分平台分芯片架构”的,别下错了!!!

◆安装教程入口:?Install MongoDB — MongoDB Manual??

◆在 Red Hat 或 CentOS 上安装“社区版” MongoDB Community Edition :

◆? ??Install MongoDB Community Edition on Red Hat or CentOS — MongoDB Manual

◆v4.2的RedHat / CentOS 8.0 x64“整体二进制打包”下载,用tar解压:

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz

◆各版本release的压缩包(含v4.2.22):

MongoDB Community Downloads | MongoDB

◆对于具体云服务提供商的CentOS8.2平台,若不支持上述“yum包管理系统安装”的,则按照其.rpm直接从 MongoDB 存储库下载文件,用CentOS默认的“rpm包管理系统安装”,右键复制download按钮获取下载链接地址(v4.2.23):

◆◆◆下载地址:?MongoDB Community Download | MongoDB

◆若.rpm分包下载,至少需要下载如下分包

? ? ? ? 1、server(安装后带mongod)?;? ?

? ? ? ? 2、数据库管理的shell工具(即:mongo)

# 下载:
# ◆若.rpm分包下载,至少需要下载如下分包:
? ? ? ? 1、server(安装后带mongod)?;? ?
? ? ? ? 2、数据库管理的shell工具(即:mongo)
# 下载server服务器包:
curl https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/RPMS/mongodb-org-server-4.2.23-1.el8.x86_64.rpm --output mongodb-org-server-4.2.23-1.el8.x86_64.rpm --anyauth
# 下载shell数据库脚本管理实用工具:
curl https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/RPMS/mongodb-org-shell-4.2.23-1.el8.x86_64.rpm --output mongodb-org-shell-4.2.23-1.el8.x86_64.rpm --anyauth
# ◆若.tgz“整体二进制打包”:
curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz --output mongodb-linux-x86_64-rhel80-4.2.22.tgz --anyauth
? ? ? ? # 下载后:
? ? ? ?   # 解压:
? ? ? ?   tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
? ? ? ?   # 移动至目标文件夹(/usr/local/mongodb目录应当事先建立好):
? ? ? ?   mv mongodb-linux-x86_64-4.2.1/ /usr/local/mongodb

现以.rpm分包说明如下:

下载结果:

1.2.6.2、安装MongoDB的.rpm包

????◆?centOS的rpm内置指令安装.rpm包:

# rpm安装webshell用URL方式下载并上传的.rpm包,安装mongoDB:
#    rpm安装server服务器(mongod)
sudo rpm -i  mongodb-org-server-4.2.23-1.el8.x86_64.rpm
#    rpm安装mongo  (shell工具)
sudo rpm -i mongodb-org-shell-4.2.23-1.el8.x86_64.rpm

.rpm安装结果(.rpm包的tree结构),查询:

# 
rpm -q -l  mongodb-org-server-4.2.23-1.el8.x86_64.rpm
# 
rpm -q -l  mongodb-org-shell-4.2.23-1.el8.x86_64.rpm

1.2.6.3、配置mongodb.conf

?????◆ 配置mongodb.conf

# “客制化”配置mongodb.conf
sudo vim /etc/mongod.conf

?????◆?vim实用工具:i命令插入;ESC键退出编辑;:wq输入并回车保存并退出:

# mongod.conf
  
# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.存取数据的位置、如何存取:# journal:启动journal系统日志,64位系统默认开启,32位默认关闭0
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background在后台分叉并运行
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile本机的pid文件
  timeZoneInfo: /usr/share/zoneinfo

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


#security:

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

?1.2.6.4、启动服务

# 以centOS系统内核的服务管理的方式,启动mongod的后台服务:
sudo systemctl start mongod
# 备注:在Linux中,systemd是与SysV和LSB初始化脚本兼容的系统和服务管理器,开启systemd服务可以提供基于守护进程的按需启动策略。systemd可以通过systemctl命令来对系统服务进行运行、关闭、重启、显示、启用或禁用的操作。systemctl命令与sysvinit命令的功能相似,但是建议用systemctl来进行系统服务管理。
# 备注:systemctl start 某项服务:不会影响现有的服务

? ? ? ? ?其它与此相关的,可能会遇到,参考如下:

# 停止某服务:
sudo systemctl stop mongod
# 重启某服务:
sudo systemctl restart mongod
# 启用某服务:
sudo systemctl enable mongod
# 禁用某服务:
sudo systemctl disable mongod
# 查看某服务运行状态:
systemctl status mongod.service
# 如果服务运行状态错误,如何跟踪错误:
journalctl -xe

# 可让输入的进程从远程终端重定向到主机后台进程池(退出终端后进程仍然挂载,前提是要先启动进程,但注意:“并非开机自启服务”!):
#     比如 :
sudo nohup mongod &

sudo nohup nginx &

# :与此相关,你可能会遇到错误提示,Socket监听端口的进程pid已被占用:
#            Failed to set up listener: SocketException: Address already in use
# 解决:
# 查看mongod进程的socket
ps aux | grep mongod
# mongod      1014  0.1  6.7 1551388 124816 ?      SLl  10月11   1:43 /usr/bin/mongod -f /etc/mongod.conf
# root      578647  0.0  0.0  12348  1120 pts/0    R+   13:22   0:00 grep --color=auto mongod
# 杀死1014端口pid上的该mongod进程
sudo kill -9 1014

? ? ? ? ? 其中,该指令可绑定已经启动的服务到后台服务:

?# 可让输入的进程从远程终端重定向到主机后台进程池(退出终端后进程仍然挂载,前提是要先启动进程):
sudo nohup mongod &

1.2.6.5、设置“客户端”访问必须的内置数据库admin的访问控制

? ? ? ? 如果没有“访问控制”(基于操作系统底层的技术),启动服务时,将会有提示:

? ? ? ? # ?Access control is not enabled for the database.
? ? ? ? 解决方法,在实例的dbpath配置指向的内置数据库admin中加入“用户及其角色”:

#  Access control is not enabled for the database.
# 解决方法,在实例的dbpath配置指向的内置数据库admin中加入“用户及其角色”:

use admin
db.createUser({user: "root",pwd:"A****19^&#$***m", roles: [{role:"userAdminAnyDatabase",db:"admin" },{role:"readWriteAnyDatabase",db: "admin"}]})
# :注意,这里的root及其密码A****19^&#$***m,与ssh的root账号无任何关系,不要混淆

? ? ? ? 若缺少此控制,你的其它管理客户端,不能“连接”到“mongod服务”。

1.2.6.6、影响“mongoDB管理客户端”无法连接mongod服务的主要因素

# 1、mongod.conf客户端网络接口配置缺少认证的IP:
# network interfaces
net:
  bindIp: 0.0.0.0  #
# 解决方法:1.2.6.3、配置mongodb.conf

#  2、缺少访问控制:Access control is not enabled for the database.
# 解决方法:1.2.6.5、设置“客户端”访问必须的内置数据库admin的访问控制

1.2.6.9、参考:创建“客制化”的数据库、配置路径及配置mongodb.conf

? ? ? ? ?若上面你是.tgz“整体二进制打包”的:

1.2.6.9.1、创建“客制化”的数据库及其配置路径

????◆?命令行

# 创建“客制化”的“目标”数据文件夹、日志文件和mongodb.conf配置文件
# 创建“客制化”的“目标”数据文件夹:
mkdir -p  /usr/local/mongodb/data/db
# 创建空的日志文件:
touch /usr/local/mongodb/mongod.log
# 创建空的mongodb.conf配置文件:
touch /usr/local/mongodb/mongodb.conf

?1.2.6.9.2、下载、解压、移动目标:

?????◆?下载、解压、移动至客制化“目标”文件夹

# 进入Dowloads文件夹
cd ~
cd ./Dowloads
curl https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-4.2.22.tgz --output mongodb-linux-x86_64-rhel80-4.2.22.tgz --anyauth
? ? ? ? # 下载后:
? ? ? ?   # 解压:
? ? ? ?   tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
? ? ? ?   # 移动至客制化"目标"文件夹(/usr/local/mongodb目录应当事先建立好):
? ? ? ?   mv mongodb-linux-x86_64-4.2.1/ /usr/local/mongodb

? ? ? ? 解压结果如下:

# 解压结果如下:
[root@VM-12-4-centos Downloads]# ls
 mongodb-linux-x86_64-rhel80-4.2.22.tgz   mongodb-org-server-4.2.23-1.el8.x86_64.rpm   mongodb-org-shell-4.2.23-1.el8.x86_64.rpm  'nohup invocation (GNU Coreutils 9.1).pdf'
[root@VM-12-4-centos Downloads]# tar zxvf mongodb-linux-x86_64-rhel80-4.2.22.tgz
mongodb-linux-x86_64-rhel80-4.2.22/THIRD-PARTY-NOTICES.gotools
mongodb-linux-x86_64-rhel80-4.2.22/README
mongodb-linux-x86_64-rhel80-4.2.22/THIRD-PARTY-NOTICES
mongodb-linux-x86_64-rhel80-4.2.22/MPL-2
mongodb-linux-x86_64-rhel80-4.2.22/LICENSE-Community.txt
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongodump
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongorestore
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoexport
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoimport
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongostat
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongotop
mongodb-linux-x86_64-rhel80-4.2.22/bin/bsondump
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongofiles
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongoreplay
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongod
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongos
mongodb-linux-x86_64-rhel80-4.2.22/bin/mongo
mongodb-linux-x86_64-rhel80-4.2.22/bin/install_compass

? ? ? ? 目标/usr/local/mongodb文件及目录结构如下:?

# 目标/usr/local/mongodb文件及目录结构如下:
[root@VM-12-4-centos Downloads]# cd /usr/local/mongodb/mongodb-linux-x86_64-rhel80-4.2.22
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]# ls
bin  LICENSE-Community.txt  MPL-2  README  THIRD-PARTY-NOTICES  THIRD-PARTY-NOTICES.gotools
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]# 
[root@VM-12-4-centos mongodb-linux-x86_64-rhel80-4.2.22]# cd bin
[root@VM-12-4-centos bin]# ls
bsondump  install_compass  mongo  mongod  mongodump  mongoexport  mongofiles  mongoimport  mongoreplay  mongorestore  mongos  mongostat  mongotop
[root@VM-12-4-centos bin]# 

1.2.6.9.3、“客制化”配置mongodb.conf

?????◆?“客制化”配置mongodb.conf

# “客制化”配置mongodb.conf
sudo vim /usr/local/mongodb/mongodb.conf
# 方法同上

?????◆ mongodb.conf?配置结果:

# 
systemLog:
  destination: file
# 日志输出方式。file/syslog,如果是file,需指定path,默认是输出到标准输出流中
  path: /usr/local/mongodb/mongod.log
# 日志路径
  logAppend: true
# 启动时,日志追加在已有日志文件内还是备份旧日志后,创建新文件记录日志, 默认false
net:
  port: 27017
# 监听端口,默认27017
  bindIp: 0.0.0.0
# 最大连接数,可接受的连接数还受限于操作系统配置的最大连接数
  wireObjectCheck: true
# 校验客户端的请求,防止错误的或无效BSON插入,多层文档嵌套的对象会有轻微性能影响,默认true
 
processManagement:
  fork: true
# 后台运行“进程管理器”--进程分叉
 
security:
  authorization: disabled
# enabled/disabled #开启客户端认证
 
storage:
  dbPath: /usr/local/mongodb/data/db
# 数据库物理文件存取路径
  journal:
    enabled: true
# 启动journal系统日志,64位系统默认开启,32位默认关闭0
 
# 导出系统node.js的全局路径:
# export PATH=/usr/local/lib/nodejs/node-$VERSION-$DISTRO/bin:$PATH
# export PATH

1.2.6.9.4、启动服务-变更全局路径指向

# 安装完成后,使用`systemctl`命令启动MongoDB服务mongod:
# 运行该服务:
sudo systemctl start mongod
// 指到目标: --dbpath /usr/local/mongodb/data/db

? ? ? ? 有关1.2.6.9、的其它细节:略。

1.2.7、关于“mongoDB管理客户端”连接

1.2.7.1、vscode

? ? ? ? ?输入“数据库连接字符串”,回车,开始连接:

mongodb://root:A******^*&(8***@114.117.4.21:27017/?authSource=admin&readPreference=primary&ssl=false

1.2.7.2、Navicat

1.2.8、centOS部署“非js世界”的开发的操作系统后端服务应用

? ? ? ?若“后端服务”应用编译为“控制台”脚本运行模式,无需安装配置Linux的GUI图形用户界面;

? ? ? ?若“后端服务”应用需要使用GUI,则按照本文《1.2.3、搭建CentOS可视化界面》进行配置

? ? ? ?用C++、Pascal、Python等语言及其IDE开发的(Java也可,但其下层是Java Virtual Machine虚拟机及其Java Runtime Environment运行时环境依赖,然后才能到达操作系统),针对Linux操作系统家族或跨平台开发的基于“操作系统原生组件”的“后端服务”的应用,将会“使能”后端服务“更强劲”的动力。

? ? ? ?比如:

?? ? ? ?等等。

1.2.9、阿里云、百度云、华为云、京东云,因其内置的centos具体版本及其优化,会在很多细节上,各有差异

二、“私有云”服务器部署

2.1、传统方案

? ? ? ? 在企业自有的硬件设施上,安装Linux操作系统。

2.2、现代通行方案

? ? ? ? 在硬件设施上,安装类似VMWare或VirtualBox虚拟机管理平台;然后再在其上部署不同的操作系统,比如Linux操作系统Ubuntu或CentOS。

2.2.1、与对应的“公有云”服务器部署有何差异

? ? ? ? 主要体现在:

? ? ? ? (1)、云机防火墙等“安全配置”

? ? ? ? (2)、“公网”至“内网”的“端口映射”

? ? ? ? (3)、“公网”至“内网”的网关安全

? ? ? ?这一部分,相对很专业,请参考专门的博文或第三方文档。

? ? ? ?本文,仅阐述VMWare和VirtualBox虚拟机管理平台的部署、虚机上如何部署Ubuntu或CentOS。

2.2.2、“私有云”服务器部署VirtualBox虚拟机管理平台

? ? ? ?所有部署,均基于底层的操作系统。大型机、、中型机、小型机操作系统相对昂贵,一般中小微企业均难以承受其费用及后期维护成本。本文,仅针对“微机”即PC平台进行说明,微软Windows (Windows 10?[桌面] 、 Windows Server 2016及其以上[服务器]) 平台为例。

? ? ? ?2.2.2.1、在“私有云”服务器部署VirtualBox虚拟机管理平台

? ? ? ? ? ? ? 详见本人博客:

Delphi10.4.1开发Linux应用视频重播_pulledup的博客-CSDN博客

? ? ? ?2.2.2.2、在“私有云”服务器部署VMWare虚拟机管理平台

? ? ? ?(待续专门的博文链接)。

2.2.3、在“私有云”服务器VirtualBox虚拟机管理平台上部署Ubuntu或CentOS

? ? ? ?2.2.3.1、在“私有云”VirtualBox中部署Ubuntu

? ? ? ? ? ? ? 详见本人博客:

Delphi10.4.1开发Linux应用视频重播_pulledup的博客-CSDN博客

? ? ? ?2.2.3.2、在“私有云”VirtualBox中部署CentOS

? ? ? ?(待续专门的博文链接)。

喜欢的,就收藏并点个赞,鼓励我继续技术的原创写作及经验分享:

MSWindows安装部署mongoDB_pulledup的博客-CSDN博客

部署CentOS可视化界面GUI-之腾讯云服务器_pulledup的博客-CSDN博客

centOS部署vscode_pulledup的博客-CSDN博客

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-10-17 12:24:08  更:2022-10-17 12:25:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/17 16:15:18-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码