ddev目前缺少export-db命令(参见https://github.com/drud/ddev/issues/767)
如何导出数据库?
答案 0 :(得分:5)
从ddev v1.4.0(2018-11-14)开始,有一个ddev export-db
命令。你可以做这些事情(来自ddev export-db -h
):
ddev export-db >/tmp/db.sql.gz
ddev export-db --gzip=false >/tmp/db.sql
ddev export-db -f /tmp/db.sql.gz
此外,不要忘记ddev snapshot
,这是快速转储数据库的一种快捷方式,但它不像基于文本的转储那样可移植。 (请参阅ddev snapshot -h
和ddev restore-snapshot -h
。)
使用容器内技术的原始答案: 我一直在做的是:
ddev ssh
mkdir /var/www/html/.tarballs
mysqldump db | gzip >/var/www/html/.tarballs/db.sql.gz
# or with explicit authentication
mysqldump -udb -pdb -hdb db | gzip >/var/www/html/.tarballs/db.sql.gz
或Drupal / drush用户:
ddev ssh
drush sql-dump --gzip >.tarballs/my-project-db.sql.gz
将转储放在项目的.tarballs目录中供以后使用(它在主机上)。
然而,我很期待export-db command来到这里。
另请注意,从v1.1.0开始,您可以使用ddev snapshot
命令在.ddev / db_snapshots目录中保存数据库的副本。它不是文本.sql.gz文件,但它是一个很好的保存数据库。
答案 1 :(得分:2)
我想拥有TYPO3吊坠对此非常有用,这要感谢Outdoorsman对上述GitHub Issue的评论。
室外人写道:
我来自TYPO3 CMS世界,也同意这将是 好东西。我目前正在使用
ddev ssh and ./vendor/bin/typo3cms database:export | gzip > project_name_db.sql.gz
如果是typo3_console 扩展程序是通过composer安装的。
答案 2 :(得分:1)
您还可以使用Drupal console:
ddev start
ddev ssh
drupal database:dump
drupal database:restore --file db-2018-07-04-11-31-22.sql
答案 3 :(得分:0)
要了解有关@rfay答案的更多信息,我通常更喜欢drush cli
,但是,它基于偏好。
ddev start
ddev ssh
drush sql:dump --result-file=../db-export.sql