search_index和search_dataset表有什么用,我可以清理它们吗?


8

我试图将sql从本地开发站点转储到生产服务器,我发现search_index和search_dataset这两个表很大,使得sql文件真的很大。

我猜这两个表是关于存储搜索索引的,以后我总是可以从头开始重新索引。如果有错请指正。

那么删除它们的所有记录是否可以/安全?然后导出数据库,导入到我的服务器。通过这样做,我可以减小转储文件的文件大小。

谢谢!


简要说明:您不必删除所有记录然后导出。如果您使用拉丝...做类似的事情drush sql-dump --structure-tables-list=search_index,cache,cache_form
将军(Redneck)

Answers:


10

这些表由核心的“搜索”模块提供的站点的搜索功能使用。它们是根据您网站的内容以及代码中的描述search_schema()说的:

  • search_dataset- “存储将要搜索的项目”
  • search_index- “存储搜索索引,将单词,项目和分数相关联”

尽管您可以忽略/截断这些表的内容以保持数据库转储的较小,但是在cron运行期间将重新创建它们,因为会为您的站点内容重新建立索引。请注意,如果您的网站内容很多,重建时间可能会很长。

我总是发现Backup and Migrate模块比命令行MySQL方便得多,因为可以忽略表和/或其内容,还可以执行计划的转储并具有各种导出/导入配置文件。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.