通常,可以使用这些简单的 SSH 命令导出和导入 MySQL 数据库:
出口:
mysqldump -u USERNAME -p DATABASE_NAME > filename.sql
进口:
mysql -u USERNAME -p DATABASE_NAME < filename.sql
但是当涉及到 WordPress 时,事情就没那么简单了。 据我所知,需要提及其他参数,例如 --add-drop-table
例如。
WordPress Codex 确实提供了一些信息,但它看起来杂乱无章且不够清晰。
如果使用命令行的人可以共享正确的命令来导出和导入 WordPress 数据库,并提供一些解释(使用的任何新参数),那就太好了。
另外,有什么理由不建议在处理数据库时使用命令行,而是使用像 phpMyAdmin 这样的 GUI?
对于 WordPress 来说也是如此简单。 我使用以下内容来备份我的 WP 站点:
mysqldump -u <user> -p<pass> --quick --extended-insert <db-name> > backup.sql
mysqldump 文档提供了所有参数的详细信息。
--extended-insert
从转储文件更新数据库时速度更快,并使转储文件更小。
--quick
使转储的创建更快。
你真的不需要使用其中任何一个,只是让事情变得更快一点,为每一行写一个插入让我感觉更快乐——你原来的转储语法就可以了。
不要忘记,尽管数据库中有特定于域的条目,所以如果您使用此方法进行备份/恢复,那么您就可以了,但是如果您想从 one.com 移动到 two.com,那么您将需要编辑中的条目 wp_options
恢复转储后。
在投入时间学习命令行的基础知识后,我现在越来越少使用 phpMyAdmin。 但是,当我需要浏览或编辑条目时(例如编辑 wp_options
条目,正如史蒂夫上面提到的)。 当我想排除一个不需要备份的特别大的表(比如插件的日志)时,我也经常去 GUI。 但我发现你可以添加
--ignore-table=my_db_name.my_table_name my_db_name