
说实话,我第一次听说SQLite的时候,脑子里冒出来的第一个念头是:又一个数据库?MySQL、PostgreSQL、MongoDB已经够我头疼的了。但后来发现,SQLite压根不是那种需要你花三天时间配置环境、装一堆依赖、调半天权限的数据库。它的卖点就一个词:轻。有多轻?整个数据库引擎就一个C语言库,几百KB的大小,连安装过程都简单到让你怀疑人生——下载个文件,完事儿。对,你没听错,SQLite的安装就是这么朴实无华。它不需要服务器进程,不需要管理员权限,甚至不需要专门的安装程序。你把它放在U盘里,插到任何一台电脑上都能直接跑。这篇文章就是写给那些对数据库有点怵、觉得安装软件比写代码还难的朋友,手把手带你走一遍,保证零基础也能搞定。
先说说SQLite到底是个什么玩意儿。它本质上是一个嵌入式关系数据库引擎,意思是说,它不像MySQL那样需要你启动一个服务端程序,然后客户端去连接它。SQLite直接把数据库引擎集成在你的应用程序里,读写数据就像读写一个普通文件一样。你装好SQLite之后,实际上得到的是一个命令行工具,叫sqlite3。这个工具让你能直接操作数据库文件,比如创建表、插入数据、查询数据。但更常见的使用场景是,你写程序的时候通过库文件调用SQLite的功能,比如Python里有sqlite3模块,C语言里有libsqlite3.so。所以你装SQLite,其实装的是两样东西:一个命令行工具,一个库文件。这两样东西的安装方式完全取决于你用什么操作系统。
Windows用户最省心。你去SQLite官网(sqlite.org)的下载页面,找到Precompiled Binaries for Windows那一栏,看到sqlite-dll-win-x64-xx.zip和sqlite-tools-win-x64-xx.zip这两个文件,直接下载。第一个是动态链接库,第二个是命令行工具。下载完解压,你会得到几个文件,其中最关键的就是sqlite3.exe。你双击它,一个黑窗口就弹出来了,输入.help看看有没有反应,能跑就说明装好了。但每次都要到文件夹里双击太麻烦,你可以把sqlite3.exe所在的路径加到系统环境变量PATH里。具体操作:右键“此电脑” -> 属性 -> 高级系统设置 -> 环境变量 -> 在系统变量里找到Path,双击编辑 -> 新建,把解压文件夹的路径粘贴进去。搞定以后,你在任意地方打开命令提示符,输入sqlite3,都能直接启动。
Mac用户更简单。macOS自带了SQLite,你打开终端输入sqlite3 --version,大概率能看到版本号。但自带的版本可能比较老,如果你想用最新版,推荐用Homebrew安装。打开终端,先确认你有没有装Homebrew,没装的话去brew.sh复制安装命令,一行代码搞定。装好Homebrew后,输入brew install sqlite3,等它下载编译完,你就有了最新版。用Homebrew安装的好处是,它会自动帮你把可执行文件放到/usr/local/bin目录下,你不需要手动配置任何路径。而且Homebrew还会装一些额外的工具,比如sqlite3的命令行补全功能,挺实用的。如果你不想用Homebrew,也可以去官网下载Mac版的预编译二进制文件,跟Windows一样解压就能用。但Mac用户通常更习惯用命令行,所以Homebrew是首选。
Linux用户更不用说,你们可能已经习惯了用包管理器装东西。Debian/Ubuntu系统,打开终端输入sudo apt-get install sqlite3,回车输密码,几秒钟就装好。Red Hat/CentOS系列,用sudo yum install sqlite或者sudo dnf install sqlite。装完以后输入sqlite3 --version确认一下。Linux用户最大的优势是,你们的环境本身就是开发利器,SQLite装好以后,你可以直接在终端里操作数据库,配合shell脚本做自动化任务,效率很高。而且Linux下的SQLite库文件默认就安装在系统路径里,你写C程序的时候直接include
装好以后怎么验证?打开命令行输入sqlite3,看到SQLite版本号和sqlite>提示符,就说明成功了。你可以试试创建一个数据库文件,比如输入.open test.db,然后输入CREATE TABLE users (id INTEGER, name TEXT);,再输入INSERT INTO users VALUES (1, '张三');,输入SELECT * FROM users;,如果能看到数据,就说明一切正常。退出的时候输入.quit。整个过程不超过两分钟,连数据库文件都自动生成了。你可以在当前目录下找到test.db这个文件,它就是你的数据库。这是SQLite最神奇的地方——一个数据库就是一个文件,你可以复制、移动、压缩,甚至用邮件发给别人,对方直接用sqlite3打开就能操作。
有人可能会问:装SQLite到底图什么?图它不用配置,图它没有后台进程,图它轻到可以嵌入到手机App、嵌入式设备里。比如你写一个桌面软件,需要存点配置数据或者用户信息,你总不能让用户先去装个MySQL吧?用SQLite,你直接把库文件打包进安装包,用户双击运行,数据自己就存好了。再比如你做数据分析,临时从API拉了一堆数据,想快速查一查,开个终端用SQLite几行命令就搞定,比用Excel快多了。甚至有些网站也用SQLite做数据库,比如访问量不大的个人博客或者内部工具,完全够用。
但SQLite也有它的局限性。它不支持高并发写入,因为写操作会锁住整个数据库文件。你不可能用它做大型电商网站的数据库,那种场景下MySQL或者PostgreSQL才是正解。还有,它没有用户权限管理,谁拿到那个.db文件就能看里面的数据。所以你的应用场景如果是多用户同时写入、数据安全性要求极高,SQLite就不合适。但如果你只是做个个人工具、原型验证、嵌入式系统,或者数据量不大、并发不高的场景,SQLite简直就是神器。
回到安装这件事本身,SQLite的安装难度基本为零,真正的门槛是你愿不愿意动手试一下。很多人对数据库有恐惧心理,觉得那东西高深莫测,但实际上SQLite就是一把螺丝刀,你拿起它拧几下螺丝,就知道怎么回事了。我建议你装好以后,花十分钟随便玩玩,建个表,插几条数据,写几个查询。你会发现,数据库操作没那么玄乎,无非就是增删改查。等你熟悉了,再去学MySQL或者PostgreSQL,会发现很多概念都是相通的。
说一句,SQLite的官方文档写得很好,尤其是那个命令行工具的说明,列了所有支持的命令和快捷键。你装好以后输入.help就能看到,或者去官网看在线文档。别怕看英文,那些命令就那么几个,看多了就记住了。如果你在安装过程中遇到问题,比如解压后双击没反应、环境变量配置不成功,大概率是路径写错了或者文件没解压完整。检查一下文件大小对不对,路径里有没有中文或者空格。实在不行,去Stack Overflow或者知乎上搜一下,这种基础问题一堆人问过,答案一大把。
所以,别犹豫了,去官网下载,解压,跑起来,整个过程不超过五分钟。SQLite这个数据库,装不装是你的事,但装了绝对不亏。


