Search

Language:  
Search for:

Available article translations:

Plesk Database Inconsistency Checker (Beta)

Article ID: 114791, created on Sep 18, 2012, last review on Aug 12, 2014

APPLIES TO:
  • Plesk 11.0 for Linux
  • Plesk 10.4 for Linux/Unix
  • Plesk 9.5 for Linux/Unix
  • Plesk 11.0 for Windows
  • Plesk 10.4 for Windows
  • Plesk 9.5 for Windows

Release Notes

The Parallels Plesk Panel (PP) Database Inconsistency Checker script is designed to detect inconsistencies in the PSA and APSC databases of Parallels Plesk Panel.
The script is intended to be run on a server with PP 9.5.4/10.4.4/11.0.9 for Linux or Windows with a MySQL database engine.

The script is currently in the Beta stage and may produce a number of false positives, especially on older PP versions.
If the script detects a problem, it does not necessarily indicate that the inconsistency affects anything or needs to be fixed. If you encounter such a case, please report it to this special thread on the Parallels forum.
At the moment, the script does not offer methods for solving detected problems, and does not sort them by how critical they are. Please post all your comments and suggestions related to this script to the special thread on the Parallels forum.

Note that we also have a Plesk Database Schema Checker for checking the integrity of the PP system database.

Usage

Linux:
# /usr/local/psa/bin/sw-engine-pleskrun check_db_integrity-beta.php
Windows:
"%plesk_bin%\php.exe" -dauto_prepend_file="" check_db_integrity-beta.php

Output description

1. List of records in [psa.hosting.sys_user_id] that miss a matching record in [psa.sys_users.id]
        11, 33


This means that the "hosting" table has records with
sys_user_id that do not have corresponding records in the sys_users table with sys_users.id = hosting.sys_user_id:
# mysql -uadmin -p`cat /etc/psa/.psa.shadow ` -e 'select psa.sys_users.id from psa.sys_users where psa.sys_users.id in (11,33)'

# mysql -uadmin -p`cat /etc/psa/.psa.shadow ` -e 'select psa.hosting.sys_user_id from psa.hosting where psa.hosting.sys_user_id in (11,33)'
+-------------+
| sys_user_id |
+-------------+
|          11 |
|          33 |
+-------------+

It should be as follows:
# mysql -uadmin -p`cat /etc/psa/.psa.shadow ` -e 'select psa.sys_users.id from psa.sys_users where psa.sys_users.id in (11,33)'
+----+
| id |
+----+
| 11 |
| 33 |
+----+

# mysql -uadmin -p`cat /etc/psa/.psa.shadow ` -e 'select psa.hosting.sys_user_id from psa.hosting where psa.hosting.sys_user_id in (11,33)'
+-------------+
| sys_user_id |
+-------------+
|          11 |
|          33 |
+-------------+

2. List of records in [psa.domains.id WHERE htype='vrt_hst'] that miss a matching record in [psa.hosting.dom_id]
        41


This means the same as the first item discussed, but with an additional filter:
# mysql -uadmin -p`cat /etc/psa/.psa.shadow ` -e 'select psa.domains.id from psa.domains where psa.domains.id in (41) and htype="vrt_hst"'
+----+
| id |
+----+
| 41 |
+----+

3. List of records in [psa.mail.account_id] that exceed N in 1:N (N=1) relation to [psa.accounts.id]
        49      [count in table psa.accounts:1; count in table psa.mail:2]


This indicates that there are multiple identical entries for the psa.mail.account_id field in the psa.mail table, when this entry should be unique:
# mysql -uadmin -pqweqwe -e 'select psa.mail.account_id from psa.mail where psa.mail.account_id=49'
+------------+
| account_id |
+------------+
|         49 |
|         49 |
+------------+

4. List of records in [psa.domains.dns_zone_id] should not have a matching record in [psa.domainaliases.dns_zone_id]
        70

This indicates that the psa.domains table has the same dns_zone_id as the psa.domainaliases table, when it should not.


Attachments:


60d3e722783ac7177a2b4b4c13af4062 56797cefb1efc9130f7c48a7d1db0f0c a914db3fdc7a53ddcfd1b2db8f5a1b9c 29d1e90fd304f01e6420fbe60f66f838 6ef0db7f1685482449634a455d77d3f4 ff5a00b8ead2e480367b019417a04207 85a92ca67f2200d36506862eaa6ed6b8 c796c01d6951fa24ed54c7f1111667c6 e8756e9388aeca36710ac39e739b2b37 dd0611b6086474193d9bf78e2b293040 514af229ae32522202a910a2649c80fb bd7fc88cf1b01f097749ae6f87272128 05f236445cb0f186cca1b7975924aaf9 aac4a8fcd879de03758354e15495d69a aea4cd7bfd353ad7a1341a257ad4724a 0a53c5a9ca65a74d37ef5c5eaeb55d7f

FEEDBACK
Was this article helpful?
Tell us how we may improve it.
Yes No
 
 
 
 
 
 
Server Virtualization
- Odin Cloud Server
- Odin Containers for Windows 6.0
- Odin Virtuozzo Containers
Automation
- Odin Automation
- Odin Automation for Cloud Infrastructure
- Odin Business Automation Standard
- Odin Virtual Automation
- Odin Plesk Panel Suite
- Web Presence Builder
- Odin Plesk Automation
- Odin Small Business Panel
- Value-added Services for Hosters
- Odin Partner Storefront
Services & Resources
- Cloud Acceleration Services
- Professional Services
- Support Services
- Training & Certification