开发者社区> 问答> 正文

基于模式的多租户:不时获取“ java.sql.SQLException:未选择数据库”

我的代码是用Java编写的,并且使用Spring JDBC模板访问MySQL数据库。

我的系统是一个多租户,每个租户在MySQL中都有自己的专用架构(例如“ tenant_1”,“ tenant_2”等)。

这是初始化数据库连接的方式:

在引导过程中,我创建了一个暴露DataSourceTransactionManager的bean ,该bean 由配置有MySQL数据库的连接字符串(未指定架构)的DataSource初始化。

由于我的系统是多租户,因此对于每个请求,我都必须选择给定租户的架构。因此,典型查询如下所示:

1、“使用tenant_xxx” 2、.... 问题:

我不时地(1至数千次处决)

java.sql.SQLException:未选择数据库。

我仔细检查了我的代码-实际上,我总是在执行查询之前选择架构。

有任何想法吗?

Spring-最新版本(5.x) Java-11 MySQL(5.7),在本地MySQL和AWS Aurora上均已复制

展开
收起
垚tutu 2019-11-28 18:14:31 969 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
SQL Server在电子商务中的应用与实践 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载