How to generate DDL for all tables in a database in MySQL

后端 未结 3 1548
野性不改
野性不改 2021-01-30 20:54

How to generate the DDL for all tables in a database of MySQL at once. I know that the following query will output the DDL for a table. But I want DDL of all tables at once beca

相关标签:
3条回答
  • 2021-01-30 21:03

    You must get list of all the tables in database and then run this query. check this link to get list of all tables: http://php.net/manual/en/function.mysql-list-tables.php

    0 讨论(0)
  • 2021-01-30 21:06

    @tftdias above made a comment that is partially correct:

    The issue was the space between the -p and 'pps' as the password. You can absolutely freetext your password on the command line. You just shouldn't, as a general security rule. In linux, with a proper configuration, you can add a space (" ") BEFORE the first character on your command line, and that line will not enter into 'history'. I would recommend that whenever you cleartext your password (don't do it!), that you at least put a space first so that the password is not in visible history.

    0 讨论(0)
  • 2021-01-30 21:19

    You can do it using the mysqldump command line utility:

    mysqldump -d -u <username> -p<password> -h <hostname> <dbname>
    

    The -d option means "without data".

    0 讨论(0)
提交回复
热议问题