egg.js 配置mysql_P12:中台搭建4-Egg.js中连接mysql数据库

本文主要是讲解一下Egg.js中使用mysql数据库,那需要你的mysql数据有基础的了解,比如说一些常用的sql语句和安装。但是如果你说我真不会,也是可以跟着我的笔记作下来的,但只是能做出效果,对于里边的为什么可能不太了解。还是需要你自己补齐一下mysql的基础知识啊。我还建议,如果你对mysql不熟悉,还是暂停学习一下,找一套相关的mysql最新教程学习一下,这样你接下来的学习才会更简单。

egg-mysql模块安装

如果要在egg.js中使用mysql数据库,那需要先进行安装egg-mysql模块,这个模块你可以使用npm或者yarn来进行安装。

npm安装命令如下:

npm install egg-mysql --save

yarn安装命令如下:

yarn add egg-mysql

安装完成可以到package.json中看一下,是否有这个文件。我安装的版本是3.0.0版本。你学的时候,这个版本可能所有变化。

进行插件配置

在安装完成以后,还不能正常使用,egg.js要求我们对于外部模块在plugin.js中进行配置。配置方法如下:

文件/server/config/plugin.js

exports.mysql = {

enable: true,

package: 'egg-mysql',

};

这个配置完,也就说明egg.js可以支持mysql数据库的使用和连接了。

plugin.js全部代码如下:

'use strict';

exports.mysql = {

enable: true,

package: 'egg-mysql',

};

以后还会多次配置这个文件,所以我们这里要对这个config.js有所印象,它的作用就是配置egg.js项目的。

数据库连接配置

这个配置时,你要先确认你已经有一台安装mysql的服务器或者是主机,当然你也可以在自己的开发机上进行安装,因为我使用的php Study这个集成开发环境(作php用的)。所以我的机器上是安装的。

打开/config/config.default.js文件,作下面的配置(这段配置你可以在npmjs 网址中搜索egg-mysql找到这个配置)

exports.mysql = {

// database configuration

client: {

// host

host: 'mysql.com',

// port

port: '3306',

// username

user: 'test_user',

// password

password: 'test_password',

// database

database: 'test',

},

// load into app, default is open

app: true,

// load into agent, default is close

agent: false,

};

这时候你需要根据你的环境,修改对应的参数,主要的就是host、user、password和database(每个数据库配置不同,所以这个每个人都不同)。 我的是这样的,但是你不一定完全跟我一样。

config.mysql = {

// database configuration

client: {

// host

host: 'localhost',

// port

port: '3306',

// username

user: 'root',

// password

password: '12345678',

// database

database: 'react_blog',

},

// load into app, default is open

app: true,

// load into agent, default is close

agent: false,

};

这个配置完成后,就可以连接到数据库了。

创建数据库

现在我们还没有数据库,所以需要先建立数据库,直接使用PhP Study里的SQL_Front来管理数据,如果你没有安装需要安装一下,安装完成后点后面的管理按钮,就可以管理了,具体步骤如下:

这里我默认你是安装了PhP Study,打开软件并启动MySQL

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

点击数据库工具里SQL_Front来管理数据(没有安装的可以到软件管理中下载安装,很方便的)

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

打开后选择新建

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

输入相关信息

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

登录数据库

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

新建数据库,名称为react_blog,输入数据库名称,点击确定,我们的数据库就创建好了。

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

选择我们刚刚创建好的数据库,新创建一个表blog_content

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

为表添加字段,字段就是title、type、introduce(类型Text)和content(类型Text)

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

这样数据库的准备就写好了,如下图:

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

然后我们随便放一条数据,并点击 “发布” 按钮即可。

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

接下来需要验证一下,数据库是否已经连接上了。

使用get进行表的查询

打开之前写的/app/controller/defalut/home.js文件,改写index方法。

'use strict';

const Controller = require('egg').Controller;

class HomeController extends Controller {

async index() {

// 获取用户表的数据

const result = await this.app.mysql.get('blog_content', {});

console.log(result);

this.ctx.body = result;

}

}

module.exports = HomeController;

改写后,在浏览器中输入http://127.0.0.1:7001/default/index。如果能在控制台打印出结果和页面中显示结果,说明数据库已经连接成功了。

注意:

在测试数据库连接时运行npm run dev命令时可能会报如下错误

gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==

本文主要讲解了egg.js中mysql数据的连接方式,下节我们简单的介绍一下数据库的增删改查操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值