<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Wordpress on Dapeng Zhang</title><link>https://zhangdapeng.dev/tags/wordpress/</link><description>Recent content in Wordpress on Dapeng Zhang</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Wed, 25 Jun 2025 10:26:47 +0000</lastBuildDate><atom:link href="https://zhangdapeng.dev/tags/wordpress/index.xml" rel="self" type="application/rss+xml"/><item><title>wordpress 突然跳到安装界面 修复frm表的问题（idbdata1文件必须存在）</title><link>https://zhangdapeng.dev/p/wordpress-tu-ran-tiao-dao-an-zhuang-jie-mian-xiu-fu-frm-biao-de-wen-ti-idbdata1-wen-jian-bi-xu-cun-zai/</link><pubDate>Wed, 25 Jun 2025 10:26:47 +0000</pubDate><guid>https://zhangdapeng.dev/p/wordpress-tu-ran-tiao-dao-an-zhuang-jie-mian-xiu-fu-frm-biao-de-wen-ti-idbdata1-wen-jian-bi-xu-cun-zai/</guid><description>&lt;p&gt;朋友一网站使用wordpress搭建的，我很少使用这种东西，突然出现这种情况还真的很难找，因为要去理解什么逻辑实现要重新安装表的结构，很苦恼啊，最终google找到一篇文章说是wordpress使用的表都是innodb引擎，表损坏导致的，于是我打算修复一下，可以使用phpMyAdmin打开数据库发现只有库没有表了，经过一番的折腾我找到了几篇帖子，具体过程就是先新建一个表，然后在新建的表里面建立所有wordpress需要的表，建立完所有需要的表之后，关闭mysql&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;service mysql stop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;修改mysql的配置文件&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;innodb_force_recovery &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后将旧库里面的表的结果copy一份到新库，之后修改两个库的名字，将两个库的名字对调。然后启动数据库&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;service mysql start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;看看数据库的表里面的数据吧，全部都回来了。嘿嘿&lt;/p&gt;
&lt;p&gt;再次关闭mysql&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;service mysql stop
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;将&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;innodb_force_recovery &lt;span style="color:#f92672"&gt;=&lt;/span&gt; &lt;span style="color:#ae81ff"&gt;4&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;注释掉&lt;/p&gt;
&lt;p&gt;重新启动mysql&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;service mysql start
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;回复完毕。&lt;/p&gt;
&lt;p&gt;之后想了想，是以为最近一次服务器空间满了，当时误以为是表坏了，又由于对数据库的不了解，本来只是删除ib_logfile0和ib_logfile1两个文件，结果删除后还是没有用，于是将ibdata1做了一个临时备份，还好没有删掉，今天按照上面的操作做了多次，最后是将ibdata1文件重新copy回来后，数据才回来的。因为新的ibdata1没有相关数据的点，找不到数据吧，所以如果没有或者ibdata1这个文件不是原来的是无法恢复数据的。&lt;/p&gt;
&lt;p&gt;参考文章：&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://cnzhx.net/blog/restore-mysql-from-ibdata-and-frm/" target="_blank" rel="noopener"
 &gt;使用 ibdata 和 frm 文件恢复 MySQL 数据库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://www.itpub.net/thread-740932-1-1.html" target="_blank" rel="noopener"
 &gt;如何从IBData中恢复MySQL数据库&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class="link" href="http://www.lanceyan.com/tech/mysql/lost-ibdata-recover-data.html" target="_blank" rel="noopener"
 &gt;Mysql ibdata 丢失或损坏如何通过frm&amp;amp;ibd 恢复数据&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Wordpress版本的手动升级步骤</title><link>https://zhangdapeng.dev/p/wordpress-ban-ben-de-shou-dong-sheng-ji-bu-zhou/</link><pubDate>Tue, 24 Jun 2025 15:29:33 +0000</pubDate><guid>https://zhangdapeng.dev/p/wordpress-ban-ben-de-shou-dong-sheng-ji-bu-zhou/</guid><description>&lt;p&gt;最近在看看Wordpress的模板开发，在后台遇到了一个问题就是要升级，但是我的是虚拟机，所以无法试下ftp，至少我现在还木有找到实现的方法。再者就是自己的网络慢，还是先下载之后进行手动升级吧。&lt;/p&gt;
&lt;p&gt;下面给出手动升级的步骤，希望对大家有些作用。&lt;/p&gt;
&lt;h3 id="第一步备份程序文件和数据库"&gt;&lt;a class="link" href="#1" &gt;第一步、备份程序文件和数据库&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;不备份升级后出现问题的可能性也不大，但是为了以防万一还是备份一下吧，养成个好习惯也少后悔。&lt;/p&gt;
&lt;h3 id="第二步登录后台关闭所有插件"&gt;&lt;a class="link" href="#2" &gt;第二步、登录后台关闭所有插件&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;网友提醒补充的一条，升级的时候别忘了哦。&lt;/p&gt;
&lt;h3 id="第三步下载最新wordpress安装包"&gt;&lt;a class="link" href="#3" &gt;第三步、下载最新wordpress安装包&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;这个就简单了，cn.wordpress.org去下。&lt;/p&gt;
&lt;h3 id="第四步解压安装包更新数据"&gt;&lt;a class="link" href="#4" &gt;第四步、解压安装包更新数据&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;将网站根目录下wp-admin和wp-includes两个目录中的文件换成最新下载的程序文件，我都是将原来的文件删除后再拷贝新文件进去，直接覆盖也可以（直接覆盖有些工具会弄不全），随便你了。&lt;/p&gt;
&lt;h3 id="第五步更新根目录下除wp-configphp文件以外的文件"&gt;&lt;a class="link" href="#5" &gt;第五步、更新根目录下除wp-config.php文件以外的文件&lt;/a&gt;
&lt;/h3&gt;&lt;p&gt;wp-config.php文件是wp配置文件，包括数据库连接设置等，所以千万不要把此文件删除了。另外wp-content文件夹内的内容不用更改，这里面放的是主题文件，插件文件等，不在升级范围内，运行http://你的博客地址/wp-admin/upgrade.php ，将你的博客地址填入路径中执行升级程序。&lt;/p&gt;
&lt;p&gt;整个环节下来，其实是很简单的，ok啦，其实说实话，Wordpress升级很简单的。&lt;/p&gt;</description></item></channel></rss>