{"id":56630,"date":"2025-11-27T20:56:52","date_gmt":"2025-11-27T20:56:52","guid":{"rendered":"https:\/\/www.roger-pearse.com\/weblog\/?p=56630"},"modified":"2025-11-27T20:56:52","modified_gmt":"2025-11-27T20:56:52","slug":"on-the-fourth-day","status":"publish","type":"post","link":"https:\/\/roger-pearse.com\/weblog\/2025\/11\/27\/on-the-fourth-day\/","title":{"rendered":"On the Fourth Day"},"content":{"rendered":"<p align=\"justify\">Behind the blog surface, the posts are stored in a database.\u00a0 The pharm spam hack inserted stuff into that database, and I have spent two days in cleaning it.\u00a0 This I did by exporting the database to a .sql file using the PhpMyAdmin interface; importing it into a local WordPress instance running on my PC; importing the last sound backup into another local WordPress instance; exporting the sound wp-posts table from that, renaming it, importing it into the same database as the\u00a0 corrupt one, and doing lots of SQL queries to locate the differences.\u00a0 It has been time-consuming, but not different in kind to the sort of stuff that I used to do for\u00a0 money, when I was working for insurance companies and fixing live problems in their databases.\u00a0 I&#8217;ve found it rather relaxing.\u00a0 You have to get into the right frame of mind to do it, to see the problem &#8211; and how to fix it &#8211; in terms of an SQL query.\u00a0 But this I did professionally for 30 years, so it was not troublesome.\u00a0 The main thing to remember is not to panic.<\/p>\n<p align=\"justify\">After all that, I hope that the annoying pharma links are gone, and that I haven&#8217;t broken anything!<\/p>\n<p align=\"justify\">I&#8217;ve brought up a new instance of WordPress on the server.\u00a0 I&#8217;ve also changed the theme, although I may change it again.<\/p>\n<p align=\"justify\">A rather impressive security plugin located three files on the disk which the hacker had left there.\u00a0 One of these was so poisonous that when I downloaded it to my PC in order to inspect it, my local antivirus promptly whipped it away into quarantine.\u00a0 I will do more security work on the blog tomorrow.<\/p>\n<p align=\"justify\">In the meantime, there has been a little progress on St. Botolph, which I am very keen to finish.\u00a0 A kind gentleman has sent me the modern text of the Linkoping breviary text.\u00a0 Another commented and transcribed the manuscript that I could not read.\u00a0 Finally the rather comprehensive book by John Toy arrived with massive information on Scandinavian breviaries.\u00a0 I&#8217;ve not had time to look at any of these yet, but these have been a light in the darkness.<\/p>\n<p align=\"justify\">I&#8217;ve discovered that a breviary from Hereford probably also contains a text, and that I might be able to access this through Early English Books Online (EEBO).\u00a0 I have no access to EEBO, but a nearby library probably does, and probably will allow me to use it.\u00a0 Maybe next week!<\/p>\n<p align=\"justify\">\n","protected":false},"excerpt":{"rendered":"<p>Behind the blog surface, the posts are stored in a database.\u00a0 The pharm spam hack inserted stuff into that database, and I have spent two days in cleaning it.\u00a0 <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_awef_post_faq_schema":[],"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[19],"tags":[1324],"class_list":["post-56630","post","type-post","status-publish","format-standard","hentry","category-from-my-diary-announcements","tag-pharma-spam-hack"],"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/posts\/56630","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/comments?post=56630"}],"version-history":[{"count":0,"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/posts\/56630\/revisions"}],"wp:attachment":[{"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/media?parent=56630"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/categories?post=56630"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/roger-pearse.com\/weblog\/wp-json\/wp\/v2\/tags?post=56630"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}