我有一个文件GeoLite2-City.mmdb
是MaxMind DB文件。
我想看看它的内容。
查看此.mmdb
文件内容的方法是什么?MaxMind是否提供能够读取此类文件的工具或库?
请参阅 Maxmind 的 mmdb 文件规范。
MMDB数据库是自包含的"搜索树索引文件",因此您不能只是按记录顺序读取和显示文件记录(甚至其"数据记录"也包括指向其他"缓存"数据记录的指针,这些记录包含实际的人类可读字符串,如国家/地区名称(。因此,文本编辑器提供的视图是没有用的 - 您需要一个等效的phpMyAdmin中MySQL的"表"行查看器,允许"顺序"显示或按IP查找。
据我所知,没有这样的查看器可用。它们是巨大的文件,如果您只是出于兴趣而想查看,那么不值得付出努力。
一个有能力的程序员可以编写自己的查看器,但我会将这项任务描述为具有挑战性(我开始编程,在DBMS 之前的IBM大型机上创建和导航索引顺序文件套件(。Maxmind关于构建(和阅读(自己的MMDB的文章将提供有用的指针。
上面的规范包含指向各种语言的阅读器库/包的链接,您可以使用或添加到这些现有的阅读器函数中(例如,对于PHP阅读器,请参阅Reader.php和Decoder.php(
对于"顺序"显示,您需要遍历文件(例如Perl:iterate_search_tree(。我不确定是否直接内置了所有Maxminds阅读器的等效功能,或者您是否必须扩展。