Bobcares

SQLSTATE[HY000]: General error: 11 database disk image is malformed [Solved]

by | Aug 25, 2019

One of the best database engines for most low to medium traffic websites is SQLite. Many popular applications like Horde webmail, CakePHP, etc. make use of it.

However, the SQLite database users often face various errors leading to corruption. One such error is,

SQLSTATE[HY000]: General error: 11 database disk image is malformed.

At Bobcares, we often get requests from our customers to fix SQLite database corruption errors as part of our Server Management Services.

Today, this write-up describes how our Support Engineers fix SQLite database corruption errors.

 

What causes corruption in SQLite?

We’ll begin by checking on the major reasons that can corrupt the SQLite database.

SQLite allows simultaneous access from different applications. And, when there is heavy use of the SQLite database, then there are hefty chances for database corruption. Usually, this corruption occurs due to database bugs or even hardware failure.

Similarly, regular use of the SQLite database leads to a large amount of data. And, when the size increase over the well-defined limit,  it ends up in error SQLite Database Disk Image Is Malformed.

 

How we fixed “General error: 11 database disk image is malformed

From our experience in managing servers, we’ve seen that the reasons for database corruption may vary depending on the system settings. It relies much on the applications and OS used in the server.

Now, let’s see the topmost reason for these SQLite database corruption errors and how our Support Team solved these errors.

Recently, one of our customers had an error while trying to access their emails via webmail.

The error said,

A fatal error has occurred
SQLSTATE[HY000]: General error: 11 database disk image is malformed
Details have been logged for the administrator.

Here, the customer was using the Horde webmail panel.

On checking our Support Engineers found that horde.sqlite database was corrupt. And, this resulted in the error.

[19:52:46 cp01 root@xxx]# /usr/local/cpanel/3rdparty/bin/sqlite3 horde.sqlite
SQLite version 3.27.1 2019-02-08 13:17:39
Enter ".help" for usage hints.
sqlite> .table
Error: database disk image is malformed
sqlite> .quit

As the database was already corrupt, the easiest fix was to recreate it.

Therefore, we solved the error by removing the corrupted database file and recreated a new database using:

/usr/local/cpanel/bin/update_horde_config

When the same error occurs on a server without a control panel, the fix differs. We export the schema and data of the SQLite database. Further, we a new database, import the schema and data.

sqlite> .mode insert
sqlite> .output mydb_dump.sql
sqlite> .dumpsqlite> .exit

This will export the database in SQL format.
Further, we add a new database, import the schema and data.

sqlite3 mydb.db < mydb_dump.sql

Finally, we update the statistics for the indexes in the databases.

That’s it. We now have a working SQLite database.

[Need assistance to fix SQLite database corruption errors? We’ll help you.]

Conclusion

In short, SQLite database error like SQLSTATE[HY000]: General error: 11 database disk image is malformed occurs due to the SQLite database corruption. Today, we saw how our Support Engineers fix SQLite database corruption errors.

PREVENT YOUR SERVER FROM CRASHING!

Never again lose customers to poor server speed! Let us help you.

Our server experts will monitor & maintain your server 24/7 so that it remains lightning fast and secure.

GET STARTED

var google_conversion_label = "owonCMyG5nEQ0aD71QM";

0 Comments

Submit a Comment

Your email address will not be published. Required fields are marked *

Never again lose customers to poor
server speed! Let us help you.

Privacy Preference Center

Necessary

Necessary cookies help make a website usable by enabling basic functions like page navigation and access to secure areas of the website. The website cannot function properly without these cookies.

PHPSESSID - Preserves user session state across page requests.

gdpr[consent_types] - Used to store user consents.

gdpr[allowed_cookies] - Used to store user allowed cookies.

PHPSESSID, gdpr[consent_types], gdpr[allowed_cookies]
PHPSESSID
WHMCSpKDlPzh2chML

Statistics

Statistic cookies help website owners to understand how visitors interact with websites by collecting and reporting information anonymously.

_ga - Preserves user session state across page requests.

_gat - Used by Google Analytics to throttle request rate

_gid - Registers a unique ID that is used to generate statistical data on how you use the website.

smartlookCookie - Used to collect user device and location information of the site visitors to improve the websites User Experience.

_ga, _gat, _gid
_ga, _gat, _gid
smartlookCookie
_clck, _clsk, CLID, ANONCHK, MR, MUID, SM

Marketing

Marketing cookies are used to track visitors across websites. The intention is to display ads that are relevant and engaging for the individual user and thereby more valuable for publishers and third party advertisers.

IDE - Used by Google DoubleClick to register and report the website user's actions after viewing or clicking one of the advertiser's ads with the purpose of measuring the efficacy of an ad and to present targeted ads to the user.

test_cookie - Used to check if the user's browser supports cookies.

1P_JAR - Google cookie. These cookies are used to collect website statistics and track conversion rates.

NID - Registers a unique ID that identifies a returning user's device. The ID is used for serving ads that are most relevant to the user.

DV - Google ad personalisation

_reb2bgeo - The visitor's geographical location

_reb2bloaded - Whether or not the script loaded for the visitor

_reb2bref - The referring URL for the visit

_reb2bsessionID - The visitor's RB2B session ID

_reb2buid - The visitor's RB2B user ID

IDE, test_cookie, 1P_JAR, NID, DV, NID
IDE, test_cookie
1P_JAR, NID, DV
NID
hblid
_reb2bgeo, _reb2bloaded, _reb2bref, _reb2bsessionID, _reb2buid

Security

These are essential site cookies, used by the google reCAPTCHA. These cookies use an unique identifier to verify if a visitor is human or a bot.

SID, APISID, HSID, NID, PREF
SID, APISID, HSID, NID, PREF