DT3, Database Password, Recover

Hi. I’ve read through the articles found on database password issues, and I’ve searched online to no avail. To be clear, I possess my encryption key (CloudKit) but it seems I’ve not recorded the database passwords anywhere.

I’m running DT 3.9.3 on Mac Sonoma. On mobile it’s DTTG 3.7.6. All my databases open as expected on DTTG but on DT3 (Mac), only one or two of them will open - the remainders prompt for a database password. There are so many people in online search results that conflate encryption key and database password that I must be specific again, I am referring to the latter.

Both DT and DTTG sync to CloudKit. Is there a way to reset my database passwords on DT, or, is there a way I can perform some trickery such as removing the Mac databases and let DT resync with the DTTG dbs on CloudKit, or ?


No, there isn’t. It’s up to you to remember the passwords for encrypted databases.

Is there a way I can perform some trickery such as removing the Mac databases and let DT resync with the DTTG dbs on CloudKit


  1. Delete the database on the Mac. I would also suggest emptying your system Trash, though that should be routinely done anyways.
  2. Select the sync location and either…
  • Double-click to import the desired database without encryption
  • Control-click the desired database and choose Import Encrypted Database. Fill out the required information and save it, ideally to the Databases folder in your home directory.

PS: This should not be the default option in this situation. Specifying memorable passwords or using a secure password manager should be what you’re exploring next. (Personally, I prefer the former over the latter.)

Thank you @BLUEFROG - it’s sorted.

To others that may be having some challenges with sync’ing there is more than one way to do it and I have chosen a certain way that works but is not at all intuitive, and I’ve been working in the computer sciences field for over 40 years! I’ll be as verbose as allowed.

First thing: I’ve been seeing log messages for a few months that look like this: “CKerror domain 15” and noticed today that there has been no synchronizing with Apple iCloud for some time. I upgraded to Sonoma on the Mac only a few days ago, so that is not the cause. It seems that Apple iCloud’s API (CloudKit) for file operations has been changed or …? Today I switched to Dropbox for sync’ing - the process seems off to a great start.

Next thing: I see some people referring to iCloud, Dropbox, OneDrive, etc. incorrectly. These are all synchronization services, NOT backup services. If you sync a file between your computer and a third-party service, when you edit the file your edits appear in both locations, and when you delete a file, it will be deleted from both locations. That is not the same as having a backup of a file, which simply means you’ve retained a copy of a file other than on your computer so if/when you have a disk crash, you can retrieve the file from the external site it was backed up to. In my case for this I’ve used Backblaze for years. The service is priced right, many options are offered and they have an excellent reputation. See https://www.backblaze.com/ My only plug appearing in this post: if you subscribe to the service using this referral code (Backblaze Invitation), you’d get one additional month free and I would get one additional month free - if you should be kind enough.

Always, always have one or more backups of your data.

My experience today in getting operational again… A day ago I had an app crash (not DEVONthink) and it caused my Mac to hiccup, which did have a bearing on 6 of my 8 DEVONthink databases. The db’s were still right where they were but their extensions went out of whack. When a database is unmounted (DT3 here) it will have its’ name followed by a .dtSparse extension. When the db is mounted, same name but an extension of .sparseimage. Well, in my case I had unmounted db’s because of the hiccup but all retained their .sparseimage extensions. No amount of renaming or moving around corrected the issue of DT3 refusing to mount the db filesystems. These represent thousands of records so, naturally, I wanted things back as they were and functional. An important point here is that all of my db’s are encrypted, which the extension naming relates to.

I performed a restore of just my db files using the Backblaze tools and was ready to go, I thought, in about 30 minutes. But now DT3 was refusing to mount the databases even though they were correctly named. So I wrote the above post here that @BLUEFROG was king enough to reply to. There was one piece of information in his reply that caught my attention - “Control-click the desired database and choose Import Encrypted Database.” I had assumed that by backing up (in addition to synchronizing) the db’s, they would restore exactly as they were. Not quite.

Here is what I did then:

  1. deleted the databases from $HOME/Databases (still had the backups, right?)
  2. emptied the Trash as Jim advised
  3. restored the database files with Backblaze again to $HOME/Databases
  4. turned on the bonjour service, first on my iPhone w/DTTG
  5. turned on the bonjour service on my Mac, allowing it to process incoming data
  6. turned OFF Wifi on both devices (if you are unable to see the remote databases just toggle bonjour off and back on and the remotes will suddenly appear or should
  7. I control-clicked each database file, one at a time, to select to import an encrypted database
  8. I gave the same encryption key I used previously, because I misunderstood their use of the “password” fields - I knew there was an overarching encryption key for the sync location but “password” seemed to me to mean a password per database file. If it had been labelled “encryption key” or … string I would have immediately realized that a second encryption takes place - one for the sync location and one for the individual databases. But “password” caused me to think that I had misplaced some password that was necessary to open the db’s rather than providing the encryption key that I had safely stored away.
  9. So, wow, bonjour actually worked for the first time since 1997 in my career experience AND I did not need to further consider becoming a security guard somewhere because I lost a password, which would have been a first. So the birds were chirping again and I was happy.
  10. one last thing to note: when you are essentially creating a new encrypted database, w/key, replacing the former file you need to provide the key to DT3 again - first to create an encrypted db and second, to allow DT3 to open the new db (for this second instance check the box allowing the keychain to store the key, if so inclined)
  11. at this point you should have all your data living again inside one or more databases; when all activity has quieted turn off the bonjour service on both computers and turn back on your WiFi service, VPN, what have you,
  12. you will notice two areas in the sync preference boxes - one for Locations and the other, for Databases; let’s clear out any old location data if if you have changed where to send the sync data like I did, from CloudKit to Dropbox (for Dropfox see DEVONtechnologies | How to Use Sync Locations) Clean an old location first on your main system (the Mac, in my case)
  13. once complete then move to the databases window, under local, and select one database; if synchronize is set to automatic the checkbox change will initiate the sync to the new location or, at least, to the location you’re used all along depending on the options you went with
  14. wait until the one db is fully sync’d and then open that database to make sure all looks good with the world again, and, check the Database Properties, noting what the information is pertaining to db size, # of records and so forth; now turn on sync’ing for the other device (an iPhone w/DTTG in my case), wait until the sync is complete and look at the Database Properties. Stats should match for both systems. If they do go to the next steps and if they don’t, open a note here and write, “Hey @BLUEFROG …” :slight_smile:
  15. the next step is to select all the local databases on your primary system and let them sync; in my case I ran (am still running) all databases except the Inbox (which is also a db); I will sync the Inbox last just in case it contains links to the databases, which should probably be there before the link is relied upon, and, with over 6,000 items in my Inbox currently, who really knows?
  16. last step: sync your Inbox
1 Like