我正在创建一个简单的python程序,需要搜索一个有点大的数据库(大约40个表,大约6百万行)。
目前,我使用MySQLdb来查询我的本地MySQL数据库然后我有一些其他python函数可以处理数据并返回一些统计信息和其他东西。我想与其他不想构建自己的数据库的人分享这个。此时,数据库仅用于查询。
我如何才能最好地将数据库和python程序作为“包”共享。我是否必须放弃SQL方法并切换到某种文本文件数据库,或者有更简单的方法... sqlite可能吗?
如果答案是sqlite,我该如何将当前的SQL数据库导出到sqlite数据库?有什么问题我应该知道吗?
目前,我使用简单的SELECT采石场和一些WHERE语句来定位我需要的数据。我担心如果我切换到基于文本的数据库,我最终将不得不编写大量代码来进行这些查询。
提前感谢您的任何建议。
修改
所以我用sqlite3数据库写了我的小python程序,它运行得很好。
我最终使用名为mysql2sqlite.sh的shell脚本找到here将我的MySQL数据库转换为sqlite。它完美无缺。
我只需更改2行python代码。真棒。
我的小程序在osx,windows和linux(ubuntu和redhat)中运行,没有任何变化或麻烦。谢谢你的建议!