Unable to access LetsEncrypt: Table 'psa.ModuleSettings' doesn't exist

Created:

2016-11-16 13:22:49 UTC

Modified:

2017-08-08 13:39:55 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Unable to access LetsEncrypt: Table 'psa.ModuleSettings' doesn't exist

Applicable to:

  • Plesk 12.5 for Linux

Symptoms

Unable to access LetsEncrypt, the following error can be found in /var/log/plesk/panel.log :

ERR [1] SQLSTATE[42S02]: Base table or view not found: 1146 Table 'psa.ModuleSettings' doesn't exist
file: /usr/local/psa/admin/plib/Db/Adapter/Pdo/Mysql.php
line: 30
code: 0
trace: #0 /usr/local/psa/admin/externals/Zend/Db/Adapter/Pdo/Mysql.php(169): Db_Adapter_Pdo_Mysql->query(string 'DESCRIBE `ModuleSettings`')
#1 /usr/local/psa/admin/externals/Zend/Db/Table/Abstract.php(835): Zend_Db_Adapter_Pdo_Mysql->describeTable(string 'ModuleSettings', NULL null)
#2 /usr/local/psa/admin/externals/Zend/Db/Table/Abstract.php(874): Zend_Db_Table_Abstract->_setupMetadata()

The same error message can be observed by running plesk repair db -n :

[root@plesk08 ~]# plesk repair db -n
...
MySQL query failed: Table 'psa.ModuleSettings' doesn't exist
The database structure is corrupted. You can try to repair it with "plesk repair installation" and "plesk repair db".

However, when logging to psa database this table is shown, but select is not possible:

mysql> show tables like "%Module%";
+--------------------------+

| Tables_in_psa (%Module%) |
+--------------------------+

| ModuleSettings |
| Modules |
+--------------------------+
2 rows in set (0.00 sec)

mysql> select * from ModuleSettings;
ERROR 1146 (42S02): Table 'psa.ModuleSettings' doesn't exist

Cause

psa.ModuleSettings table is corrupted.

Resolution

  1. Drop this table and manually recreate it:

1.1. Log in to Plesk database

    # plesk db

1.2. Drop the table:

    mysql> drop table ModuleSettings;

1.3. Create the table:

    mysql> CREATE TABLE `ModuleSettings` (
-> `module_id` int(10) unsigned NOT NULL DEFAULT '0',
-> `name` varchar(255) NOT NULL,
-> `value` varchar(2000) NOT NULL,
-> PRIMARY KEY (`module_id`,`name`)
-> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.01 sec)
  1. Reinstall LetsEncrypt extension
Have more questions? Submit a request
Please sign in to leave a comment.