首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在AWS上从RDS中获取数据返回空数组

在AWS上从RDS中获取数据返回空数组
EN

Stack Overflow用户
提问于 2022-09-15 17:43:06
回答 1查看 56关注 0票数 0

我在AWS上的RDS上设置了一个mysql数据库(我从我的个人计算机移植了数据库),并在一个木星笔记本中建立了一个到数据库的数据连接。假设我有一个表mouse,其中有一个列mouse_id。data返回的mouse.size_on_disk与在我的个人计算机上返回的相同,因此即使从Sagemaker它也显示数据在那里(我也知道数据在那里,就像我使用mysql远程访问AWS时一样)。

但是当我试图获取(例如,mouse.fetch('mouse_id') )时,我得到的是一个空数组。是否需要对某些设置进行调整才能使fetch()工作?

下面是一些示例代码:

代码语言:javascript
复制
import datajoint as dj

# connect to server
dj.config['database.host'] = 'ip_address_here'
dj.config['database.user'] = 'admin'
dj.config['database.password'] = 'not_my_password'
dj.conn()

# define table/fetch data
from pipeline.tables import Mouse
mouse_table = Mouse()

mouse_table.size_on_disk  #16k on both systems
print(len(mouse_table)) # 22 on personal, 0 on AWS

mouse_names = mouse_table.fetch('mouse_id')  # full on personal, empty on AWS
EN

回答 1

Stack Overflow用户

发布于 2022-09-15 19:35:47

我找到了错误/解决方案。当我在AWS上创建一个RDS实例(使用他们的GUI)时,我不得不选择一个db名称,并且我选择了一些随机名称nd (用于神经数据),甚至没有考虑它。

但是,在我的本地管道中,当我定义数据库模式时,我已经将它命名为其他的东西(fc,用于恐惧条件):

代码语言:javascript
复制
schema = dj.schema(schema_name = 'fc', context = locals())

这一行在我上传到AWS的代码中。修复:在AWS中,我进入我的模块并更改了该行,以便模式名称与RDS中的新db名称相匹配:

代码语言:javascript
复制
schema = dj.schema(schema_name = 'nd', context = locals())

现在去找工作!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73735402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档