我最近在一个实验室做志愿者,我的PI说他们的实验不起作用,因为没有工人能够完成任务。
我的假设是,他们的sqlite实现不允许正确记录实验数据,因为sqlite在并发操作上无效(如psiturk文档中所述)。我的问题是,我如何正确设置一个mysql数据库来处理他们已经做好的实验?
我从mysql解释器中创建了一个名为“particpants”的新数据库。然后我成功地启动了mysql服务器...
接下来,我将“config.txt”文件中的database_url
从等于sqlite://participants.db
(本地数据库文件)更改为等于mysql://aweeeezy@localhost:3306/participants
,但是当我尝试启动psiturk服务器时,我无法连接到数据库。
我还试了mysql://aweeeezy@localhost/particpants
...我不知道如何格式化这个database_url字符串,以便实验与mysql一起工作,当搜索mysql相关的帖子和/或psiturk相关的帖子时,我没有找到任何有用的东西。
请帮助一个数据库noob!
1条答案
按热度按时间rjee0c151#
使用MySQL的config.txt的database_url字段的格式需要是mysql://username:password@hostname/database。psiTurk 2.0依赖于SQLAlchemy,这里有一些关于它的文档:http://docs.sqlalchemy.org/en/rel_1_0/core/engines.html