
# 场景四：从DDM实例导出数据
#### 场景介绍
因为业务使用需要，将DDM实例的数据导出成SQL文本文件。
#### 使用须知
- 本阶段会在一定程度上影响DDM实例以及RDS for MySQL实例性能，请选择在业务低峰时间导出。
- 请选择在大磁盘上进行mysqldump操作，保证磁盘空间充足。
- 在Linux系统中，为防止会话超时导致mysqldump提前退出生成不完整的数据文件，建议在系统后台执行。 执行语句：nohup {mysqldump 命令行} \&
  
 
#### 导出表结构
DDM为2.4.X及以上版本执行以下命令导出表结构。
- MySQL客户端版本为5.6和5.7时请执行以下命令：
  ```
  mysqldump -h {DDM_ADDRESS} -P {DDM_PORT} -u {DDM_USER} -p --no-data --skip-lock-tables --default-auth=mysql_native_password --skip-tz-utc {DB_NAME} {TABLE_NAME} > {mysql_table_schema_ddm.sql}
  ```
  
- MySQL客户端版本为8.0时请执行以下命令：
  ```
  mysqldump -h {DDM_ADDRESS} -P {DDM_PORT} -u {DDM_USER} -p --no-data --skip-lock-tables --default-auth=mysql_native_password --column-statistics=0 --skip-tz-utc {DB_NAME} {TABLE_NAME} > {mysql_table_schema_ddm.sql}
  ```
  
 
#### 导出表数据
DDM为2.4.X及以上版本执行以下命令导出表数据。
```
mysqldump -h {DDM_ADDRESS} -P {DDM_PORT} -u {DDM_USER} -p --skip-lock-tables --add-locks=false --hex-blob --complete-insert --set-gtid-purged=OFF --quick --no-create-info --skip-comments [--where=""] --skip-tz-utc {DB_NAME} {TABLE_NAME} > {mysql_table_data_ddm.sql}
```
![](https://support.huaweicloud.com/usermanual-ddm/public_sys-resources/note_3.0-zh-cn.png)
- 为了提高导出数据的效率，对于非拆分库的表可以直连RDS for MySQL实例进行导出。
- mysqldump5.7官网链接：<https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html>。
 
