DBSR提供了用于在MySQL数据库上投入搜索和重复运行的功能。上面使用简单替换()-SQL语句的主要优势是对解析PHP序列化字符串的支持,例如WordPress数据库中通常使用它们。
由于DBSR进行了序列化字符串的解析,因此它也能够修复损坏的序列化,因此在同一数据库上使用之前使用了较不高级的搜索脚本时经常看到的问题。
最低支持的PHP版本为5.3,并用最高7.4的版本进行了测试。 PDO用于与数据库连接,因此请确保启用了pdo和pdo_mysql扩展。
首先,转到发行页面并下载最新版本的DBSR。
您可以下载可以从命令行中使用的CLI版本,也可以下载可以上传到Web服务器并通过Web浏览器访问的GUI版本。
注意:一些教程使您下载整个存储库并将其放在Web服务器上。我不建议这样做。对于大多数用户,只需下载GUI版本(dbsearchreplace-gui.php),然后将其上传到您的Web服务器上是建议使用DBSR的方法。
注意:我看到许多教程建议的另一件事是使用extensive search选项。在大多数情况下,如果您只是替换WordPress数据库中的纯文本值,则不应使用此选项。它会使DBSR非常慢,不需要,没有它,一切都会正常工作。

DBSR的GUI提供了易于使用的4步向导,用于执行数据库上的搜索和替换操作。它具有许多方便的功能,可自动检测和完成您的设置,提供一些自动检查以防止常见错误,以及完成所有工作后删除自身的能力。
CLI版本的用法最好由内置的--help输出来解释:
Usage: DBSearchReplace-CLI.php [options] -- SEARCH REPLACE [SEARCH REPLACE...]
DBSearchReplace-CLI.php --file FILENAME
CLI options:
--help display this help and exit
--version print version information and
exit
--file FILENAME JSON-encoded config file to load
--output text|json output format (default: text)
PDO options:
--host HOSTNAME hostname of the MySQL server
--port PORTNUMBER port number of the MySQL server
--user USERNAME username used for connecting to
the MySQL server
--password PASSWORD password used for connecting to
the MySQL server
--database DATABASE name of the database to be
searched
--charset CHARSET character set used for
connecting to the MySQL server
DBSR options:
--case-insensitive [true|false] use case-insensitive search and
replace (default: false)
--extensive-search [true|false] process *all* database rows
(default: false)
--search-page-size SIZE number of rows to process
simultaneously (default: 10000)
--var-match-strict [true|false] use strict matching
(default: true)
--floats-precision PRECISION up to how many decimals floats
should be matched (default: 5)
--convert-charsets [true|false] automatically convert character
sets (default: true)
--var-cast-replace [true|false] cast all replace-values to the
original type (default: true)
--db-write-changes [true|false] write changed values back to the
database (default: true)
--handle-serialize [true|false] interpret serialized strings as
their PHP types (default: true)
有关配置文件的示例,请参见示例config.json。
如果您遇到DBSR的任何问题,请在GitHub上打开一个问题,并提供尽可能多的细节。
DBSR是在GPLV3下许可的免费软件。有关更多信息,请参见许可证。