If you have made regular database backups, there is hope. I messed with the setting in question and "lost" a few hundred members. Got them all back, however, by importing the "Profiles" table. Take a look at this thread for info on the query that worked for me.
First and foremost, make sure you make backups of your databases before attempting to run any queries.
Make sure that the source database bears the same structure as the target database. For example, if you have recently installed a mod that may have added a column to the "Profiles" table, you must manually add such a column to the old table and then do the import. If structure differs, you will not be able to do it.
If you do not have database backups, then you are pretty much done... If this is the case, make sure you get a backup protocol for your site and databases in place, either via some sort of managed-backup service with your server, or done by your self (I have it setup for daily backups, but that's just me).
Good luck!
PS I do not know what version of Dolphin you are running (mine is 6.1.6), but if you really want to disable the database cleanup feature and avoid any problems in the future, you may also edit the code. After realizing the problems an admin could cause by accidentally playing with this setting, I sourced this advice:
To disable profile cleaning
feature you need to take a look at periodic/cmd.php file -> clean_database
function. You'll see the following code at the beginning of the function
if ( $db_clean_profiles > 0)
{
$res = db_res("SELECT ID FROM
Profiles WHERE (TO_DAYS(NOW()) - TO_DAYS(DateLastLogin)) >
$db_clean_profiles");
if ( $res )
{
$db_clean_profiles_num = mysql_num_rows($res);
while ( $arr
= mysql_fetch_array($res) )
{
profile_delete($arr['ID']);
}
}
}
Comment it out and your profiles won't be deleted in any case. Even if some
admin enable it in the admin panel by any chance.