In answer to your questions:
1. Yes, there is a sql client. It’s called “sqlite”. You can execute arbitrary sql commands with it:
foo@bar$ sqlite /path/to/songs.db
sqlite> select * from songs where upper(path) like '%SOMEDIR%'
... rows
sqlite> .quit
There are also scads of graphical sqlite programs around. You can find some listed here: http://www.sqlite.org/cvstrac/wiki?p=SqliteTools
2. Check your permissions. The files must have read permission by the “runas” user. Also, you can run mt-daapd with a “-d5” argument and a “logfile” specified in your config, and that might shed some light on what’s happening as well.
3. Yes, you can start mt-daapd with a “-r” and that will force a rescan. Alternately, you can force rescan on individual files by setting “force_rescan” to 1 in the songs table of the db:
foo@bar$ sqlite /path/to/songs.db
sqlite> update songs set force_update=1 where type='m4a'
sqlite> .quit
4. Nope, won’t hurt anything to delete songs.db — it will recreate it.
— Ron