Typescript初心者です。Next.jsを使い、TypeScriptにてAPI経由でDBへのアクセスがしたいです。
pages/api内に、以下のファイルを作成しました。
Typescript
// Next.js API route support: https://nextjs.org/docs/api-routes/introductionimport type { NextApiRequest, NextApiResponse } from 'next'; export default async function handler( req: NextApiRequest, res: NextApiResponse,) { const mysql = require('mysql'); console.log('mysql準備済み'); const con = mysql.createConnection({ host: 'localhost', user: 'root', database: 'sample', }); console.log('mysql接続済み'); //クエリログ書き出し const query = `SELECT * FROM text`; con.connect(err => { if (err) throw err; console.log('接続完了'); con.query(query, (err, result, fields) => { if (err) throw err; console.log(result); }); }); res.status(200); res.end();}
ローカルにてmysqlサーバーを立てて、ブラウザにapiのurlを打ち込みDBに接続しようとしたところ、以下のエラーが表示されました。
node
error - uncaughtException: Error: connect ECONNREFUSED ::1:3306 at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1246:16) { errno: -61, code: 'ECONNREFUSED', syscall: 'connect', address: '::1', port: 3306, fatal: true }
エラーメッセージを調べたところ、mysqlサーバが起動していないかとの文面があったのですが、以下のコマンドを打ったところaliveと表示されたので、起動はしていると思います。
zsh
mysqladmin ping -u root
こちら接続する方法が知りたいです。よろしくおねがいします。
0 コメント