title: medium - large portable database options for python program
body: <p>I am creating a simple python program that needs to search a somewhat large database ( ~40 tables, 6 Million or so rows all together  ). </p>
  
  <p>Currently, I use MySQLdb to query my local MySQL database then I have some other python function that work with the data and returns some statistics and other stuff. I would like to share this with others that do not want to construct their own database. At this point the database is used for queries only. </p>
  
  <p>How best can I share the database and python program as a "package". Do I have to give up on the SQL method and switch to some sort of text file database or is there an easier way... sqlite maybe?</p>
  
  <p>If the answer is sqlite how do I go about exporting my current SQL database to the sqlite database? Is there any gotchas I should know about?</p>
  
  <p>Currently I use simple SELECT quarries with a few WHERE statements to locate the data I need. I am afraid that if I switched to text based database I would end up having to write a large amount of code to make these queries.  </p>
  
  <p>Thank you in advance for any suggestions. </p>
  
  <p><strong>EDIT</strong></p>
  
  <p>So I wrote my little python program with an sqlite3 database and it works perfectly.</p>
  
  <p>I ended up using using a shell script called mysql2sqlite.sh found <a href="https://gist.github.com/943776" rel="nofollow noreferrer">here</a> to convert my MySQL database to sqlite. It worked flawlessly.</p>
  
  <p>I only had to change 2 lines of python code. Awesome. </p>
  
  <p>My little program runs in osx, windows and linux (ubuntu and redhat) without any changes or hassle. Thanks for the advise! </p>