bcdb restore: Write a Cloud Export Into a Container
The bcdb restore tool writes cloud exports directly into a running Docker container without requiring matching schemas, intelligently handling mismatches by skipping missing tables and columns. It restored a production environment in 10 seconds and supports flexible identity table handling, company mapping, and dry-run preview modes.
post Stefan Maron
"it writes a source's rows straight into a container that's already running, and it doesn't ask the container's schema to match the source first."
Key points
- Restore works against containers with different extension sets, skipping missing tables and columns instead of failing
- Identity and platform tables (users, access control, company, tenant profile, NAV App) are excluded by default to avoid login lockouts and service tier breakage
- Company data is auto-mapped and logged when exactly one company has data on each side; with more, the tool refuses to guess
- Rows are streamed and bulk-copied, identity values are preserved and amounts are carried as SqlDecimal
- –dry-run previews the full plan without writing, and table creation is opt-in via –create
Quotes
- “it writes a source’s rows straight into a container that’s already running, and it doesn’t ask the container’s schema to match the source first.” (Explains the core innovation: schema flexibility eliminates the pre-alignment work normally required for restores)
- “bcdb restore sees the one company with data on each side, maps it, and logs the mapping so it’s never a surprise.” (Shows intelligent defaults that work without user specification while maintaining transparency)
AL objects mentioned
As named in the post. A name that matches one object page by exact type and name links to it; the others stay as named.
- table “User”
- table “Access Control”
- table “User Personalization”
- table “User Property”
- table “Company”
- table “Tenant Profile”
- table “NAV App”
Not found in BC28-30: table “User”, table “Access Control”, table “User Personalization”, table “User Property”, table “Company”, table “Tenant Profile”, table “NAV App”.
Context
- Features: bcdb restore, schema flexibility, identity table exclusion, company mapping, dry-run mode, bulk copy, mismatch handling
- Versions: 0.2.0, 0.1.2, 28.4, 28.2
Source: Stefan Maron, community blog. Summary, key points and quotes are derived (CONTENT-NOTICE.md); read the original for the full text.