LakeXpress DB Commands
Commands use Linux syntax. See Examples & Recipes for the Windows equivalents and the arguments every sync needs.
drop, truncate and release-locks only show what they would do unless --confirm is given. Run them once without it to check.
# Create the LakeXpress tables (safe to run again)
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_mssql
# Drop the LakeXpress tables and their data
./LakeXpress lxdb drop -a credentials.json --lxdb_auth_id lxdb_mssql --confirm
# Delete all data (configurations, runs, watermarks), keep the tables
./LakeXpress lxdb truncate -a credentials.json --lxdb_auth_id lxdb_mssql --confirm
Locks Left by a Crashed Sync
Incremental syncs lock the tables they export. If a sync crashes or is killed, its locks block the next runs:
# See the locked tables and their IDs
./LakeXpress lxdb locks -a credentials.json --lxdb_auth_id lxdb_mssql
# Release the locks older than 24 hours (the default age)
./LakeXpress lxdb release-locks -a credentials.json --lxdb_auth_id lxdb_mssql --confirm
# Release the locks older than 2 hours
./LakeXpress lxdb release-locks -a credentials.json --lxdb_auth_id lxdb_mssql --max_age_hours 2 --confirm
# Release the lock of one table, by the ID shown by 'lxdb locks'
./LakeXpress lxdb release-locks -a credentials.json --lxdb_auth_id lxdb_mssql --table_id 42 --confirm
Different LakeXpress DB Types
# SQL Server as LakeXpress DB
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_mssql
# PostgreSQL as LakeXpress DB
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_postgres
# DuckDB as LakeXpress DB
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_duckdb
# MySQL as LakeXpress DB
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_mysql
# SQLite as LakeXpress DB
./LakeXpress lxdb init -a credentials.json --lxdb_auth_id lxdb_sqlite