

GitHub - benbjohnson/postlite: Postgres wire compatible SQLite proxy.
source link: https://github.com/benbjohnson/postlite
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Postlite
Postlite is a network proxy to allow access to remote SQLite databases over the Postgres wire protocol. This allows GUI tools to be used on remote SQLite databases which can make administration easier.
The proxy works by translating Postgres frontend wire messages into SQLite
transactions and converting results back into Postgres response wire messages.
Many Postgres clients also inspect the pg_catalog
to determine system
information so Postlite mirrors this catalog by using an attached in-memory
database with virtual tables. The proxy also performs minor rewriting on these
system queries to convert them to usable SQLite syntax.
Note: This software is in alpha. Please report bugs. Postlite doesn't alter your database unless you issue INSERT, UPDATE, DELETE commands so it's probably safe. If anything, the Postlite process may die but it shouldn't affect your database.
Supported clients
Postgres clients can be quite particular about how they initialize so not all clients may work. Below are the clients that are currently being tested. If you would like to see more clients supported or if you're having issues with existing clients, please submit an issue!
Usage
To use Postlite, execute the command with the directory that contains your SQLite databases:
$ postlite -data-dir /data
On another machine, you can connect via the regular Postgres port of 5432:
$ psql --host HOSTNAME my.db
This will connect you to a SQLite database at the path /data/my.db
.
Development
Postlite uses virtual tables to simulate the pg_catalog
so you will need to
enable the vtable
tag when building:
$ go install -tags vtable ./cmd/postlite
Contribution Policy
Postlite is open to code contributions for bug fixes & documentation fixes only. Features carry a long-term maintenance burden so they will not be accepted at this time. Please submit an issue if you have a feature you'd like to request.
Recommend
-
54
README.md genesis Genesis is a utility for embedding static file assets into Go files to be included in static compilation. Genesis includes support fo...
-
91
README.md Immutable
-
28
Litestream
-
11
MySQL 与 Postgres 和 SQLite 的对比和优缺点发布于 2020年08月31日 | 上次编辑:2020年09月01日 本文比较和对比了三个最广泛使用的开源 RDBMS:SQLite、MySQL 和 PostgreSQL。具体地说,我们会探讨每个 RDBMS 使用...
-
6
Sample config/database.yml from Rails. Postgres, MySQL, and SQLite · GitHub Instantly share code, notes, and snippets. ...
-
8
Ship It! – Episode #59 Postgres vs SQLite with Litestream featuring Ben Johnson from litestream.io
-
9
Remove streaming replication implementation #411 Merged ...
-
6
clock Clock is a small library for mocking time in Go. It provides an interface around the standard library's time package so that the application...
-
4
WTF Dial This project provides a real-time dashboard for teams to view how f-cked up they currently are. Each team member provides input to specify the level at which they feel the team is currently messed up. These values range from 0...
-
4
SQLedge [State: alpha] SQLedge uses Postgres logical replication to stream the changes in a source Postgres database to a SQLite database that can run on the edge. SQLedge serves reads from its local SQLite database, and forwards w...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK