mysql多数据源_egg-mysql配置多数据源

//单个数据源client

//多个数据源clients

import { EggAppConfig, EggAppInfo, PowerPartial } from "egg";

export default (appInfo: EggAppInfo) => {

const config = {} as PowerPartial;

// override config from framework / plugin

// use for cookie sign key, should change to your own and keep security

config.keys = appInfo.name + "_1606967424562_9661";

// add your egg config in here

config.middleware = [];

// add your special config in here

const bizConfig = {

sourceUrl: `https://github.com/eggjs/examples/tree/master/${appInfo.name}`,

};

//连接服务器

config.mysql = {

//database configuration

//单个数据源client

//client: {

//host

//host: "localhost",

//port

//port: "3306",

//username

//user: "root",

//password

//password: "root",

//database

//database: "egg",

//},

//多个数据源clients

clients: {

db1: {

//host

host: "localhost",

//port

port: "3306",

//username

user: "root",

//password

password: "root",

//database

database: "egg",

},

db2: {

//host

host: "localhost",

//port

port: "3306",

//username

user: "root",

//password

password: "root",

//database

database: "hubeiwh",

},

},

// 所有数据库配置的默认值

default: {},

//load into app,default is open //加载到应用程序,默认为打开

app: true,

//load into agent,default is close //加载到代理中,默认值为“关闭”

agent: false,

};

// the return config will combines to EggAppConfig

return {

...config,

...bizConfig,

};

};

然后去服务里面使用数据库

// app/service/Test.ts

import { Service } from "egg";

/**

* Test Service

*/

export default class Test extends Service {

/**

* 查询egg库里面username表

* @param {string} name 用户名称

*/

public async name(name: string) {

const data: any = await this.app.mysql

//使用db1数据库查询

.get("db1")

.query(`SELECT * FROM USERNAME WHERE name = '${name}'`);

return { data };

}

/**

* 查询hubeiwh库里面username表

* @param {number} entPid 企业id

*/

public async entprise(entPid: number) {

const data: any = await this.app.mysql

//使用db2数据库查询

.get("db2")

.get("cim_enterprise", { enterpid: entPid });

return { data };

}

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/500260.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql数据库容量最大多少_mysql数据库最大容量

{"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里云数据库专家保驾护航,为用户…

vue隐藏浏览器_一分钟学会Vue的条件渲染和列表渲染

介绍之前一段时间由于工作很忙,没有时间继续学习Vue,今天算是继续对之前的学习进行补充了,今天要学习的便是Vue的条件渲染和列表渲染,我们将讨论if、if-else、if-else-if,show等。在列表渲染中,我们将讨论如…

aws s3 python_Python 操作amazon s3 | 学步园

Python 操作amazon s3import osimport botofrom boto.s3.key import Keyfrom boto.s3.connection import S3Connectionfrom boto.s3.connection import Locationfrom boto.exception import S3CreateErroros.environ["AWS_ACCESS_KEY_ID"] "..."os.envir…

mysql联合索引数据库查询数据会变慢_如何定位并优化慢查询SQL以及联合索引和索引多的弊端...

以下思路均以Mysql为例,不过SQL调优通用的根据慢日志定位慢查询SQL;使用show variables like ‘%quer%’;主要查看slow_query_log,slow_query_log_file,long_query_time;这三个是主要关注和修改的变量。show status like ‘%slow_queries%’;…

mysql索引背后的数据结构_图解Mysql索引的数据结构!看不懂你来找我

听说微信搜索《Java鱼仔》会变更强哦!本文收录于JavaStarter ,里面有我完整的Java系列文章,学习或面试都可以看看哦(一)关于索引索引是帮助Mysql更加高效获取数据的一种数据结构,索引的使用很简单,但是如果不能理解索引…

C语言入门——自我介绍

自我介绍 大家好,我是浙江大学的一名大一学生,从今天起我将在CSDN上写博客,整理自己学习的内容与心得,希望能与大家一同学习,一同进步! 我希望能通过一个寒假的学习,能够基本掌握C语言&#xff…

mysql 集群分区_mysql 集群与分区

一、主从集群配置原理:主服务器建立二进制日志,每产生语句或磁盘变化,写进日志;从服务器读取主服务器的二进制日志从而建立relaylog日志;然而主服务器需要授权复制账号给从服务器来监听二进制日志。a) 建立主服务器二进…

常见的字符函数与字符串函数介绍(1)

常见的字符函数与字符串函数介绍 前言 C语言中对字符与字符串的处理很是频繁,但是C语言中并没有字符串类型的变量,字符串通常存放在常量字符串或者字符数组中。字符串常量适用于那些对它不做任何修改的字符串函数。 函数功能简介与再实现 1、 strlen…

postman raw带文件_postman raw模拟各种http post请求

在url或者query里面传递参数这个最简单http://localhost:5000/queryhttp://localhost:5000/query/xxxhttp://localhost:5000/query/idxxx上传表单key-value数据1.使用自带的功能body设置header设置2.使用raw来模拟body设置header设置不变上传单个文件1.使用自带功能body设置hea…

找第一个只出现一次的字符_剑指offer 字符流中第一个只出现一次的字符

题目描述:请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是g。当从该字符流中读出前六个字"google"时,第一个只出现一次的字符是l…

python list是数组还是链表实现的_python 数据结构 list和链表实现栈的三种方法

MAX_SIZE 100classMyStack1(object):"""模拟栈"""def __init__(self):self.items[]self.size0defis_empty(self):"""判断是否为空"""return self.size 0defsize(self):"""返回栈的大小"&quo…

python去掉人像白边_python 使用plt画图,去除图片四周的白边方法

用matplotlib.pyplot画的图,显示和保存的图片周围都会有白边,可以去掉。为了显示的更清楚,给图片加了红色的框代码“import matplotlib.pyplot as pltfig, ax plt.subplots()im im[:, :, (2, 1, 0)]ax.imshow(im, aspectequal)plt.axis(‘o…

python重复输出五句话_如何用python3输出重复的数据?

面对很多重复的数据,如果人工一个个处理起来会很麻烦,而且要浪费大量的时间和精力。之前就python处理数据是简单便捷的,有没有一种方法能把重复的数据输出出来,这样就一目了然了。相信有一些小伙伴也跟小编有同样的困扰&#xff0…

php mysql倒计时_php 倒计时程序

测试页面//获取系统时间,将时间以指定格式显示到页面。function systemTime(){//获取系统时间。var dateTimenew Date();var YYdateTime.getFullYear();var MMdateTime.getMonth();var DDdateTime.getDate();var hhdateTime.getHours();var mmdateTime.getMinutes()…

win10无法装载重装系统iso文件_win10镜像不能安装系统如何解决_win10镜像无法安装处理方法...

如今,大部分用户下载到的win10系统都是属于镜像文件,能够最大便利的让用户安装步骤简单化,可是最近有用户下载的win10系统中出现了镜像不能安装的问题,那么win10镜像不能安装系统如何解决呢?下面就来告诉大家win10镜像…

在python中使用什么工具管理模块_怎么使用Python pip(管理模块工具)

怎么使用Python pip(管理模块工具)发布时间:2020-08-26 16:04:26来源:亿速云阅读:71作者:Leah本篇文章给大家分享的是有关怎么使用Python pip(管理模块工具),小编觉得挺实用的,因此分享给大家学习&#xff…

anaconda下载jupyter写python_如何安装Anaconda3和使用Jupyter

如何安装Anaconda3和使用Jupyter发布时间:2020-10-28 14:41:26来源:亿速云阅读:64作者:Leah这期内容当中小编将会给大家带来有关如何安装Anaconda3和使用Jupyter,文章内容丰富且以专业的角度为大家分析和叙述&#xff…

mysql用户添加_MySQL用户添加

我的是Ubuntu-12.04。发现在MySQL中经常出现添加用户之后,要么只能本地登陆,要么只能远程登陆的蛋疼的情况。这里记录一下是如何操作的。 创建用户 CREATE USER username% IDENTIFIED BY password; 如果想要让这个用户即可以本地登陆,也可以远…

mysql 42642 安装报错_1/5 MySQL入门总结:下载安装

MySQL.msi版本下载:www.mysql.com >DOWNLOADS >Windows >MySQL Installer >mysql-installer-community-8.0.13.0.msi(不建议下载解压缩版,因为它还要配置my.ini文件,亲身实践,麻烦)安装:o. 缺失“Microsof…

stm32滴答计时器_stm32笔记:Systick系统滴答定时器

Systick :系统心跳定时器,提供系统节拍裸机程序中可作为独立的延时定时器用途:1.产生操作系统的时钟节拍2.便于不同处理器之间程序移植SysTick定时器被捆绑在NVIC中,异常号153.作为一个闹铃测量时间用于测量时间,但当处理器在调试期间被喊停(halt)时,则S…