SQLite安装与配置 #
一、SQLite安装概述 #
1.1 安装方式 #
SQLite 提供多种安装方式:
| 方式 | 说明 | 适用场景 |
|---|---|---|
| 预编译二进制 | 直接下载可执行文件 | 快速使用 |
| 包管理器 | 使用系统包管理器 | 方便管理 |
| 源码编译 | 从源代码编译 | 自定义需求 |
| 编程语言内置 | 语言内置SQLite支持 | 应用开发 |
1.2 安装组件 #
text
SQLite 安装包含:
├── sqlite3 命令行工具
├── sqlite3 库文件
│ ├── libsqlite3.so (Linux)
│ ├── libsqlite3.dylib (macOS)
│ └── sqlite3.dll (Windows)
└── 头文件 (开发用)
└── sqlite3.h
二、Windows安装 #
2.1 下载预编译版本 #
powershell
# 1. 访问 SQLite 下载页面
# https://www.sqlite.org/download.html
# 2. 下载以下文件:
# - sqlite-tools-win-x64-*.zip (命令行工具)
# - sqlite-dll-win-x64-*.zip (DLL文件)
# 3. 解压到目录
# 例如:C:\sqlite\
2.2 配置环境变量 #
powershell
# 方法1:通过系统设置
# 1. 右键"此电脑" -> 属性 -> 高级系统设置
# 2. 环境变量 -> 系统变量 -> Path
# 3. 添加 SQLite 目录路径
# 方法2:使用 PowerShell(管理员)
[Environment]::SetEnvironmentVariable(
"Path",
$env:Path + ";C:\sqlite",
"Machine"
)
# 验证安装
sqlite3 --version
2.3 使用 Scoop 安装 #
powershell
# 安装 Scoop(如果未安装)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
# 使用 Scoop 安装 SQLite
scoop install sqlite
# 验证安装
sqlite3 --version
2.4 使用 Chocolatey 安装 #
powershell
# 安装 Chocolatey(如果未安装)
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
# 使用 Chocolatey 安装 SQLite
choco install sqlite -y
# 验证安装
sqlite3 --version
三、Linux安装 #
3.1 Ubuntu/Debian #
bash
# 使用 apt 安装
sudo apt update
sudo apt install sqlite3
# 安装开发库(如需编译)
sudo apt install libsqlite3-dev
# 验证安装
sqlite3 --version
3.2 CentOS/RHEL/Fedora #
bash
# CentOS/RHEL
sudo yum install sqlite
# Fedora
sudo dnf install sqlite
# 安装开发库
sudo yum install sqlite-devel
# 或
sudo dnf install sqlite-devel
# 验证安装
sqlite3 --version
3.3 Arch Linux #
bash
# 使用 pacman 安装
sudo pacman -S sqlite
# 验证安装
sqlite3 --version
3.4 从源码编译 #
bash
# 下载源码
wget https://www.sqlite.org/2024/sqlite-autoconf-3450000.tar.gz
# 解压
tar xzf sqlite-autoconf-3450000.tar.gz
cd sqlite-autoconf-3450000
# 配置
./configure --prefix=/usr/local
# 编译
make
# 安装
sudo make install
# 更新库缓存
sudo ldconfig
# 验证安装
sqlite3 --version
四、macOS安装 #
4.1 系统内置 #
bash
# macOS 自带 SQLite
sqlite3 --version
# 系统内置版本可能较旧
4.2 使用 Homebrew 安装 #
bash
# 安装最新版本
brew install sqlite
# 查看安装信息
brew info sqlite
# 验证安装
sqlite3 --version
4.3 使用 MacPorts 安装 #
bash
# 安装 SQLite
sudo port install sqlite3
# 验证安装
sqlite3 --version
五、验证安装 #
5.1 命令行验证 #
bash
# 检查版本
sqlite3 --version
# 输出:3.45.0 2024-01-15 17:01:13 ...
# 查看帮助
sqlite3 --help
5.2 创建测试数据库 #
bash
# 创建或打开数据库
sqlite3 test.db
# 在 SQLite 提示符下执行
sqlite> CREATE TABLE test (id INTEGER PRIMARY KEY, name TEXT);
sqlite> INSERT INTO test (name) VALUES ('Hello');
sqlite> SELECT * FROM test;
1|Hello
sqlite> .quit
# 查看数据库文件
ls -la test.db
5.3 检查库文件 #
bash
# Linux
ldconfig -p | grep sqlite
# macOS
otool -L /usr/lib/libsqlite3.dylib
# Python 检查
python3 -c "import sqlite3; print(sqlite3.sqlite_version)"
六、命令行工具配置 #
6.1 配置文件 #
bash
# SQLite 配置文件:~/.sqliterc
# 创建配置文件
cat > ~/.sqliterc << 'EOF'
.headers on
.mode column
.nullvalue NULL
.prompt "sqlite> " " ...> "
.timer on
EOF
6.2 常用配置项 #
sql
-- 在 SQLite 命令行中设置
-- 显示列名
.headers on
-- 输出格式
.mode column -- 列模式
.mode list -- 列表模式
.mode csv -- CSV模式
.mode html -- HTML表格
.mode insert -- INSERT语句
.mode line -- 单行模式
.mode tabs -- 制表符分隔
.mode ascii -- ASCII模式
-- NULL值显示
.nullvalue NULL
-- 输出目标
.output file.txt -- 输出到文件
.output stdout -- 输出到屏幕
-- 执行计时
.timer on
-- 提示符设置
.prompt "sqlite> " " ...> "
-- 显示执行计划
.eqp on
-- 统计信息
.stats on
6.3 环境变量 #
bash
# 设置 SQLite 环境变量
# 数据库文件搜索路径
export SQLITE_DBPATH=/path/to/databases
# 临时文件目录
export SQLITE_TMPDIR=/tmp
# 添加到 ~/.bashrc 或 ~/.zshrc
七、图形化工具安装 #
7.1 DB Browser for SQLite #
bash
# Windows
# 下载安装包:https://sqlitebrowser.org/dl/
# macOS
brew install --cask db-browser-for-sqlite
# Linux (Ubuntu/Debian)
sudo apt install sqlitebrowser
# Linux (Fedora)
sudo dnf install sqlitebrowser
7.2 SQLiteStudio #
bash
# 下载地址:https://sqlitestudio.pl/
# macOS
brew install --cask sqlitestudio
7.3 DBeaver #
bash
# macOS
brew install --cask dbeaver-community
# Linux (Ubuntu/Debian)
sudo snap install dbeaver-ce
八、编程语言环境配置 #
8.1 Python #
python
# Python 内置 sqlite3 模块
import sqlite3
# 检查版本
print(sqlite3.sqlite_version)
# 连接数据库
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
# 创建表
cursor.execute('''
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL
)
''')
# 插入数据
cursor.execute("INSERT INTO users (name) VALUES (?)", ('Alice',))
conn.commit()
# 查询数据
cursor.execute("SELECT * FROM users")
print(cursor.fetchall())
# 关闭连接
conn.close()
8.2 Node.js #
bash
# 安装 better-sqlite3
npm install better-sqlite3
# 或安装 sql.js(纯JavaScript实现)
npm install sql.js
javascript
// 使用 better-sqlite3
const Database = require('better-sqlite3');
const db = new Database('example.db');
// 创建表
db.exec(`
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL
)
`);
// 插入数据
const insert = db.prepare('INSERT INTO users (name) VALUES (?)');
insert.run('Alice');
// 查询数据
const select = db.prepare('SELECT * FROM users');
console.log(select.all());
db.close();
8.3 Java #
xml
<!-- Maven 依赖 -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.45.0.0</version>
</dependency>
java
import java.sql.*;
public class SQLiteExample {
public static void main(String[] args) {
String url = "jdbc:sqlite:example.db";
try (Connection conn = DriverManager.getConnection(url)) {
Statement stmt = conn.createStatement();
// 创建表
stmt.execute("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)");
// 插入数据
stmt.execute("INSERT INTO users (name) VALUES ('Alice')");
// 查询数据
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
while (rs.next()) {
System.out.println(rs.getInt("id") + ": " + rs.getString("name"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
8.4 Go #
bash
# 安装驱动
go get github.com/mattn/go-sqlite3
go
package main
import (
"database/sql"
"fmt"
"log"
_ "github.com/mattn/go-sqlite3"
)
func main() {
db, err := sql.Open("sqlite3", "./example.db")
if err != nil {
log.Fatal(err)
}
defer db.Close()
// 创建表
_, err = db.Exec(`
CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL
)
`)
if err != nil {
log.Fatal(err)
}
// 插入数据
_, err = db.Exec("INSERT INTO users (name) VALUES (?)", "Alice")
if err != nil {
log.Fatal(err)
}
// 查询数据
rows, err := db.Query("SELECT id, name FROM users")
if err != nil {
log.Fatal(err)
}
defer rows.Close()
for rows.Next() {
var id int
var name string
rows.Scan(&id, &name)
fmt.Printf("%d: %s\n", id, name)
}
}
九、常见问题 #
9.1 找不到命令 #
bash
# 错误:sqlite3: command not found
# 解决方案:
# 1. 确认安装路径
which sqlite3
# 2. 检查 PATH 环境变量
echo $PATH
# 3. 添加到 PATH
export PATH=$PATH:/path/to/sqlite
9.2 版本过低 #
bash
# 检查当前版本
sqlite3 --version
# 如果版本过低,使用包管理器更新
# 或从源码编译安装最新版本
9.3 权限问题 #
bash
# 错误:unable to open database file
# 解决方案:
# 1. 检查文件权限
ls -la database.db
# 2. 修改权限
chmod 644 database.db
# 3. 检查目录权限
chmod 755 /path/to/database/directory
9.4 库链接问题 #
bash
# 错误:error while loading shared libraries: libsqlite3.so
# 解决方案:
# 更新库缓存
sudo ldconfig
# 或设置 LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
十、总结 #
安装要点 #
| 平台 | 推荐方式 |
|---|---|
| Windows | 下载预编译版本或使用 Scoop |
| Linux | 使用包管理器(apt/yum) |
| macOS | 使用 Homebrew |
验证安装 #
bash
# 1. 检查命令
sqlite3 --version
# 2. 创建测试数据库
sqlite3 test.db "SELECT sqlite_version();"
# 3. 编程语言检查
python3 -c "import sqlite3; print(sqlite3.sqlite_version)"
下一步 #
安装完成后,让我们学习SQLite的基础语法!
最后更新:2026-03-27