问题描述
目的
我想使用 MysqL2
(npm)。
步骤
- 通过
brew install MysqL
安装 MysqL,进行设置以确保我可以通过MysqL -r root -p
登录 - 运行
npm init
和npm install MysqL2 --save
- 创建
index.js
(见下文) - 运行
node index.js
- 查看下面的错误。
步骤(检查 MysqL2
是否导致问题)
index.js
console.log('BEFORE');
const MysqL = require('MysqL2');
console.log('AFTER');
控制台(错误消息)
BEFORE
<--- Last few GCs --->
[3203:0x150008000] 34 ms: Scavenge 2.8 (4.6) -> 2.5 (5.3) MB,0.5 / 0.0 ms (average mu = 1.000,current mu = 1.000) allocation failure
[3203:0x150008000] 42 ms: Scavenge 3.8 (7.8) -> 3.5 (8.5) MB,0.3 / 0.0 ms (average mu = 1.000,current mu = 1.000) allocation failure
<--- JS stacktrace --->
Fatal error: wasm code commit Allocation Failed - process out of memory
1: 0x1040fe9d8 node::Abort() [/Users/{MY_USER_NAME}/.nvm/versions/node/v14.15.5/bin/node]
...
63: 0x10492c1e8 Builtins_JSEntry [/Users/{MY_USER_NAME}/.nvm/versions/node/v14.15.5/bin/node]
64: 0x150008000
zsh: abort node index.js
环境
- Mackbook Air(M1,2020 年)
- macOS:11.2.2
- 节点:14.15.5
- npm:7.6.1
- MysqL2 (npm):2.2.5
- MysqL (brew): Ver 8.0.23 for osx10.16 on x86_64 (Homebrew)
解决方法
我遇到了同样的问题。从节点 v14 升级到 v15 解决了它。