---
title: "Chuyển MariaDB sang MySQL trên trình duyệt"
description: "Di chuyển cơ sở dữ liệu MariaDB sang MySQL: chuyển bản dump thành tập lệnh cùng bảng, khóa, sequence và dữ liệu, kèm báo cáo mọi thay đổi."
canonical: https://intosql.com/vi/mariadb-sang-mysql
last_updated: 2026-10-15
---

# Chuyển MariaDB sang MySQL trên trình duyệt

Thả bản dump từ mariadb-dump, mysqldump, phpMyAdmin hoặc Adminer, dạng .sql hoặc .sql.gz, và tải xuống tập lệnh MySQL với cùng bảng, khóa, chỉ mục và dữ liệu. Mọi giá trị MySQL không chứa được nguyên trạng, và mọi đối tượng nó không hỗ trợ, đều được liệt kê trong báo cáo.

[Hướng dẫn di chuyển MariaDB sang MySQL](https://intosql.com/docs/migrations/mariadb-to-mysql)

[Kiểu dữ liệu từ MariaDB sang MySQL](https://intosql.com/docs/types/mariadb-to-mysql)

## Những gì thay đổi từ MariaDB sang MySQL

Mỗi hàng là một quy tắc trình chuyển đổi áp dụng, kèm dòng báo cáo được ghi khi quy tắc thay đổi dữ liệu của bạn.

| Trong MariaDB | Trong MySQL | Dòng báo cáo |
| --- | --- | --- |
| utf8mb4_0900_* and utf8mb4_uca1400_* collations | utf8mb4_unicode_520_ci (utf8mb4_bin cho collation nhị phân) | `collation_replaced` |
| zero, partial or impossible dates (0000-00-00, 2024-02-30) | được giữ |  |
| TIME | TIME, kể cả khoảng thời gian |  |
| TINYINT(1), BOOL | TINYINT(1) |  |
| UNSIGNED and ZEROFILL | được giữ |  |
| ENUM and SET, the '' error value included | được giữ |  |
| JSON | JSON |  |
| NUL bytes in text | được giữ |  |
| AUTO_INCREMENT | AUTO_INCREMENT với bộ đếm của bảng |  |
| MyISAM AUTO_INCREMENT on the second column of a key, in a table that isn't MyISAM in the dump | một chỉ mục trên cột và một bộ đếm cho cả bảng | `myisam_group_autoincrement` |
| ON UPDATE CURRENT_TIMESTAMP | được giữ |  |
| generated columns | VIRTUAL hoặc STORED như trong nguồn |  |
| generated columns with functions IntoSQL doesn't read | một cột thường | `generated_not_translated` |
| INVISIBLE columns | cột thường | `invisible_column` |
| CHECK constraints | được giữ (MySQL 5.7 phân tích rồi bỏ qua chúng) |  |
| CHECK constraints with functions IntoSQL doesn't read | không được tạo | `check_skipped` |
| CHECK ... NOT ENFORCED | không được tạo | `check_not_enforced` |
| expression defaults, and defaults on TEXT, BLOB, JSON and GEOMETRY | không có giá trị mặc định | `default_not_translated` |
| functional indexes, KEY ((expr)) | không được tạo | `index_skipped` |
| keys and indexes on a prefix, c(20) | được giữ |  |
| FULLTEXT indexes | được giữ |  |
| SPATIAL indexes | được giữ |  |
| foreign keys | được giữ, nạp với FOREIGN_KEY_CHECKS=0 |  |
| GEOMETRY, POINT, POLYGON... | được giữ, kèm SRID của từng giá trị |  |
| INET4, INET6, UUID (MariaDB) | varchar(15), varchar(39), char(36) | `type_replaced` |
| BINARY, VARBINARY, BLOB | được giữ |  |
| PARTITION BY | một bảng | `partitions_dropped` |
| WITH SYSTEM VERSIONING (MariaDB) | bảng chứa các hàng hiện tại | `system_versioning_dropped` |
| Aria, ColumnStore, CONNECT, Spider, RocksDB (MariaDB) | InnoDB | `engine_dropped` |
| CREATE SEQUENCE (MariaDB) | không được tạo | `sequence_not_converted` |
| views, triggers, procedures, functions and events | được liệt kê trong báo cáo | `not_converted_objects` |
| NOT NULL columns with values that become NULL | bỏ NOT NULL | `not_null_relaxed` |
| text that isn't valid in its character set | byte lỗi thành ký tự thay thế | `invalid_utf8_replaced` |
| text decoded twice (Ã±) | sao chép nguyên trạng | `mojibake_suspected` |
| dumps without CREATE TABLE | kiểu suy ra từ giá trị | `no_schema` |
| geometries in a dump without CREATE TABLE | GEOMETRY |  |
| SET NAMES utf8 from utf8mb4 tables | được chuyển đổi, kèm cảnh báo | `dump_lost_four_byte_chars` |
| dumps without SET NAMES whose text isn't UTF-8 | đọc dưới dạng Latin-1 (Windows-1252) | `charset_guessed` |
| sjis, cp932, gbk, big5 dumps | đọc dưới dạng UTF-8, kèm cảnh báo | `unsupported_charset` |
| UNHEX('..'), CONVERT(b'..', UNSIGNED), CONVERT(".." USING x), ST_GeomFromText('..') in rows | được tính ra giá trị |  |
| other expressions in rows | NULL | `expression_value` |
| DEFAULT in VALUES | giá trị mặc định của cột | `default_keyword_filled` |
| DEFAULT in VALUES without a literal default | NULL | `default_keyword_null` |
| REPLACE and INSERT IGNORE | hàng thường | `replace_as_insert` |
| types IntoSQL doesn't know | LONGBLOB | `unknown_type` |
| values that don't fit their column | NULL | `invalid_value_null` |
| unreadable geometries | NULL | `bad_geometry` |
| TIMESTAMP | được giữ, nạp theo múi giờ bản dump nêu |  |
| VECTOR(n) (MariaDB 11.7+) | json với các số thực dưới dạng mảng | `type_replaced` |

## Nạp tập lệnh vào MySQL

Tập lệnh tạo bảng, sao chép các hàng, rồi thêm khóa, chỉ mục và khóa ngoại, nên nạp nhanh và dừng ở lỗi đầu tiên.

```shell
mysql --default-character-set=utf8mb4 mydb < mariadb.mysql.sql
```

Khóa ngoại được tạo đúng như bản dump khai báo, với FOREIGN_KEY_CHECKS=0 trong khi nạp các hàng, nên hàng trỏ tới hàng không tồn tại không làm dừng quá trình nạp.

Với bản dump lớn, hãy chạy client trên cùng máy với máy chủ, và tăng max_allowed_packet nếu một hàng rất lớn.

IntoSQL Pro nạp tệp thẳng vào MySQL từ ứng dụng máy tính hoặc dòng lệnh, không cần tạo tập lệnh.

## Tạo bản dump MariaDB để có kết quả tốt nhất

Trình chuyển đổi đọc những gì bản dump chứa. Các tùy chọn sau giữ lại nhiều dữ liệu hơn trong đó:

- --default-character-set=utf8mb4 giữ emoji và các ký tự 4 byte khác, vốn bị bản dump utf8mb3 làm mất trước khi trình chuyển đổi nhìn thấy.
- --hex-blob ghi cột nhị phân và giá trị VECTOR dưới dạng thập lục phân, không bị hỏng khi sao chép giữa các hệ thống.
- --routines --triggers --events thêm các đối tượng đó vào bản dump, để báo cáo có thể liệt kê chúng.

## Những gì không được chuyển đổi

Khung nhìn, trình kích hoạt, thủ tục lưu trữ, hàm và sự kiện được viết bằng ngôn ngữ riêng của MariaDB. Chúng được liệt kê theo tên trong báo cáo, không bao giờ bị bỏ âm thầm, để bạn viết lại cho MySQL.

## Câu hỏi về MariaDB sang MySQL

### Bản dump của tôi có bị tải lên không?

Không. Trình chuyển đổi chạy trong trình duyệt và đọc bản dump từ ổ đĩa theo từng phần, nên nó không bao giờ rời khỏi máy tính của bạn. Ứng dụng máy tính và dòng lệnh cũng chuyển đổi ngay trên máy tính của bạn.

### Bản dump có thể lớn đến đâu?

Trình chuyển đổi không bao giờ giữ toàn bộ bản dump trong bộ nhớ: nó đọc tệp hai lần, theo từng đoạn, và ghi tập lệnh trong lúc đọc. Bản dump nhiều gigabyte vẫn chuyển đổi được trong trình duyệt, trong ứng dụng máy tính và bằng dòng lệnh.

### Bản dump có thể đến từ những phiên bản MariaDB nào?

Bản dump từ mariadb-dump và mysqldump trên MariaDB 10.3 đến 12, với một INSERT mỗi bảng hoặc một INSERT mỗi hàng. Mọi bản dump thử nghiệm đến từ MariaDB 10.11, 11.4 và 11.8 và được so với nguồn từng ô một.

### Cột UUID, INET6, JSON và VECTOR có được giữ không?

UUID thành char(36), INET4 và INET6 thành varchar, JSON thành json, và VECTOR thành mảng json chứa các số thực của nó, vì MySQL 5.7 và 8.0 không có các kiểu này.

### Giá trị AUTO_INCREMENT và sequence có được giữ không?

AUTO_INCREMENT giữ nguyên và tiếp tục từ chỗ bản dump dừng lại. MySQL không có sequence, nên chúng và các giá trị mặc định lấy từ chúng được ghi trong báo cáo.

### Còn thủ tục lưu trữ và trình kích hoạt thì sao?

Chúng được liệt kê theo tên trong báo cáo và không được chuyển đổi, để bạn kiểm tra từng cái với MySQL trước khi tạo lại.

### Tập lệnh nạp được trên những phiên bản MySQL nào?

MySQL 5.7 trở lên. Mọi bản dump thử nghiệm đều nạp được trên 5.7 và 9, và dừng ở lỗi đầu tiên nếu có sự cố.

## Từ MariaDB

- [MariaDB sang PostgreSQL](https://intosql.com/vi/mariadb-sang-postgresql)
- [MariaDB sang MariaDB](https://intosql.com/vi/mariadb-sang-mariadb)
- [MariaDB sang SQLite](https://intosql.com/vi/mariadb-sang-sqlite)
- [MariaDB sang SQL Server](https://intosql.com/vi/mariadb-sang-sql-server)
- [MariaDB sang Oracle](https://intosql.com/vi/mariadb-sang-oracle)

## Sang MySQL

- [MySQL sang MySQL](https://intosql.com/vi/mysql-sang-mysql)
- [PostgreSQL sang MySQL](https://intosql.com/vi/postgresql-sang-mysql)
- [SQL Server sang MySQL](https://intosql.com/vi/sql-server-sang-mysql)
- [SQLite sang MySQL](https://intosql.com/vi/sqlite-sang-mysql)
- [Oracle sang MySQL](https://intosql.com/vi/oracle-sang-mysql)

## Hướng dẫn và mọi cặp

- [MySQL sang MariaDB](https://intosql.com/vi/mysql-sang-mariadb)
- [Hướng dẫn di chuyển MariaDB sang MySQL](https://intosql.com/docs/migrations/mariadb-to-mysql)
- [Kiểu dữ liệu từ MariaDB sang MySQL](https://intosql.com/docs/types/mariadb-to-mysql)
- [Mọi cặp cơ sở dữ liệu](https://intosql.com/vi/chuyen-co-so-du-lieu)
