Questions and Best Practices for Transferring Database Ownership to a Dedicated Service Account
Hi Support, hoping you can help me with answers about moving a write workload onto a dedicated service account. We’re separating workloads onto service accounts for better query-history attribution and Duckling isolation. Read-only workloads moved over cleanly. But my question is about an internal ops app that does INSERTs/UPDATEs/DELETEs + CREATE TABLE against a few databases currently owned by a user account. Since shares are read-only, our assumption is that the only path is transferring ownership of those databases to the new service account. Wanted to confirm before we scope the work. Questions:
- 1.
Is ownership transfer of a database between accounts in the same org supported? If so, is it SQL, REST API, dashboard, or a support-assisted thing?
- 2.
Have we missed an alternative? Is there any way to grant write access to a non-owner account without transferring ownership?
- 3.
What happens to existing shares when ownership moves? Do the shares + grants survive, do recipients need to re-ATTACH, and do the share URLs change?
- 4.
Is the transfer atomic? Is the DB still readable/writable during it? Rough duration for a database in the tens of GB?
- 5.
Is it reversible (can we transfer ownership back if needed)?
- 6.
One of the databases is a BYOB DuckLake catalog on Cloudflare R2. Does the new owner need its own R2 storage secret, and does anything about the DuckLake metadata or data paths need to change? (We’ve already learned that shares don’t convey the storage credential — consumers can read catalog metadata fine but 404 on the underlying parquet without their own r2 secret.)
Thanks!
.png)