昨天晚上搞到快12点了,还是没有搞定,原本以为半个小时就可以的事情,却遇到了难以解决的问题,前篇文章贴出来以后,已经到了12点了,也就是今天的0时,昨天搞不定,今天一大早(这个也太早了)接着搞。
在phpmyadmin上,察看表watchdog的结构,搜索,插入都报错,同样的错误信息。在操作页面,有一个表维护,下面为“强制更新资料表("FLUSH")
果然,cache_menu表不存在,而在“drupal6”(我的drupal6测试站点的数据库名)中,这个表是存在了,也就是说,应该有这个表的。查看线上的数据库,这个表也报废了,里面有错误,和watchdog一样。把这个表也恢复了,发现还是报错,在多个浏览器下做了测试,错误信息时有时无。重新登陆以后,发现错误信息没有了。点了几下,发现都没有问题。总算没有出现大问题。由于这两个标平时不怎么用,所以数据丢了也没有大事情。cache中的数据,数据会自动生成。而dog中的,从来还没有用过这个表呢。
相关链接: Think in Drupal
好了继续我的升级之旅。点击“强制更新资料表("FLUSH")”,发现需要RELOAD 权限:#1227 - Access denied; you need the RELOAD privilege for this operation。既然这个不行,那么就直接删除,再创建同样的表了。执行相应的sql语句,DROP TABLE,CREATE TABLE。之后访问自己的站点,没有出现异常。本地和在线站点都搞定了。再次同步本地的数据库,一切ok。
本地的和线上站点完全同步了。对本地的站点升级。
1,打开drupal-6.5\drupal-6.5下面的upgrade.txt文件,按照说明备份文件夹,我只备份了sites下面的目录,其它的我都没有动过,所以不用备份。
2.关闭站点,导航到admin/settings/site-maintenance,选择Off-line,保存。
3,我没有使用自定义的主题,跳过;不过使用了几个第3方模块,将它们全部禁用。
4.删除原有的drupal核心文件。不包括sites,files目录。
5.将drupal-6.5\drupal-6.5下的核心文件拷贝过来。不包括sites。
6,运行http://localhost/zhupou/update.php,按照提示往下点击,最后看到:
“
The following queries were executed
system module
Update #6048
“
这意味升级成功了。不过还有工作要做呢。
7,导航到drupal管理员界面admin/build/modules,启用第3方模块。并重新运行update.php。
本地升级成功。升级在线站点。与本地不同的是,除了.htacess文件,我做了改动,为了省事,没有删除和拷贝这个文件,其它都一样。没有出现任何异常。在线站点升级成功。俺的站点已经更新到drupal6.5了,估计现在没有人访问。