Roundcube Backup Error

ZipperZapper

Verified User
Joined
Nov 30, 2015
Messages
139
Since about a week, my regular Admin Backups don't work anymore.
Today I finally had the time to check the error log and it's trowing errors for Roundcube database.

This makes sense, because I'm not using Roundcube and it's set to "No" in Custombuild options.
Is this a bug in the backup script, or is there something I can do to fix this?

The Admin Backup settings are set to "All Data".

Code:
RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128


 <16:01:36>
RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128


 <16:02:29>
RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128
 

ZipperZapper

Verified User
Joined
Nov 30, 2015
Messages
139
The OS is Ubuntu 18.04.

I haven't used Roundcube (or Squirrelmail for that matter) in years, so I don't know what changed in recent weeks. Nothing from my side, other then regular Custombuild and Ubuntu updates.
 

Beherit

Verified User
Joined
Dec 2, 2019
Messages
33
I have exactly this same error from 2 days, I don't have roundcube installed. I run Debian 11 with latest updates. Last days I updated only PHP 8.0 and 8.1, nothing else.
 

Beherit

Verified User
Joined
Dec 2, 2019
Messages
33
Any one have idea how to fix this without installing roundcube?
 

bdacus01

Verified User
Joined
Jul 22, 2017
Messages
3,742
Location
Murfreesboro
Looks like there is some bug in the cb ./build roundcube

I get this error on Debian 11

Roundcube 1.5.2 has been installed successfully.
/usr/bin/env: 'php': No such file or directory
Reloading php-fpm74.
Some thing related to php?
@fln @smtalk

What weird is no issue on other system
 
Last edited:

kristian

Verified User
Joined
Nov 4, 2005
Messages
405
Location
Norway
I encountered this problem now on a Debian 10 server (recently upgraded from 9). Recompiling every piece of software to resolve a problem with a backup script seems a little overkill. I too have roundcube=no in my options.conf. Did anyone find out exactly what causes this? When this server was Debian 9, this error did not happen.

Code:
An error occurred during the backup
2022-09-21 16:36
RoundCube Backup Error:
Fatal error: Uncaught mysqli_sql_exception: Unknown database 'da_roundcube' in /usr/local/directadmin/scripts/backup_roundcube.php:128
Stack trace:
#0 /usr/local/directadmin/scripts/backup_roundcube.php(128): mysqli->select_db('da_roundcube')
#1 {main}
  thrown in /usr/local/directadmin/scripts/backup_roundcube.php on line 128

 <16:36:42>

The code in question seems to actually be there to skip backing up the Roundcube database, if one doesn't exist, so it's a bit of a silly place to have a fatal error:
Code:
128: if (!$mysqli->select_db($mysql_db))
129: {
130:    echo_stderr("There is no $mysql_db database. Skipping RoundCube backup.\n");
131:    exit(1);
132: }
 

kristian

Verified User
Joined
Nov 4, 2005
Messages
405
Location
Norway
After a little bit of extra thinking (it's late in the day for me) and testing, this is related to having PHP 8.1 set as php1_release. After I changed the #! of the script to use PHP 7.4 instead (didn't try 8.0), the backup worked:

Code:
# head -3 /usr/local/directadmin/scripts/backup_roundcube.php
#!/usr/local/php74/bin/php -c/usr/local/directadmin/scripts/php_clean.ini
# Old #!: #!/usr/local/bin/php -c/usr/local/directadmin/scripts/php_clean.ini
<?php

My guess is, there's something about ->select_db that has changed from 7.4 to 8.x to cause a fatal error, and this script needs to be updated accordingly. :)
 

jamgames2

Verified User
Joined
Aug 16, 2019
Messages
998
php8 will be strct mode. it different from php7

extracly mysqli will use Exception handle mode by default, so any error will not silencely.
did you guy use php_mode1 with php8 ?


also that you mention not correct way to check Database exists

real code should use query to get result like this.
Code:
SHOW DATABASES LIKE '$dbname'

this should fixed from DA Team to be fixed with good coding. not "select_db" method, it bad idea.

@smtalk
 

kristian

Verified User
Joined
Nov 4, 2005
Messages
405
Location
Norway
This is still happening (Debian 11, latest DA & co, no roundcube installed). Please can someone fix the script in question? The resulting message in the message system about "An error occurred during the backup" does not indicate that the backup was completed (even though it appears to be). My script that triggers these backups is looking for messages about backups being completed (or failed, like it is now) and is unable to safely continue its process when this happens.
 
Top