升级到joomla 2.5后台出现lock tables的解决方法

随着joomla新版本的到来,老版本已经逐渐推出历史舞台,功成身退,还有许多用户都忙着从joomla1.5升级为joomla 2.5,但是joomla2.5添加了许多的东西,LOCK TABLES就是其中的一个,许多用户升级之后,许多用户都遇到了添加菜单项等一系列不能操作的问题,提示 Access denied for user 'xxx'@'localhost' to database 'xxxx' SQL=LOCK TABLES 。这个是由于joomla 1.5版本操作数据库没有加入lock table 机制,升级之后便有了lock table 机制,这也是从性能安全方面考虑,那么我们应该如何解决这个问题呢?解决的方法就是修改joomla的源文件:通过ftp工具连接您的php虚拟主机找到/libraries/joomla/batabase/tabke.php ,使用文本编辑器找到这段代码:

protected function _lock(){       $this->_db->lockTable($this->_tbl);       $this->_locked = true;       return true;}
把里面的的代码注释掉,注释代码如下:
protected function _lock(){       //$this->_db->lockTable($this->_tbl);       //$this->_locked = true;       //return true;}
接着找到这段代码
protected function _unlock(){       $this->_db->unlockTables();       $this->_locked = false;       return true;}
同样把这段代码修改为:
protected function _unlock(){       //$this->_db->unlockTables();       //$this->_locked = false;       //return true;}
修改之后保存后,上传到网站ftp里面覆盖就可以,记得覆盖前要先备份原始文件哦! 纯Linux环境下高免备案【香港独立IP地址】 php空间,仅仅只需199元一年起。商务中国域名核心代理直销50元注册国际顶级域名

本文地址:https://www.gaosudu.com/joomla/9788.html