【问题标题】:Is it possible to dump and import views using mysqldump?是否可以使用 mysqldump 转储和导入视图?
【发布时间】:2012-04-12 02:12:44
【问题描述】:

当我使用 mysqldump 并重新导入转储时,视图变为空表。

有没有可能

a) 转储然后导入视图而不将它们变成空表?

或者,如果a不可能,

b) 使用通配符从 mysqldump 中排除视图,例如

mysqldump mydb  --ignore-table=*views > mydb.sql

排除所有视图,如果所有视图的名称都以字符串“views”结尾? (这部分之前已被询问但仍未得到答复:Ignore 'views' in mysql db backup using mysqldump

【问题讨论】:

    标签: mysql view mysqldump


    【解决方案1】:

    使用--compact --add-drop-table,然后手动调整转储文件。

    详情:

    --compact

    产生更紧凑的输出。此选项启用--skip-add-drop-table, --skip-add-locks, --skip-comments, --skip-disable-keys, and --skip-set-charset 选项。
    注意:

    在 MySQL 5.1.21 之前,如果数据库转储包含视图,则此选项不会创建有效的 SQL。重新创建视图需要创建和删除临时表,此选项禁止删除这些临时表。作为一种解决方法,将 --compact 与 --add-drop-table 选项一起使用,然后手动调整转储文件。

    【讨论】:

    • 谢谢。现在我只需要说服管理员从 5.0.77 更新
    • “手动调整转储文件”是什么意思?在 5.1.21 之前或之后需要做什么以及它有什么不同?
    • 能否请您解释一下手动调整转储文件是什么意思?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-05-25
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    • 1970-01-01
    • 1970-01-01
    • 2012-08-15
    相关资源
    最近更新 更多