Need help? Call us on 1300 789 260

Plesk Onyx - ERROR: Zend_Db_Adapter_Exception: SQLSTATE[HY000] [2002] No such file or directory

Difficulty: Advanced

Prerequisites

  • SSH - root server access

Overview

If you have tried to login to your Plesk control panel and receive the following error, it may be due to your server running out of space. The error will look like the following:

ERROR: Zend_Db_Adapter_Exception: SQLSTATE[HY000] [2002] No such file or directory

Instructions

  1. Login to your server and check the disk space:
    df -h
    
  2. If you have corrected the issue with the excess disk space, you can now attempt to restart MySQL / MariaDB:
    systemctl restart mysql
    
  3. If the database server restarts without error, check that you can now access Plesk. If this failed, check the below commands for the most common cause after running out of disk space.

Transaction Log Error - "Can't init tc log"

On occasions where MySQL can't write the transaction log to disk, this can cause corruption within the log itself. This can prevent MySQL from starting cleanly and requires the removal of the corrupted log to continue.

To confirm this is the issue, you may see the following error when checking the status:

[root@ws1 ~]# systemctl status mysql.service
     mysql.service - MariaDB 10.1.31 database server
     Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
     Drop-In: /etc/systemd/system/mariadb.service.d
         --migrated-from-my.cnf-settings.conf
   Active: failed (Result: exit-code)
  Status: "MariaDB server is down"
 Feb 16 08:01:30 ws1.mywebserver.com mysqld[1521]: 2018-02-16  8:01:30 140626098874624 [Note] Recovering after a crash using tc.log
 Feb 16 08:01:30 ws1.mywebserver.com mysqld[1521]: 2018-02-16  8:01:30 140626098874624 [ERROR] Can't init tc log 

To correct, run the following:

  1. Access the Server over SSH and move the tc.log of the var/lib/mysql directory:
    [root@ws1 ~] mv /var/lib/mysql/tc.log /root
  2. After the file has been moved,start MySQL again:
    systemctl start mysql

    You should then see something similar to the following, with the status as Active :

    [root@ws1 ~]# systemctl start mysql
         mysql.service - MariaDB 10.1.31 database server
         Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
         Drop-In: /etc/systemd/system/mariadb.service.d
             --migrated-from-my.cnf-settings.conf
       Active: active (running) (Result: exit-code)
  3. To confirm issue is resolved, try loading Plesk again.
Was this article helpful? Yes No
👥

Having trouble? We’re here to help!

We’ve built our company with a serious focus on quality service. Feel free to give us a call!

1300 789 260