• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Question Get Subdomains Databases from CLI?

safemoon

Basic Pleskian
Server operating system version
Ubuntu 20.04.6 LTS
Plesk version and microupdate number
18.0.60
Hi,

How can i get the database names from a subdomain? I noticed that the subdomain databases are assigned to the parent domains dom_id in the domains and data_bases tables.

in my shell script the following line returns always no results because the subdomains id is not the correct one, the data_bases table uses the parents domain id in the dom_id field.

Code:
# Function to get subdomains of a specific domain
get_subdomains() {
    local DOMAIN=$1
    plesk db -Ne "SELECT name FROM domains WHERE parentDomainId=(SELECT id FROM domains WHERE name='$DOMAIN')"
}
SUBDOMAINS=$(get_subdomains "$DOMAIN")
for SUBDOMAIN in $SUBDOMAINS; do
DB_NAMES=$(plesk db -Ne "SELECT name FROM data_bases WHERE dom_id=(SELECT id FROM domains WHERE name='$SUBDOMAIN')")
echo $DB_NAMES
done
 
Database belong to a subscription, not to a particular domain. I don't think it's possible to match databases to a particular domain (unless the there is only the subscription domain).
 
Back
Top