【问题标题】:Exclude views from mysql database dump从 mysql 数据库转储中排除视图
【发布时间】:2014-01-29 12:57:45
【问题描述】:

有没有办法从 mysql 转储导出中排除 views

我尝试了--ignore-table 命令。但是这个命令推荐了我要排除的表的参数。

我的数据库中有 30 个视图。

有什么简单的方法可以只导出表格(不导出视图)吗?

谢谢

【问题讨论】:

  • 我为此使用来自 www.webyog.com 的 SQLyog。您可以选择需要的表对象,例如视图、sp、触发器或事件。您可以在转储中包含或排除
  • 这里有免费版本:code.google.com/p/sqlyog/wiki/Downloads
  • @SathishD 谢谢,让我试试

标签: mysql view phpmyadmin export mysqldump


【解决方案1】:

根据答案here,您应该能够将表对象通过管道传输到mysqldump,例如:

mysql -u username INFORMATION_SCHEMA
  --skip-column-names --batch
  -e "select table_name from tables where table_type = 'BASE TABLE'
      and table_schema = 'database'"
  | xargs mysqldump -u username database
  > tables.sql

【讨论】:

    【解决方案2】:

    从评论中得到答案:-)

    我为此使用SQLyog。您可以选择需要的表对象,例如视图、sp、触发器或事件。您可以在转储中包含或排除。

    这里提供免费版本:https://code.google.com/p/sqlyog/wiki/Downloads

    【讨论】:

    • SQLyog 在 ubuntu 中的 wine 上运行。他们没有原生的 linux 版本。甚至我在软呢帽中也用过它。
    【解决方案3】:

    我不得不为 mysqldump 命令添加另一个 -p。这就是我最终得到的结果:

    mysql -u root -p INFORMATION_SCHEMA 
    --skip-column-names --batch 
    -e "select table_name from tables where table_type = 'BASE_TABLE' 
      and table_schema = 'my_database_name'" 
    | xargs mysqldump -u root -p --opt --compress my_database_name 
    | gzip -9 -c > my_database_name-tables.sql.gz
    

    还优化和压缩转储 + 创建一个 gzip。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-03-26
      • 2012-12-10
      • 2014-11-17
      • 1970-01-01
      • 2011-02-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多