标签: node-mysql2

aws rds 代理从 nodejs12.x 抛出超时错误

当我尝试连接到 mysql rds 代理时,出现连接超时。我遵循了这个教程

这是我的代码

import mysql2 from 'mysql2';
import AWS from 'aws-sdk';
const getConnection = async () => {
    const signer = new AWS.RDS.Signer({
        username: 'my-user-name',
        hostname: 'proxy-name.proxy-someid.us-east-1.rds.amazonaws.com',
        port: 3306
    });

    console.info('Connecting to MySQL proxy via IAM authentication');

    const rdsSignerAuth = () => () => {
        console.info('CALL rdsSignerAuth');
        return signer.getAuthToken({
            username: 'my-user-name',
            region: 'us-east-1',
            hostname: 'proxy-name.proxy-someid.us-east-1.rds.amazonaws.com',
            port: 3306
        });
    };

    let connection;
    try {
        connection = await mysql2.createConnection({
            host: 'proxy-name.proxy-someid.us-east-1.rds.amazonaws.com',
            user: 'my-user-name',
            database: 'database-name',
            connectTimeout: 60000,
            ssl: { …
Run Code Online (Sandbox Code Playgroud)

mysql amazon-web-services amazon-rds node.js node-mysql2

4
推荐指数
1
解决办法
5946
查看次数

nodejs mysql2异步错误(中间值)不可迭代

我的路线是这样的

import express from 'express'
import mysql from 'mysql2'
import { dbusername } from '../constant/db'
import { dbpassword } from '../constant/db'
import { dbname } from '../constant/db'
import { host } from '../constant/db'
let router = express.Router()
router.post('/', async (request, res, next) => {
    try {
        const { email, password } = request.body
        const connection = await mysql.createConnection({
            host: host,
            user: dbusername,
            password: dbpassword,
            database: dbname,
        })
        const [
            rows,
            fields,
        ] = await connection.execute(
            'SELECT `id` FROM `users` WHERE …
Run Code Online (Sandbox Code Playgroud)

node.js express node-mysql2

4
推荐指数
1
解决办法
3409
查看次数

使用现有(mysql2)连接创建 Knex 实例

我想首先创建到我的数据库的连接(使用 mysql2),然后创建一个新的 Knex 实例。我在文档中找不到与此相关的任何内容。这可能吗?

所以,理想情况下我想做这样的事情(简化版本):

const mysql = require('mysql2');
const Knex = require('knex');

const connection = mysql.createConnection(connectionConfig);
await connection.connect();
const knex = new Knex({
    client: 'mysql2',
    connection: connection,
}):
Run Code Online (Sandbox Code Playgroud)

mysql node.js knex.js node-mysql2

3
推荐指数
1
解决办法
2304
查看次数

Knex vs. mysql2 基于性能、稳定性和 ES8+ 支持

没有任何人有一个动手既DB-库经验-knex主场迎战mysql2

经过一些谷歌搜索(例如在NPMCompare),我仍然很想知道,根据实际经验,这两种选择的优缺点是什么?

到目前为止,我清楚地看到使用knexover的唯一真正优势mysql2是它对 MSSQL、MySQL、PostgreSQL、SQLite3 和 Oracle 的普遍支持,而后者仅支持 MySQL,但由于目前我只关注 MySQL, thisknex的功能似乎不太相关。

我会考虑的参数:

  • 性能和负载电阻;
  • 稳定性(生产就绪);
  • 原生 ES8+ 支持(无回调、无额外Util.promisify包装、ESM/MJS支持);
  • 简短明了,越少越好。

orm database-connection node.js knex.js node-mysql2

2
推荐指数
1
解决办法
1608
查看次数