diff --git a/lib/reference-db.sh b/lib/reference-db.sh index 6c70d33..a031350 100755 --- a/lib/reference-db.sh +++ b/lib/reference-db.sh @@ -211,9 +211,10 @@ build_databases_section() { # Query databases - set MYSQL_PWD only for this command local total_dbs if [ -n "$plesk_password" ]; then - total_dbs=$(MYSQL_PWD="$plesk_password" mysql -u admin -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" | wc -l) + # Use || echo 0 to handle grep failure (when all databases are system databases) + total_dbs=$(MYSQL_PWD="$plesk_password" mysql -u admin -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" | wc -l || echo 0) else - total_dbs=$(mysql -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" | wc -l) + total_dbs=$(mysql -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" | wc -l || echo 0) fi local current=0 @@ -221,9 +222,9 @@ build_databases_section() { # Get database list - set MYSQL_PWD only for this command local databases if [ -n "$plesk_password" ]; then - databases=$(MYSQL_PWD="$plesk_password" mysql -u admin -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$") + databases=$(MYSQL_PWD="$plesk_password" mysql -u admin -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" || echo "") else - databases=$(mysql -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$") + databases=$(mysql -Ns -e "SHOW DATABASES" 2>/dev/null | grep -v "^information_schema$\|^mysql$\|^performance_schema$\|^sys$" || echo "") fi while IFS= read -r db; do