Mysql Export Schema简介及实例

224 阅读5分钟

Mysql Export Schema

Mysql导出模式的定义

MySQL导出模式是一种技术,其特点是导出数据库对象的DDL,如表、函数、视图、触发器、包、程序和包体。在这里,目标目的可以是一个SQL指挥官编辑器、任何剪贴板或文件。在数据库的这种MySQL导出方法中,用户可以导出所有的数据库对象,或者我们也可以只做任何选择。

基本上,MySQL模式是已知的系统模式,包括所有表的信息或数据字典表,或者说,存储在服务器中的数据库对象元数据,并需要执行查询操作。

因此,在MySQL中,我们可以使用phpMyAdmin或mysqldump数据库/表的命令行程序将这些模式或数据库导出到不同格式的外部文件,如.sql、.csv、.docx、.xml、Microsoft Excel、Google Docs、Open Office等。

语法

我们可以通过查询结果到存在于MySQL数据库服务器中的CSV文件,以平静的方式导出表或整个数据库的模式。

但在我们实施导出数据之前,用户需要确保以下事项。

  • 用户应该在MySQL服务器进程中拥有对目标文件夹的写入权限,该文件夹包括目标CSV文件。
  • 目标CSV文件不应存在。

假设后面的查询从书籍中选择所有字段到数据库表中存在的WHERE子句的表。

SELECT * FROM Books WHERE Language = ‘English’;

现在,将这个查询结果数据导出到CSV文件中,我们需要在上面的查询中添加几个子句,写法如下。

SELECT * FROM Books WHERE Language = ‘English’
INTO OUTFILE ‘C:/tmp/books_info.csv’ FIELDS ENCLOSED BY ‘ ; ’ ESCAPED BY ‘ ” ’
LINES TERMINATED BY ‘ \r\n ’;

当查询在服务器中执行时,该语句将在特定的c:/tmp文件夹中创建一个名为books_info.csv的CSV文件,其中包含结果集。这个导出的特定文件将包括结果组中的表行行数。在这里,每一行都由回车结构以及由LINES TERMINATED BY '\r\n'子句说明的换行字符完成。每一行都包括结果组中表行的每一列的值。

每个值都被FIELDS ENCLOSED BY ' ; '子句定义的双引号所包围。它有助于避免可能包括逗号的值被理解为字段分隔符。当用引号包围数值时,即双引号,那么数值内的逗号将不会被接受为字段分隔符。

如何在MySQL中导出模式?

  • MySQL目前由甲骨文公司拥有,是一个开源的数据库。MySQL存储的模式包括表结构中存在的一切,如字段、视图、权限、触发器、对象、属性、索引、运算符、函数,以及可以使用SQL语言访问的数据。
  • 这个MySQL导出模式有助于从数据库中导出这些模式,或包含一个特定的表,并可以导入到任何其他数据库或具有与前一个相同模式的表中。
  • 此外,MySQL中的模式提供了一个逻辑结构,以表的行和列的形式存储数据和值,并查询所有数据库对象、功能程序、数据类型、约束条件、分组信息,以增加功能,并使用信息模式和关系数据库实现新的集合。
  • 简单地说,我们可以说MySQL数据库是一组模式,而模式是一组表。因此,模式可以应用于使用查询来表示数据库的一个部分。

例子

让我们通过例子来说明MySQL导出模式的过程,并找出在phpMyAdmin数据库服务器中执行导出操作的方法,无论是在你的localhost还是cpanel的phpMyAdmin仪表板,都是如此。

当我们需要使用导出模式结构从服务器上使用phpMyAdmin导出任何数据库或表时,那么,我们将遵循以下步骤。

1.点击存在于 phpmyAdmin 左边菜单上的 MySQL 数据库名称。

当你访问你的phpMyAdmin页面并通过操作它的任何用户定义的用户名和密码登录时,你会发现在左边的菜单上有一个在服务器上创建的数据库列表。你只需要选择你想导出模式的特定数据库,然后点击它。

Mysql Export Schema 1

2.2. 再次从右窗格的顶部菜单中选择 "导出 "选项。

点击一个特定的数据库后,你会看到该数据库中存在的表,在顶部菜单中,为用户提供了不同的选项,以执行不同的任务。从这个顶部菜单中,看到 "导出 "选项,并简单地点击它。

Choose the Export option 2

3.从格式下拉菜单中选择XML选项来导出数据库或表。

你将看到默认的导出选项。存在SQL格式,但你需要从下拉选择中选择XML格式。

Choose the XML option 3

4.选择自定义--从选项中显示所有选项导出方法。

在导出页面,你可以看到有两个导出类型的选项。这些是具有最小选项的快速方法或显示所有可能选项的自定义方法。因此,选择自定义方法,然后继续前进。

Mysql Export Schema 4.1

Mysql Export Schema 4.2

Mysql Export Schema 4.3

在这里,你也可以选择你想导出模式的特定表,并通过取消勾选表名来删除其他表。

5.从数据转储选项部分,取消勾选导出内容。

现在,你可以在自定义导出选项中看到各种选项,如大小、字符和所有的输出,特定格式的选项,其中包含所有的对象创建选项,有模式要导出,最后,你会发现数据转储选项,你需要取消选中,以避免导出内容,因为我们只需要导出模式。

Uncheck Export Contents 5

6.接下来,点击 "开始 "选项。

最后,设置所有只需点击 "Go "按钮就可以从数据库中导出模式,一个.xml文件将被下载为。

Mysql Export Schema 6.1

当你在浏览器上打开该文件时,你将看到只导出了数据库的表模式。

Mysql Export Schema 6.2

结论

MySQL导出模式功能可用于DB2 for LUW, H2, Derby, Exasol, MariaDB, Informix, SQL, Mimer, SQL Server, Redshift, Snowflake, NuoDB, MySQL, Oracle, SQLite, PostgreSQL, Vertica, 和Sybase ASE。MySQL支持以一种简单而快速的方式将数据库模式导出到Oracle数据库云存储或安全的FTP中,并有多种选择。