mysql - 通过 node.js 连接到 mysql 时出现未知数据库错误
问题描述
PS G:\boot> node hello.js 监听 http://localhost:3000 G:\boot\node_modules\mysql\lib\protocol\Parser.js:437 的示例应用程序 throw err; // 重新抛出非 MySQL 错误 ^
错误:ER_BAD_DB_ERROR:在 Handshake.Sequence._packetToError (G:\boot\node_modules\mysql\lib\protocol\sequences\Sequence.js:47:14) 在 Handshake.ErrorPacket (G:\boot\node_modules) 处的未知数据库“启动” \mysql\lib\protocol\sequences\Handshake.js:123:18) 在 Protocol._parsePacket (G:\boot\node_modules\mysql\lib\protocol\Protocol.js:291:23) 在 Parser._parsePacket (G: \boot\node_modules\mysql\lib\protocol\Parser.js:433:10) 在 Parser.write (G:\boot\node_modules\mysql\lib\protocol\Parser.js:43:10) 在 Protocol.write ( G:\boot\node_modules\mysql\lib\protocol\Protocol.js:38:16) 在 Socket。(G:\boot\node_modules\mysql\lib\Connection.js:88:28) 在 Socket。(G:\boot\node_modules\mysql\lib\Connection.js:526:10) 在 Socket.emit (events.js:376:20) 在 addChunk (internal/streams/readable.js:309:12) -- ------------------ 在 Protocol._enqueue (G: \boot\node_modules\mysql\lib\protocol\Protocol.js:144:48) 在 Protocol.handshake (G:\boot\node_modules\mysql\lib\protocol\Protocol.js:51:23) 在 Connection.connect ( G:\boot\node_modules\mysql\lib\Connection.js:116:18) 在对象。(G:\boot\hello.js:22:12) 在 Module._compile (internal/modules/cjs/loader.js:1068:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader .js:1097:10) 在 Module.load (internal/modules/cjs/loader.js:933:32) 在 Function.Module._load (internal/modules/cjs/loader.js:774:14) 在 Function. executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) at internal/main/run_main_module.js:17:47 { code: 'ER_BAD_DB_ERROR', errno: 1049, sqlMessage: "Unknown database 'boot'" , sqlState: '42000', 致命的: true } \boot\node_modules\mysql\lib\protocol\Protocol.js:51:23) 在 Connection.connect (G:\boot\node_modules\mysql\lib\Connection.js:116:18) 在 Object. (G:\boot\hello.js:22:12) 在 Module._compile (internal/modules/cjs/loader.js:1068:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader .js:1097:10) 在 Module.load (internal/modules/cjs/loader.js:933:32) 在 Function.Module._load (internal/modules/cjs/loader.js:774:14) 在 Function. executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) at internal/main/run_main_module.js:17:47 { code: 'ER_BAD_DB_ERROR', errno: 1049, sqlMessage: "Unknown database 'boot'" , sqlState: '42000', 致命的: true } \boot\node_modules\mysql\lib\protocol\Protocol.js:51:23) 在 Connection.connect (G:\boot\node_modules\mysql\lib\Connection.js:116:18) 在 Object. (G:\boot\hello.js:22:12) 在 Module._compile (internal/modules/cjs/loader.js:1068:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader .js:1097:10) 在 Module.load (internal/modules/cjs/loader.js:933:32) 在 Function.Module._load (internal/modules/cjs/loader.js:774:14) 在 Function. executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12) at internal/main/run_main_module.js:17:47 { code: 'ER_BAD_DB_ERROR', errno: 1049, sqlMessage: "Unknown database 'boot'" , sqlState: '42000', 致命的: true }
代码是
const express = require('express')
var mysql = require('mysql')
const bodyParser = require('body-parser')
const app = express()
const port = 3000
// app.use(express.static('css'))
app.use(bodyParser.urlencoded({ extended: false }))
app.set('view engine', 'pug')
app.get('/', function (req, res) {
res.sendFile('signup.html', { root: __dirname })
});
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'boot'
});
connection.connect(function (err) {
if (err) throw err;
console.log('Connected.........')
})
connection.end();
app.post('/submit', function (req, res) {
console.log(req.body);
res.render('index', {
title: 'Data saved',
message: 'Data saved successfully'
})
})
app.listen(port, () =>
console.log(`Example app listening at http://localhost:${port}`)
)
```[enter image description here][1]
[1]: https://i.stack.imgur.com/hRNXp.png
解决方案
ER_BAD_DB_ERROR: Unknown database 'boot
错误是从您的 MySQL 服务器返回的。这意味着您在本地托管的 MySQL 服务器没有名为 name 的数据库boot
,或者root
用户无权访问该数据库。
建议您在重新运行您的应用程序之前仔细检查您是否已使用该boot
名称启动了数据库
推荐阅读
- google-cloud-platform - 限制 gsutil -m 线程
- json - 如何编辑 JSON 结构
- c# - MvcOptions.SuppressImplicitRequiredAttributeForNonNullableReferenceTypes 到底发生了什么变化?
- c# - 正确理解异步/等待。它是如何正确的?
- c# - Xamarin,使用 x:name 找不到另一个按钮
- python - 如何找到列表中第二个元素的最小值
- xslt - 删除与 XSLT 中的数字连接的额外零
- docker - 检测容器内的 docker socket 是属于运行在其中的 docker daemon 还是从容器主机注入的
- javascript - 如何使用 CLI 命令 html2react 将 html 转换为 react 组件?
- python - 是否有警告用户传递的参数将被修改的约定?