跳至主要内容

wordpress转移数据库搬家纪实


这个兄弟干了一个我也准备干的事情,还写了交代,很好,从宽处理之。

因为流量关系,为网站做了个镜像站点,等待流量快超标的时候做个域名转向来缓解压力。在新的服务器上安装 了Wordpress后,开始进行数据库操作:

1. 备份原来网站的数据库:操作很简单,进入PhpMyAdmin后选择导出,在表单选择框里选择全部。选择"另存为文件"中的"

2. 恢复备份数据库到新的服务器中: 进入新服务器的PhpMyAdmin,(因为已经在这里建立了Wordpress,所以已经存在一个新的数据库了),在"结构"中选择所有表单,然后在" 选中项"中选择"删除",原有的数据库清空。然后在"SQL"中点击"浏览"选择刚才备份的数据库文件,点击"执行"即可。

可在这个时候出现了问题:总是说什么超出了Memory,或者说超过了30秒的限制,无法正常导入。导入数据库文件大小限制一般为2M,我的备份文件不过才800多KB,为什么不行呢?后来明白,可能是新的服务器连接速度有些慢,所以在进行导入时,总是超过了时间限制。

解决办法:备份数据库时,分几次备份不同的表单,而不是一次重复全部,就这样重复1,2两个步骤三次,总算把数据库正常导入了。

3. 站内链接调整:因为数据库相同,当然网站里所有站内链接也会和原来的相同,全部指向的还是原来的服务器地址。在PhpMyAdmin里选择数据库中的"wp_options"表单,点击"浏览"然后按"option_name"排列主键顺序,找到"option_name"键值为"siteurl"一项,点击"编辑"按钮,把里面的原来网站链接地址改为新的。然后找到"home"一项,同样编辑把链接改成新的网址。

所 有数据库操作完成, 登陆网站查看,一下子傻了,除了我在侧边栏里写的自我简介那几个字是正常汉字,其它全以"?"显示。难道字符设置不对?不可能啊数据库是原来的,当然字符 设置也是原来的"utf-8″。上网找答案,原来以前MySQL版本为4.0的转到4.1或者更高版本时,会出现乱码。上服务器的说明中查看,原来老的服 务器MySQL版本为4.0,而新的服务器版本为5.0,晕哦,可真先进。继续google,在" 桑林志"的"MySQL 4.1x 中文乱码问题"中找到了解决方案。

1. 设置数据库的"collation"为"utf8_general_ci":因为在新的服务器中建立数据库时,没有指定其为utf-8,更没设定collation,所以需要先设定数据库的字符集。

执行命令:
alter database myblog
character set utf8;

然后再在"操作"或者数据库PhpMyAdmin的登陆页面中设定collation为"utf8_general_ci"。

2. 更改WordPress程序中wp-includes/wp-db.php的文件:我是选择了在56行处,而不是44行处(桑林志的做法)加入了如下语句:

$this->query("SET NAMES 'utf8′");

复制语句时小心字体哦,我复制的代码加入后报错,原来那些>"'什么的都不正确。

再次登陆网站查看,终于一切正常!!!整个操作时间耗费了大概6个小时,主要是网上查找解答太费时间,而且在设定collation时麻烦不小,因为我原来的服务器竟然关闭了调整Collation的命令。显示为:"使用链接表的额外特性尚未激活。要查出原因,请单击此处。",还好它默认为字符集为"UTF-8″不然估计我的数据库是无论如何都不能恢复到更高版本的MySQL里了。

评论

此博客中的热门博文

How to Design a Store Front Sign

In this Article we will talk about designing a store front for a business. What color or size should your Letters & designs be? What to put on your sign and why?, then be ready to Get in touch with sign people and get your best deal. Large lettering with out a front sign could save you time and money Do your products have a special shape or color to emulate on your sign? Kodak is always in yellow and black, Coca-Cola white on red, Etc. Muffler places, have a sign in the shape of a muffler. your phone number on the store front some place, but not on the identification sign, (door, or window) Your Product & logos can be arranged on the front sign, or window. Not on the Pole sign, Store hours & phone number could fit in your design and by using the product color, it could add product recognition & enhance your design. Suppliers may provide plenty of advert...

How to Make Money from Home Posting Links With No Out of Pocket Expense

Many people are earning money working from home just posting links on a blog, a website, or on well organized Social network marketing website. Anyone can earn substantial income by knowing what to do, where to do it, and how to do it. This article is designed around the Know How concepts to help people without that knowledge to set up their Blogs or Websites to achieve goal. Money is a medium of exchange that brings financial success TRAFFIC EXCHANGE ACCOUNT Log into your website or blog account and place the adsense code into the html document. Then save your document. Upload you website or blog to the internet following any instruction you received from your webmaster. Remember that your webmaster host your website or blog absolutely free. You must publish your site or blog for changes to take place. You now need free traffic resources to advertise and promote your new blog...

找到一个可以替代ghs.google.com的地址

用Goole Blogger的自定义域名功能需要用到 ghs.google.com 做CNAME,或者用ping ghs.google.com 得出的IP做一个A记录.但是,伟大的GFW已经把 ghs.google.com 和部分IP屏蔽在大陆之外.这样的壮举使得我们的自定义域名不能正常访问,或者让你的网页背景.图片被滤掉,精心做成的模板变得惨白不堪. 那么,我们可不可以找一个替代 ghs.google.com 的地址呢?当然能.因为Google是强大的.它有许多有用的IP地址让你去探寻. 对 ghs.google.com 分析研究后发现, ghs.google.com 这台服务器并没有提供实质性的服务,而只是选择访问者访问最快的服务器(Google全球性公司,很多地区都有服务器).我们只要找到其他服务器的IP地址,并且这个IP地址没被屏蔽,那么就成了. 寻找这样的IP地址需要用到tracert命令.即在CMD模式下输入:tracert ghs.google.com ,在已经屏蔽的当下,最后自然得不出结果,这就需要我们使用代理了.使用不同地区的代理运行tracert ghs.google.com 命令. tracert ghs.google.com 的最后一跳会有类似这样的域名: eh-in-f121.google.com 如果在不用代理的情况下,你能ping通这个域名,那么恭喜你,你找到了!现在就可以用这个域名代替 ghs.google.com 设置你的CNAME了,ping出的IP地址可以做A记录,CNAME和A记录,只做其中之一就可以. hs-in-f121.google.com 64.233.179.121 eh-in-f121.google.com 72.14.207.121 bx-in-f121.google.com 66.249.81.121 ik-in-f121.google.com 66.249.91.121 这4个在我所在地区不能使用,而可以使用 tw-in-f121.google.com 72.14.235.121 或者209.85.171.121也可用 下面是一些不断更新的:74.125.43.121 除了使用代理来寻找,也可以通过一些网站提供的功能来寻找这个地址,很方便,就是使用网站提供的Traceroute.这些网站有: h...