Want to batch export data from MySQL tables to XML files?
Try Withdata DBToFile, a MySQL to XML converter for Windows, Linux, and macOS, Export MySQL data to XML, Easy and Fast.
- Can run in GUI mode, Step by Step, just a few mouse clicks.
- Can run in Command line, for Scheduled Tasks and Streams.
- Support Windows, Linux, and macOS.
Batch export data from MySQL tables to XML files
Login to MySQL -> Select MySQL tables -> Set XML file options -> Export MySQL tables to XML
Choose MySQL and logon.

Click “Export All Tables” at task dialog.

Select XML file type.

1. Select MySQL tables to export.

2. Set XML options.

3. See MySQL tables to be exported.

4. Set rows options.

5. Export MySQL data to XML files.

After exporting, you can view output XML files.

More about MySQL to XML converter
See also:
- Export MySQL table to XML
- Export MySQL query results to XML
- Export multiple similar MySQL tables to one XML file
MySQL → XML reference
Type mapping
| Value kind | in MySQL | in XML |
|---|---|---|
| Int | INT | <int>1234</int> |
| Bigint | BIGINT | <bigint>9007199254740993</bigint> |
| Decimal | DECIMAL(p,s) | <decimal>1234.56</decimal> |
| Float | DOUBLE | <float>1.234e10</float> |
| Text | VARCHAR(n) | <char>text</char> |
| Long text | LONGTEXT | <text>multi-line text</text> (entities for & <) |
| Date | DATE | <date>2026-09-18</date> (xs:date with an XSD) |
| Datetime | DATETIME | <datetime>2026-09-18T14:30:00Z</datetime> (xs:dateTime) |
| Binary | LONGBLOB | <blob>base64...</blob> (xs:base64Binary) |
| Boolean | TINYINT(1) | <bool>true</bool> |
| JSON | JSON | escaped inside an element, or its own sub-tree |
Dialect differences
MySQL is a database server and XML is a file format, so the gap is wider than a dialect difference – the rows below are where values and structure stop lining up.
| Property | in MySQL | in XML |
|---|---|---|
| port | 3306 | — |
| identifiers | `backtick` | Attribute values in quotes; entities (& < >) for ... |
| row limit | LIMIT n | — |
| dates | DATETIME, TIMESTAMP, DATE, TIME | Text (xs:date / xs:dateTime when an XSD is in play) |
| long text | TINYTEXT / TEXT / MEDIUMTEXT / LONGTEXT | — |
| binary | BLOB / TINYBLOB / LONGBLOB | base64Binary / hexBinary inside text |
| separator | — | Tags, not delimiters |
| encoding | — | Declared in the XML declaration |
| typing | — | None in the markup itself |
| shape | Tables of rows and columns | Arbitrary tree |
| ceiling | — | Whole document is usually parsed into memory |
Command line
| Side | Command |
|---|---|
| MySQL | mysqldump, or mysql -e "SELECT ..." > out.csv |
| MySQL (load) | mysqlimport, or LOAD DATA INFILE |
Convert your data online, free
Free in-browser converters for CSV, Excel, JSON, XML and SQL: Withdata Online Data Conversion. Large files, batch conversion or scheduling? See the offline desktop apps, or browse all data conversion tools.
