我有一个.db文件,其大约20GB的大小有三个表和其余数据的实际问题。.db文件和MySQL
我在一个mac,所以我不得不使用一些蹩脚的应用程序,但它不会在Access中打开。
是否有人知道什么软件会产生一个.db文件,哪些软件可以让我打开它并将其导出为CSV或MySQL文件?
此外,如果在运输过程中连接中断可以影响文件?
我有一个.db文件,其大约20GB的大小有三个表和其余数据的实际问题。.db文件和MySQL
我在一个mac,所以我不得不使用一些蹩脚的应用程序,但它不会在Access中打开。
是否有人知道什么软件会产生一个.db文件,哪些软件可以让我打开它并将其导出为CSV或MySQL文件?
此外,如果在运输过程中连接中断可以影响文件?
由于mac现在基于BSD,因此请尝试打开终端并执行命令file /path/to/large/db
- 它应该至少告诉您该数据库是哪种文件类型,并且从那里可以确定要使用哪个程序打开它。它可能是MySQL,可能是PostGreSQL,可能是SQLite--文件会告诉你。
例子:
$ file a.db
a.db: SQLite 3.x database
$ file ~/.kde/share/apps/amarok/mysqle/amarok/tracks.{frm,MYD,MYI}
~/.kde/share/apps/amarok/mysqle/amarok/tracks.frm: MySQL table definition file Version 10
~/.kde/share/apps/amarok/mysqle/amarok/tracks.MYD: data
~/.kde/share/apps/amarok/mysqle/amarok/tracks.MYI: MySQL MISAM compressed data file Version 1
所以它的SQLite V3?然后尝试
sqlite3 /path/to/db
并且您可以从CLI执行非常多的标准SQL。 At the CLI, you can type .tables
to list all the tables in that DB。 - 或者,如果您更喜欢使用GUI,则在this question中列出了几个选项。接受的答案是SQLite manager for Firefox。
然后你可以drop tables或delete你认为合适的。
这里的倾销CSV到标准输出的一个例子:
$ sqlite3 -separator ',' -list a.db "SELECT * FROM t"
3,4
3,5
100,200
并将其保存到一个文件 - >运算输出重定向到你命名一个文件:
$ sqlite3 -separator ',' -list a.db "SELECT * FROM t" > a.csv
$ cat a.csv # puts the contents of a.csv on stdout
3,4
3,5
100,200
-separator ','
指示该字段应以逗号分隔; -list
表示使用分隔符将行数据放在同一行上; a.db
指示使用哪个db;而"SELECT * FROM t"
只是要执行的SQL命令。
我不是Mac用户,但如果它是SQLite文件,我听说Base有很棒的事情。
每当我尝试使用它时,它都会崩溃你认为这可能是因为我没有为它付费? – 2009-08-22 04:07:06
不,大声笑。由于数据库的大小,这可能是内存溢出。尝试寻找替代方案@ alternativeto.net – 2009-08-22 04:14:17
也许RazorSQL http://alternativeto.net/desktop/razorsql/?profile=mac&platform=mac – 2009-08-22 04:16:26
它的SQlite版本3, 什么是在mac上打开20gb .db文件的最佳方法是什么? 如果我不得不为每张桌子削减3次,我不会感到困扰。 – 2009-08-22 03:07:43
那么我怎么能发出命令将.db文件复制到CSV? – 2009-08-22 03:24:13
对不起,我很难过, 我得到这个“Unknown-00-1f-5b-c7-49-5c:〜MacHome $ sqlite3 -separator','-list /Users/MacHome/Desktop/tpb/tpb.db “SELECT * FROM猫” 100,音频 101,音频>音乐 102,音频>音频书籍 103,音频>声音剪辑 104,音频> FLAC 199,音频>其他 ETC ETC” 不这意味着它是完整的,如果是的话,它已经放置了CSV? – 2009-08-22 04:33:10