node+mongo环境windows安装

node.js选版本下载:Previous Releases | Node.js (nodejs.org)

mongodb选版本下载:Download MongoDB Community Server | MongoDB

安装完成后直接点击bin目录中的mongod.exe,启动即可运行服务,安装教程见:在Windows上安装_MonogDB 中文网 (mongodb.net.cn)

安装PM2:

1. 使用运行窗口以管理员身份运行PowerShell

第1步: 同时按下Windows + R键以弹出“运行”对话框。

第2步: 在框中键入PowerShell,然后单击OK(确定)按钮。 普通的Windows PowerShell将以当前用户身份启动。

第3步: 键入命令start-process PowerShell -verb runas,然后按“enter”键。

第4步: 以上命令将以管理员身份提升Windows PowerShell的权限。

2.管理员cmd窗口运行: npm install pm2 -g

安装windows自启动包:npm install pm2-windows-startup -g

执行命令:pm2-startup install

查看是否安装成功:pm2 -v

scp数据库备份文件到本地,windows用robo3T直接import界面功能将bson文件导入本地数据库

启动node服务遇到:MongoError: Unsupported OP_QUERY command: listIndexes. The client driver may require an upgrade. For more details see https://dochub.mongodb.org/core/legacy-opcode-removal

查看https://dochub.mongodb.org/core/legacy-opcode-removal发现:OP_QUERY命令已经废弃,那就是说mongoose版本过低,和新安装的mongodb版本不兼容导致,要将mongo版本降到6.0一下。

截屏2023-08-15 10.05.25.png

重新安装低版本mongo后重启node服务报错:MongooseServerSelectionError: connect ECONNREFUSED ::1:27017

查到资料:

上面出现的 ::1 是 ipv6 的 localhost 地址,但是 mongoDB 是在 127.0.0.0:27017上侦听的,(ipv4的 localhost(127.0.0.1)),所以连接 ::1:27017 会失败。

所以要想连接 mongodb 数据库成功,必须将服务器中 ipv6 的 localhost 修改为 ipv4 的 localhost。但是要想修改成功,这里会有一个 ipv6 与 ipv4 在我们服务器的优先级问题。

所以,下面推荐一篇修改 ipv6 与 ipv4 的优先级文章,按照这篇文章修改即可解决连接本地mongo数据库失败:connect ECONNREFUSED ::1:27017 的问题。

https://blog.csdn.net/ambertian/article/details/70238020

node.js 18默认使用ipv6,我没有选择采用使用高版本node并解决::1问题的解决方式,而是降低node.js版本到16以下(包含16)来解决问题。

至此,服务成功重启。

总结一下,windows电脑开发linux服务端还是不太方面,一是windows自带的powershell权限太低,好多linux下加个sudo就能运行的命令,windows都需要在管理员powershell中才能完成,但是tortoiseSvn确实比mac上的svn工具更强大好用,robo3t也比mac版多了很多图形化的傻瓜操作,很方便,只是用习惯了,底层操作mongo的linux命令就荒废了。

另外一点不爽的是,windows和国内公司的android衍生版本太像了,系统不简洁干净,太多干扰因素。比如win 10左下角的天气,打开就是个巨大的新闻客户端。下载个软件太多的关联下载,比如下载mongo竟然默认关联mongo compass下载。mac 用命令行很方便,就没有这么多事。

其他:

解决WIN10使用苹果鼠标滚轮不能使用、苹果触摸板不能滑动问题:个人百度云盘下载驱动

其他软件安装xshell、xftp、tortoiseSvn、vscode、robo3t、postman

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 有时候明知道这是深渊 但眼神瞟见的那一刻 你就知道 已经无法自拔 努力了 也走不出的 大概就是传说中的 万丈深渊 ...
    莫念回首阅读 98评论 0 0
  • 7月13日,老乔住院第14天。 这两天老乔的意识由模糊逐渐变得清晰,意识到了自己躺在了病床上,手脚已然不听...
    清清的云阅读 100评论 0 2
  • 无论什么时候,你都要相信,一切都是最好的安排
    忠于我阅读 199评论 0 0
  • 给孩子一生的安全感 家族无意识 就是妈妈在每次做饭的时候都会把第一片肉扔掉,是因为他的妈妈就是这么做的,然而他的妈...
    6280f4829803阅读 60评论 0 0
  • 黄金4H头肩底,昨天回调劲线多头已爆发,到达前期4H助力区,可能有回调,后续回调看多,昨天遗憾仓位少,平仓过早
    adttoo阅读 47评论 0 0