我想将我的网站下载到我的本地主机,但在我的 Wordpress 数据库上运行简单查询时遇到问题,因此它会将数据库中的所有“真实”网站 URL 更改为 "http://localhost"
(遵循本教程(第二部分:不使用插件下载 wordpress 网站 - http://www.wpbeginner.com/wp-tutorials/how-to-move-live-wordpress-site-to-local-server/)。
我将我所有的网站文件从 FTP 服务器下载到我的本地主机目录并下载了我的数据库(压缩)。 这些是我在教程中提到的尝试运行的三个查询,它们应该会更改我的数据库中的链接:
UPDATE wp_options SET option_value = replace(option_value, 'http://www.example.com', 'http://localhost/Dev_site') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.example.com', 'http://localhost/Dev_site');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.example.com','http://localhost/Dev_site');
当我使用 PHPmyAdmin 运行这些查询时,没有任何反应,所以我决定使用 MySQL Workbench。 第一个查询仍然没有改变任何东西,但是得到了这个:
0 row(s) affected Rows matched: 2 Changed: 0 Warnings: 0
虽然我知道它应该改变我的表格中的某些内容。我删除了查询的最后一部分:option_name = 'home'
得到这个:
0 row(s) affected Rows matched: 1 Changed: 0 Warnings: 0
一个变了!!
另外两个查询返回:
错误代码:1175。您正在使用安全更新模式,并且您尝试更新没有使用 KEY 列的 WHERE 的表要禁用安全模式,请在首选项 -> SQL 查询中切换该选项并重新连接。
如前所述,我尝试选中/取消选中“首选项 -> SQL 查询”中的前两个复选框,但这并没有解决我的问题。
为什么我的第一个查询没有按照教程中所写的方式工作?
如何修复我在其他两个查询中遇到的错误?
如果写错了,那么正确的写法是什么?
编辑:
我如前所述更改了“首选项 -> SQL 查询”,取消选中第二个框,关闭“MySQL Workbench”并重新打开它,得到:
0 row(s) affected Rows matched: 3258 Changed: 0 Warnings: 0
运行第二个查询时。
最佳答案
当我尝试使用 PHPMyAdmin 对我的数据库运行查询时,有时会发生这种情况。
wordpress 上有一些插件可能会有所帮助。
如果要搜索网站名称并将其替换为localhost,可以使用Search and Replace .
对于任意命令,你可以使用SQL Executioner .
关于mysql - 无法在我的 Wordpress 数据库上运行简单的 SQL 查询(将网站下载到本地主机),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24678816/