Node.js 连接 mysql 数据库(Navicat)超详细!!!

数据库部分

打开 navicat(其他数据库软件也可以)

点击连接 - 选择 MySql

在新建连接中输入连接名以及密码,默认其他输入框是有值的。

连接建好后有几个数据库是自带的,还有的是我之前建的,这些不用管,现在我们需要创建自己的数据库。

右键新建数据库 -- 输入数据库名称 test

右键数据库名称 -- 新建表

在页面中随便写两个字段,类型会自动填充,然后保存为你想存的数据库表名,这里保存为 test。

数据库表建好了,随便填充一下数据

右键 - 点击打开表

输入张三,18 然后记得保存

node 部分

新建 dbconfig.js 用于配置数据库信息(以下代码在dbconfig.js中)

创建 MySQL 连接池,封装 sql 执行语句,最后把连接池以及封装好的函数导出。

const mysql = require('mysql')
//创建连接池
const pool = mysql.createPool({
  host: '127.0.0.1', //服务器地址
  user: 'root', //账号
  password: '123456', //密码
  database: 'test', //数据库名称
})

//封装sql执行函数
const executeQuery = (sql, values) => {
  return new Promise((resolve, reject) => {
    pool.getConnection((err, connection) => {
      if (err) {
        reject(err)
        return
      }

      connection.query(sql, values, (queryErr, results) => {
        connection.release()

        if (queryErr) {
          reject(queryErr)
        } else {
          resolve(results)
        }
      })
    })
  })
}

module.exports = {
  pool,
  executeQuery,
}

在 index.js 中引入数据库配置 (以下代码在index.js中)
写一个 get 接口测试数据库是否成功,再写一个 sql 语句搜索 test 表中所有数据,并执行 sql 语句,最后将得到的数据 send 出去。

const { pool, executeQuery } = require('./dbconfig')
const express = require('express')
const app = express()

app.get('/get', async (req, res) => {
  try {
    const sql = `SELECT * FROM test;`//sql语句 搜索test表所有数据
    const result = await executeQuery(sql)//执行sql语句

    res.send({
      result,
      code: 200,
    })
  } catch (error) {
    console.error('Error executing query:', error)
    res.status(500).send('Internal Server Error')
  }
})

app.listen('3000', () => {
  console.log(`node服务已启动 端口号是:3000`)
})

 一定要初始化项目以及安装依赖!!!(按顺序执行)

npm init 

npm i express

npm i mysql

ctrl+j 打开终端,输入 node index 启动项目,如果你也得到下面这句话,说明你启动成功了。 

测试

postman

打开 postman 进行本地测试,新建连接并输入链接,可以看到得到数据了。

网页测试 

也可以正确拿到数据,那么到这里我们就大功告成了!

源码

GitHub链接: chenyajun-create/node-mysql (github.com)

所有源码已经同步提交GitHub,觉得对你有帮助的话,记得帮作者点下star⭐~非常感谢呢

  • 16
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
Navicat是一款功能强大的数据库管理工具,可以于连接和管理各种类型的数据库。它支持多种数据库系统,包括MySQL、Oracle、SQL Server等。 要连接Node.jsMySQL数据库,你可以按照以下步骤进行操作: 1. 首先,确保你已经安装了Node.jsMySQL数据库,并且数据库已经正确配置和启动。 2. 在Node.js项目中,使用npm安装mysql模块,可以通过以下命令进行安装: ``` npm install mysql ``` 3. 在Node.js代码中,使用以下代码进行MySQL数据库连接: ```javascript const mysql = require('mysql'); const connection = mysql.createConnection({ host: 'localhost', // 数据库主机名 user: 'root', // 数据库用户名 password: 'password', // 数据库密码 database: 'database_name' // 数据库名称 }); connection.connect((err) => { if (err) { console.error('Error connecting to MySQL database: ' + err.stack); return; } console.log('Connected to MySQL database as id ' + connection.threadId); }); ``` 请将上述代码中的`host`、`user`、`password`和`database_name`替换为你自己的数据库信息。 4. 运行Node.js代码,如果一切正常,你应该能够成功连接MySQL数据库。 关于你提到的连接报错"Client does not support authentication protocol requested by server",这是由于MySQL服务器使用了较新的身份验证插件,而Navicat连接工具使用MySQL客户端版本较旧,不支持该身份验证插件导致的。解决这个问题的方法有两种: 1. 更新Navicat连接工具的版本,确保使用的是最新版本,以支持新的身份验证插件。 2. 在MySQL服务器上修改用户的身份验证方式,将其改为旧的身份验证插件。可以使用以下命令进行修改: ```sql ALTER USER 'username'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; ``` 将上述命令中的`username`和`password`替换为你自己的用户名和密码。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

JacksonChen_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值