Jak vidím, existují dva obecné důvody, proč je vaše databáze nastavena pouze na čtení:
1) MySQL se nastavuje pouze pro čtení
Nejsem si jistý, co může způsobit, že MySQL přejde pouze ke čtení, možná problémy s diskem nebo poškození databáze? V každém případě bych očekával, že se v protokolech něco objeví, takže zkontrolujte protokoly MySQL (a systému).
2) Klient nastavuje databázi pouze pro čtení
Klienti připojující se k MySQL mohou nastavit databázi pouze pro čtení pomocí příkazu:
SET GLOBAL read_only = ON;
k tomu však musí mít uživatel SUPER
privilegia. Toto oprávnění by nemělo být potřeba pro webové stránky, aplikace atd., které používají MySQL – ponechte si ho pouze pro účet správce, který používáte pro správu databáze.
Uzamkněte oprávnění, která má každý uživatel, aby měl oprávnění provádět pouze věci, které potřebují, na příslušných databázích / tabulkách. Pokud používáte nějaké hotové aplikace, měly by být dodány s pokyny podrobně popisujícími, jaká oprávnění jsou vyžadována (např. SELECT, INSERT, DELETE, UPDATE
).