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

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。