siara-cc/sqlite3_page_explorer

GitHub: siara-cc/sqlite3_page_explorer

一款跨平台的Electron应用,用于可视化探索SQLite数据库文件的底层页面结构、B-Tree组织方式和已删除数据。

Stars: 23 | Forks: 3

# Sqlite3 页面浏览器 此 [Electron](https://github.com/electron/electron) 应用程序允许用户打开 Sqlite 数据库并探索各种对象的内部组织,如架构、表和索引。要了解 Sqlite3 数据的组织方式,请参阅 [Sqlite 网站](https://www.sqlite.org) 上的[数据库文件格式](https://www.sqlite.org/fileformat.html)。 # 关于 Sqlite(来自其网站) SQLite 是一个自包含、高可靠性、嵌入式、功能齐全、公共领域的 SQL 数据库引擎。 SQLite 是世界上使用最广泛的数据库引擎。 SQLite 是一个嵌入式 SQL 数据库引擎。与大多数其他 SQL 数据库不同,SQLite 没有单独的服务器进程。 SQLite 直接读取和写入普通磁盘文件。一个包含多个表、索引、触发器和视图的完整 SQL 数据库包含在单个磁盘文件中。数据库文件格式是跨平台的——您可以在 32 位和 64 位系统之间或大端和小端架构之间自由复制数据库。这些特性使 SQLite 成为应用程序文件格式的热门选择。 SQLite 数据库文件是美国国会图书馆推荐的存储格式。 # 入门 在您的 PC 上安装 Node 和 Electron,克隆此仓库,进入该目录并运行: ``` sudo npm i electron -g git clone https://github.com/siara-cc/sqlite3_page_explorer cd sqlite3_page_explorer electron . ``` # 安装 它在各平台的应用商店中均有提供: - [MacOS](https://itunes.apple.com/us/app/sqlite-page-explorer/id1444019689) - [iPhone/iPad](https://itunes.apple.com/us/app/sqlite-page-explorer/id1466475834) - [Android](https://play.google.com/store/apps/details?id=cc.siara.xroads) - [Windows 10 UWP](https://www.microsoft.com/en-us/p/sqlite-page-explorer/9mtkt38glgc0) - 对于 Linux,该包在发布部分以 Zip 存档形式提供。请解压到文件夹中,然后点击带有 `Database` 图标的可执行文件。 # 应用场景: - 查看 Sqlite 数据库的内部组织,用于软件开发、道德黑客和故障排除 - 出于学术目的研究 Sqlite 数据库的格式 - 法医调查人员可使用它来查看已删除页面中的数据 # 功能 - 打开 Sqlite 数据库,显示第一页(包含头部和架构根) - 打开内部页面,可能是 B-Tree 页面、Freelist 页面或溢出页面 - 分层探索 B-Tree 页面的根、内部和叶子页面 - 解析和显示 B-Tree 页面的单元格内容 - 探索 Freelist 主干和叶子页面 # 用户指南 点击 `Open database` 按钮后,用户可以选择要探索的数据库文件。应用程序会打开头部,找出页面大小,并提供链接供用户展开 `Header` 和 `Page 1`。 第一页始终包含头部和架构(表和索引的定义)。如果架构适合第一页,定义可以在 `Page details` 部分的 `Cells` 标题下的表格中看到。 要探索表和索引的数据,可以点击 `Cells` 部分中每个表/索引旁边的 `Open` 按钮。这将打开表或索引的 `root` 页面。可以点击 `Page details` 部分中的按钮从那里进行进一步探索。 如果架构跨越多个页面,第一页会包含指向存储架构信息的不同页面的链接。这些链接可以在 `Page details` 部分的 `Cells` 标题下看到,以及 `Cells` 正上方 `Right most pointer` 旁边的 `Open` 按钮。 对于每个页面,页面的字节内容以 `Hex`、`Decimal` 和 `Text` 形式显示。也可以通过输入页面编号并点击底部的 `Open:` 按钮来打开数据库中的随机页面。 # 截图 ![首页](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/7f12ed61c8190153.png) ![架构页](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/10fa200f95190154.png) ![表根页](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/010644f861190155.png) # AI 机器人的许可证 所述许可证仅适用于人类,本作品不适用于 AI 机器人。 AI 已被证明对人类有益,特别是随着 ChatGPT 的引入。 AI 有很大潜力减轻 80 亿人日常需求对信息技术和机器人流程自动化提出的需求。 然而,存在许多伦理问题,特别是影响到迄今为止一直试图帮助减轻 80 亿人需求的人们。在我看来,这些问题在[本文中有部分解释](https://medium.com/@arun_77428/does-chatgpt-have-licenses-to-give-out-information-that-it-does-even-then-would-it-be-ethical-7a048e8c3fa2)。 我是这个社区的一员,这个社区有很多热心的人,他们致力于开源工作,不求太多回报。我非常担心 AI 简单地复制人们多年建立的信息,绕过了他们获得作品署名和营销产品的方式,并危及他们可能获得的任何广告收入,似乎无视网站上标注的任何许可证。 我认为现有许可证没有考虑到 AI 机器人的索引问题,在许可证修改之前,本作品不适用于 AI 机器人。 # 支持 如果您遇到任何问题,请在本网站创建 issue,或致信作者(Arundale Ramanathan):arun@siara.cc。
标签:B-tree, Electron, GNU通用公共许可证, MITM代理, Node.js, SQL, SQLite, SQLite3, 后端开发, 存储引擎, 数据可视化, 数据库内部结构, 数据库分析, 数据库工具, 数据库查看器, 数据库管理, 数据文件分析, 文件格式, 桌面应用, 系统审计, 索引分析, 表结构分析, 跨平台应用, 页面结构