Loading......
接着上文,创建完数据库后,需要一个包进行服务端与数据库的连接 ( 称为 Server 通过 ORM 连接数据库);
我们在服务器的终端输入 npm i sequelize mysql2 安装两个包用来服务端与数据库建立连接;
在客户端的 app.js 中将新增加的包引入并且将其实例化;
const {Sequelize}=require('sequelize')
const sequelize=new Sequelize(process.env.DB_NAME,process.env.DB_USERNAME,process.env.DB_PASSWORD,{
dialect:process.env.DB_DIALECT,
host:process.env.DB_HOST,
port:process.env.DB_PORT,
logging:false,
})
并在 .env 中配置相应的数据;
# mysql
DB_NAME = gt_v1
DB_USERNAME = root
DB_PASSWORD = 123456
DB_DIALECT = mysql
DB_HOST = localhost
DB_PORT = 3306
在 app.js 文件中插入一段调试代码,用来查看 数据库 与 客户端 是否联通;
const dbConnection = async () => {
try {
await sequelize.authenticate();
console.log('mysql Connection successful !!! ');
} catch (error) {
console.error('Unable to connect to the database:', error);
}
}
dbConnection()
最后在终端启动服务,出现 mysql Connection successful !!! 说明 数据库 与 服务器 连接成功;
app.js 中代码:
require('dotenv').config({ path: '.env' })
const express = require('express')
const { Sequelize } = require('sequelize')
const sequelize = new Sequelize(process.env.DB_NAME, process.env.DB_USERNAME, process.env.DB_PASSWORD, {
dialect: process.env.DB_DIALECT,
host: process.env.DB_HOST,
port: process.env.DB_PORT,
logging: false
})
const dbConnection = async () => {
try {
await sequelize.authenticate();
console.log('mysql Connection successful !!! ');
} catch (error) {
console.error('Unable to connect to the database:', error);
}
}
dbConnection()
const app = express()
const PORT = process.env.PORT || 8080
app.listen(PORT, () => {
console.log(`running http://localhost:${PORT}`);
})
.env 中代码:
# server
HOST = localhost
PORT = 8000
# mysql
DB_NAME = gt_v1
DB_USERNAME = root
DB_PASSWORD = 123456
DB_DIALECT = mysql
DB_HOST = localhost
DB_PORT = 3306
未完待续......