İçeriğe geç
IntoSQL ana sayfası

MySQL - MariaDB dönüştürme

mysqldump, mariadb-dump, mysqlpump, phpMyAdmin veya Adminer ile alınmış bir dökümü .sql veya .sql.gz olarak bırakın ve aynı tablolar, anahtarlar, indeksler ve verilerle bir MariaDB betiği indirin. MariaDB tarafından olduğu gibi tutulamayan her değer ve taşınmayan her nesne raporda listelenir.

Dosyanız
sqlshop_2024.sqlÖrnek dosya, 5,1 kB
Veritabanınız

18 satır dönüştürüldü, 2 düzeltme, reddedilen yok

Göster

shop_2024.sql içindeki tablolarMySQL 8.0.46 dökümü · mysqldump ile yazıldı · utf8mb4

  • customers8 satır1
    7 sütun
    idint unsigned not null
    namevarchar(100) not null
    emailvarchar(150) not null
    countrychar(2) not null
    is_activetinyint(1) not null
    signed_update not null
    created_attimestamp not null
  • orders10 satır1
    9 sütun
    idint unsigned not null
    customer_idint unsigned not null
    statusenum('pending','paid','shipped','cancelled') not null
    totaldecimal(10,2) not null
    itemssmallint unsigned not null
    ordered_atdatetime not null
    shipped_atdatetime
    notevarchar(255)
    updated_attimestamp not null
-- Written by IntoSQL from a MySQL dump. Load it with: mariadb --default-character-set=utf8mb4 <database> < <file>
SET NAMES utf8mb4;
SET TIME_ZONE = '+00:00';
SET FOREIGN_KEY_CHECKS = 0;
SET UNIQUE_CHECKS = 0;
SET SQL_MODE = 'NO_AUTO_VALUE_ON_ZERO,ALLOW_INVALID_DATES';

CREATE TABLE `customers` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(100) NOT NULL,
  `email` varchar(150) NOT NULL,
  `country` char(2) NOT NULL DEFAULT 'US',
  `is_active` tinyint(1) NOT NULL DEFAULT 1,
  `signed_up` date NOT NULL DEFAULT '0000-00-00',
  `created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uq_email` (`email`)
) ENGINE=InnoDB AUTO_INCREMENT=1001 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci COMMENT='People who bought at least once';

CREATE TABLE `orders` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `customer_id` int unsigned NOT NULL,
  `status` enum('pending','paid','shipped','cancelled') NOT NULL DEFAULT 'pending',
  `total` decimal(10,2) NOT NULL,
  `items` smallint unsigned NOT NULL DEFAULT 1,
  `ordered_at` datetime NOT NULL,
  `shipped_at` datetime DEFAULT NULL,
  `note` varchar(255) DEFAULT NULL,
  `updated_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  KEY `idx_customer` (`customer_id`),
  KEY `idx_status_date` (`status`,`ordered_at`),
  CONSTRAINT `fk_orders_customer` FOREIGN KEY (`customer_id`) REFERENCES `customers` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=5001 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_520_ci;

INSERT INTO `customers` (`id`,`name`,`email`,`country`,`is_active`,`signed_up`,`created_at`) VALUES (1,'Ana Martínez','ana@example.com','MX',1,'2023-01-15','2023-01-15 10:24:00'),(2,'Zoë Müller','zoe@example.de','DE',1,'2023-02-03','2023-02-03 08:11:42'),(3,'José Peña','jose@example.es','ES',0,'2023-03-21','2023-03-21 19:05:17'),(4,'李雷','lilei@example.cn','CN',1,'2023-05-09','2023-05-09 02:40:00'),(5,'Noah O\'Brien','noah@example.ie','IE',1,'0000-00-00','2023-06-30 14:00:00'),(6,'Amélie Laurent','amelie@example.fr','FR',1,'2024-01-02','2024-01-02 09:30:00'),(7,'Ravi Patel','ravi@example.in','IN',0,'2024-02-29','2024-02-29 23:59:59'),(8,'Sofia Rossi 🌻','sofia@example.it','IT',1,'2024-04-12','2024-04-12 12:12:12');
INSERT INTO `orders` (`id`,`customer_id`,`status`,`total`,`items`,`ordered_at`,`shipped_at`,`note`,`updated_at`) VALUES (1,1,'shipped',129.90,3,'2024-03-01 10:00:00','2024-03-02 16:30:00',NULL,'2024-03-02 16:30:00'),(2,2,'paid',54.00,1,'2024-03-02 11:15:00',NULL,'Gift wrap 🎁','2024-03-02 11:20:00'),(3,1,'cancelled',12.50,1,'2024-03-03 09:45:00',NULL,'Customer changed their mind','2024-03-03 10:00:00'),(4,4,'shipped',980.00,12,'2024-03-05 02:10:00','2024-03-07 08:00:00','请小心轻放','2024-03-07 08:00:00'),(5,5,'pending',45.75,2,'2024-03-08 17:20:00',NULL,'Leave at the door; ring twice','2024-03-08 17:20:00'),(6,6,'shipped',310.40,5,'2024-03-10 13:00:00','2024-03-11 09:00:00','Fragile: \"glass\"','2024-03-11 09:00:00'),(7,8,'paid',76.20,2,'2024-03-11 18:45:00',NULL,NULL,'2024-03-11 18:46:00'),(8,2,'',19.99,1,'2024-03-12 08:00:00',NULL,'Status lost in an old import','2024-03-12 08:00:00'),(9,3,'shipped',64.00,2,'2024-03-14 15:30:00','0000-00-00 00:00:00','Shipping date never recorded','2024-03-15 10:00:00'),(10,7,'paid',1499.00,1,'2024-03-15 21:05:00',NULL,'C:\\Users\\ravi\\invoice.pdf','2024-03-15 21:05:00');

SET UNIQUE_CHECKS = 1;
SET FOREIGN_KEY_CHECKS = 1;

Düzeltmeler

  1. customers, MariaDB içinde olmayan utf8mb4_0900_ai_ci harmanlamasını kullanıyor, bu yüzden utf8mb4_unicode_520_ci kullanır; metin biraz farklı sıralanıp karşılaştırılabilir.
  2. orders, MariaDB içinde olmayan utf8mb4_0900_ai_ci harmanlamasını kullanıyor, bu yüzden utf8mb4_unicode_520_ci kullanır; metin biraz farklı sıralanıp karşılaştırılabilir.

Dosyan bu bilgisayarda dönüştürülür ve asla yüklenmez.

Diğer örnekler:

MySQL ile MariaDB arasında neler değişir

Her satır, dönüştürücünün uyguladığı bir kuraldır; yanında, kural verilerinizde bir şeyi değiştirdiğinde yazılan rapor satırı yer alır.

  • utf8mb4_0900_* and utf8mb4_uca1400_* collations

    utf8mb4_0900_* için utf8mb4_unicode_520_ci (ikili olanlar için utf8mb4_bin)

    MariaDB yeni harmanlamaları tanımaz; çoğu MySQL 8 dökümünün başka yerde yüklenmesini durduran hata budur. unicode_520 aynı Unicode kurallarını en yakın şekilde izler.

    Rapor satırı: collation_replaced

  • zero, partial or impossible dates (0000-00-00, 2024-02-30)

    korunur

    Betik ALLOW_INVALID_DATES ile ve NO_ZERO_DATE olmadan yüklenir; böylece MariaDB kaynaktaki değerlerin aynısını korur.

  • TIME

    süreler dahil TIME

    Aynı tür, aynı aralıkla.

  • TINYINT(1), BOOL

    TINYINT(1)

    Aynı değerlerle aynı tür.

  • UNSIGNED and ZEROFILL

    korunur

    Aynı türler.

  • ENUM and SET, the '' error value included

    korunur

    Aynı türler; betik katı mod olmadan yüklenir, bu yüzden hata değeri olduğu gibi yüklenir.

  • JSON

    JSON (MariaDB'nin denetlediği LONGTEXT)

    MariaDB aynı JSON metnini okur.

  • NUL bytes in text

    korunur

    Değer, kaynağın kullandığı kaçış dizisiyle kopyalanır.

  • AUTO_INCREMENT

    tablonun sayacıyla AUTO_INCREMENT

    Sayaç, MyISAM'in grup başına sayaçları dahil, kaynağın bıraktığı yerden devam eder.

  • MyISAM AUTO_INCREMENT on the second column of a key, in a table that isn't MyISAM in the dump

    sütun üzerinde bir indeks ve tablo için tek sayaç

    InnoDB bir sütunu yalnızca bir indeksin başındaysa ve tüm tablo için bir kez sayar.

    Rapor satırı: myisam_group_autoincrement

  • ON UPDATE CURRENT_TIMESTAMP

    korunur

    Sütunun saniye kesirleriyle aynı ifade.

  • generated columns

    kaynaktaki gibi VIRTUAL veya STORED

    Aynı formül, terim terim çevrilir.

  • generated columns with functions IntoSQL doesn't read

    düz bir sütun

    IntoSQL'in okuyamadığı bir formül, düz bir sütun ve bir rapor satırı bırakır.

    Rapor satırı: generated_not_translated

  • INVISIBLE columns

    INVISIBLE sütunlar

    MySQL'de görünmez sütunlar 8.0.23'ten, MariaDB'de 10.3'ten beri vardır.

  • CHECK constraints

    korunur

    Aynı CHECK kısıtları, terim terim çevrilir.

  • CHECK constraints with functions IntoSQL doesn't read

    oluşturulmaz

    IntoSQL'in okuyamadığı bir CHECK kısıtı dışarıda bırakılır ve raporlanır.

    Rapor satırı: check_skipped

  • CHECK ... NOT ENFORCED

    oluşturulmaz

    MySQL 5.7 ve MariaDB bir CHECK kısıtını uygulamadan tutamaz ve satırlar onu ihlal edebilir.

    Rapor satırı: check_not_enforced

  • expression defaults, and defaults on TEXT, BLOB, JSON and GEOMETRY

    korunur

    MySQL bunları 8.0.13'ten beri kabul eder; betik 5.7 üzerinde yüklenir, bu yüzden dışarıda bırakılır ve raporlanır. MariaDB bunları kabul eder.

    Rapor satırı: default_not_translated

  • functional indexes, KEY ((expr))

    oluşturulmaz

    MySQL ifadeleri 8.0.13'ten beri indeksler, MariaDB hiç indekslemez; indeksli bir üretilen sütun aynı işi görür.

    Rapor satırı: index_skipped

  • keys and indexes on a prefix, c(20)

    korunur

    Aynı indeks.

  • FULLTEXT indexes

    korunur

    Aynı indeks; MATCH ... AGAINST eskisi gibi çalışır.

  • SPATIAL indexes

    korunur

    Aynı indeks.

  • foreign keys

    korunur, FOREIGN_KEY_CHECKS=0 ile yüklenir

    Aynı anahtarlar; satırlar kaynak dökümdeki gibi yüklenir.

  • GEOMETRY, POINT, POLYGON...

    korunur, her değerin SRID'siyle

    Sunucunun kendi geometri baytları SRID dahil kopyalanır.

  • INET4, INET6, UUID (MariaDB)

    korunur

    MySQL'de bu türler yoktur; MariaDB'nin bunlar için yazdığı metin korunur.

  • BINARY, VARBINARY, BLOB

    korunur

    Baytlar bayt olarak kalır.

  • PARTITION BY

    tek tablo

    Satırlar aynıdır; gerekiyorsa tabloyu yeniden bölümleyin.

    Rapor satırı: partitions_dropped

  • WITH SYSTEM VERSIONING (MariaDB)

    mevcut satırlardan başlayarak WITH SYSTEM VERSIONING

    Döküm yalnızca mevcut satırları içerir; MySQL'de sistem sürümlemesi yoktur.

  • Aria, ColumnStore, CONNECT, Spider, RocksDB (MariaDB)

    korunur

    MySQL'de bu motorların hiçbiri yoktur. Diğer tüm motorlar korunur.

  • CREATE SEQUENCE (MariaDB)

    sonraki değeriyle CREATE SEQUENCE

    MySQL'de sequence yoktur.

  • views, triggers, procedures, functions and events

    raporda listelenir

    Yeniden oluşturmanız için listelenirler; kodları çoğu zaman tanımlayıcı kullanıcıyı ve sunucu özelliklerini anar.

    Rapor satırı: not_converted_objects

  • NOT NULL columns with values that become NULL

    NOT NULL kaldırılır

    Değerleri NULL olmak zorunda kalan bir sütun NOT NULL kısıtını koruyamaz, yoksa yükleme durur.

    Rapor satırı: not_null_relaxed

  • text that isn't valid in its character set

    hatalı baytlar yerine koyma karakteri olarak

    Betik UTF-8'dir; UTF-8 olmayan baytlar yüklemeyi durdururdu.

    Rapor satırı: invalid_utf8_replaced

  • text decoded twice (ñ)

    olduğu gibi kopyalanır

    Döküm tam olarak bu karakterleri içerir, bu yüzden kopyalanırlar; rapor onları gösterir.

    Rapor satırı: mojibake_suspected

  • dumps without CREATE TABLE

    değerlerden okunan türler

    --no-create-info ile alınan bir dökümde yalnızca satırlar vardır, bu yüzden türler değerlerden gelir.

    Rapor satırı: no_schema

  • geometries in a dump without CREATE TABLE

    GEOMETRY

    MySQL'in geometri biçimi değerlerden tanınır.

  • SET NAMES utf8 from utf8mb4 tables

    dönüştürülür, uyarıyla

    MySQL 5.x mysqldump varsayılan olarak 3 baytlık utf8 yazar ve herhangi bir dönüştürücü dosyayı görmeden önce her emojiyi soru işaretiyle değiştirir.

    Rapor satırı: dump_lost_four_byte_chars

  • dumps without SET NAMES whose text isn't UTF-8

    Latin-1 (Windows-1252) olarak okunur

    MySQL'in latin1 kodlaması Windows-1252'dir; bu tür dökümlerin olağan kodlamasıdır.

    Rapor satırı: charset_guessed

  • sjis, cp932, gbk, big5 dumps

    uyarıyla UTF-8 olarak okunur

    Bu kodlamalar henüz çözülmüyor.

    Rapor satırı: unsupported_charset

  • UNHEX('..'), CONVERT(b'..', UNSIGNED), CONVERT(".." USING x), ST_GeomFromText('..') in rows

    hesaplanır

    Bazı döküm araçları değerleri bu çağrılar olarak yazar; bunlar ürettikleri değerler olarak okunur.

  • other expressions in rows

    NULL

    Veritabanı çalıştırmayan bir dönüştürücü bunları hesaplayamaz.

    Rapor satırı: expression_value

  • DEFAULT in VALUES

    sütunun varsayılan değeri

    Sabit bir varsayılan değer satıra kopyalanır.

    Rapor satırı: default_keyword_filled

  • DEFAULT in VALUES without a literal default

    NULL

    Kopyalanacak bir değer yok.

    Rapor satırı: default_keyword_null

  • REPLACE and INSERT IGNORE

    düz satırlar

    Bir dökümde her anahtar için bir satır vardır, bu yüzden satırlar aynıdır.

    Rapor satırı: replace_as_insert

  • types IntoSQL doesn't know

    LONGBLOB

    Bir blob her değerin baytlarını tutar; yüklemeden sonra türü değiştirin.

    Rapor satırı: unknown_type

  • values that don't fit their column

    NULL

    Hasarlı veya elle yazılmış bir döküm, sütununun tutamayacağı değerler içerebilir; geri kalanın yüklenmesi için bunlar NULL olur.

    Rapor satırı: invalid_value_null

  • unreadable geometries

    NULL

    Geometri olmayan baytlar geometri olarak saklanamaz.

    Rapor satırı: bad_geometry

  • TIMESTAMP

    korunur, dökümün belirttiği saat diliminde yüklenir

    Betik dökümle aynı saat dilimini ayarlar, böylece her an aynı kalır.

  • VECTOR(n) (MariaDB 11.7+)

    float'ları dizi olarak tutan json

    Betik, vektör türü olmayan MariaDB 10.11 ve sonrasında yüklenir; bir JSON dizisi her float'ı korur ve VEC_FromText onu geri okur.

    Rapor satırı: type_replaced

MySQL içindeMariaDB içindeRapor satırı
utf8mb4_0900_* and utf8mb4_uca1400_* collationsutf8mb4_0900_* için utf8mb4_unicode_520_ci (ikili olanlar için utf8mb4_bin)MariaDB yeni harmanlamaları tanımaz; çoğu MySQL 8 dökümünün başka yerde yüklenmesini durduran hata budur. unicode_520 aynı Unicode kurallarını en yakın şekilde izler.collation_replaced
zero, partial or impossible dates (0000-00-00, 2024-02-30)korunurBetik ALLOW_INVALID_DATES ile ve NO_ZERO_DATE olmadan yüklenir; böylece MariaDB kaynaktaki değerlerin aynısını korur.
TIMEsüreler dahil TIMEAynı tür, aynı aralıkla.
TINYINT(1), BOOLTINYINT(1)Aynı değerlerle aynı tür.
UNSIGNED and ZEROFILLkorunurAynı türler.
ENUM and SET, the '' error value includedkorunurAynı türler; betik katı mod olmadan yüklenir, bu yüzden hata değeri olduğu gibi yüklenir.
JSONJSON (MariaDB'nin denetlediği LONGTEXT)MariaDB aynı JSON metnini okur.
NUL bytes in textkorunurDeğer, kaynağın kullandığı kaçış dizisiyle kopyalanır.
AUTO_INCREMENTtablonun sayacıyla AUTO_INCREMENTSayaç, MyISAM'in grup başına sayaçları dahil, kaynağın bıraktığı yerden devam eder.
MyISAM AUTO_INCREMENT on the second column of a key, in a table that isn't MyISAM in the dumpsütun üzerinde bir indeks ve tablo için tek sayaçInnoDB bir sütunu yalnızca bir indeksin başındaysa ve tüm tablo için bir kez sayar.myisam_group_autoincrement
ON UPDATE CURRENT_TIMESTAMPkorunurSütunun saniye kesirleriyle aynı ifade.
generated columnskaynaktaki gibi VIRTUAL veya STOREDAynı formül, terim terim çevrilir.
generated columns with functions IntoSQL doesn't readdüz bir sütunIntoSQL'in okuyamadığı bir formül, düz bir sütun ve bir rapor satırı bırakır.generated_not_translated
INVISIBLE columnsINVISIBLE sütunlarMySQL'de görünmez sütunlar 8.0.23'ten, MariaDB'de 10.3'ten beri vardır.
CHECK constraintskorunurAynı CHECK kısıtları, terim terim çevrilir.
CHECK constraints with functions IntoSQL doesn't readoluşturulmazIntoSQL'in okuyamadığı bir CHECK kısıtı dışarıda bırakılır ve raporlanır.check_skipped
CHECK ... NOT ENFORCEDoluşturulmazMySQL 5.7 ve MariaDB bir CHECK kısıtını uygulamadan tutamaz ve satırlar onu ihlal edebilir.check_not_enforced
expression defaults, and defaults on TEXT, BLOB, JSON and GEOMETRYkorunurMySQL bunları 8.0.13'ten beri kabul eder; betik 5.7 üzerinde yüklenir, bu yüzden dışarıda bırakılır ve raporlanır. MariaDB bunları kabul eder.default_not_translated
functional indexes, KEY ((expr))oluşturulmazMySQL ifadeleri 8.0.13'ten beri indeksler, MariaDB hiç indekslemez; indeksli bir üretilen sütun aynı işi görür.index_skipped
keys and indexes on a prefix, c(20)korunurAynı indeks.
FULLTEXT indexeskorunurAynı indeks; MATCH ... AGAINST eskisi gibi çalışır.
SPATIAL indexeskorunurAynı indeks.
foreign keyskorunur, FOREIGN_KEY_CHECKS=0 ile yüklenirAynı anahtarlar; satırlar kaynak dökümdeki gibi yüklenir.
GEOMETRY, POINT, POLYGON...korunur, her değerin SRID'siyleSunucunun kendi geometri baytları SRID dahil kopyalanır.
INET4, INET6, UUID (MariaDB)korunurMySQL'de bu türler yoktur; MariaDB'nin bunlar için yazdığı metin korunur.
BINARY, VARBINARY, BLOBkorunurBaytlar bayt olarak kalır.
PARTITION BYtek tabloSatırlar aynıdır; gerekiyorsa tabloyu yeniden bölümleyin.partitions_dropped
WITH SYSTEM VERSIONING (MariaDB)mevcut satırlardan başlayarak WITH SYSTEM VERSIONINGDöküm yalnızca mevcut satırları içerir; MySQL'de sistem sürümlemesi yoktur.
Aria, ColumnStore, CONNECT, Spider, RocksDB (MariaDB)korunurMySQL'de bu motorların hiçbiri yoktur. Diğer tüm motorlar korunur.
CREATE SEQUENCE (MariaDB)sonraki değeriyle CREATE SEQUENCEMySQL'de sequence yoktur.
views, triggers, procedures, functions and eventsraporda listelenirYeniden oluşturmanız için listelenirler; kodları çoğu zaman tanımlayıcı kullanıcıyı ve sunucu özelliklerini anar.not_converted_objects
NOT NULL columns with values that become NULLNOT NULL kaldırılırDeğerleri NULL olmak zorunda kalan bir sütun NOT NULL kısıtını koruyamaz, yoksa yükleme durur.not_null_relaxed
text that isn't valid in its character sethatalı baytlar yerine koyma karakteri olarakBetik UTF-8'dir; UTF-8 olmayan baytlar yüklemeyi durdururdu.invalid_utf8_replaced
text decoded twice (ñ)olduğu gibi kopyalanırDöküm tam olarak bu karakterleri içerir, bu yüzden kopyalanırlar; rapor onları gösterir.mojibake_suspected
dumps without CREATE TABLEdeğerlerden okunan türler--no-create-info ile alınan bir dökümde yalnızca satırlar vardır, bu yüzden türler değerlerden gelir.no_schema
geometries in a dump without CREATE TABLEGEOMETRYMySQL'in geometri biçimi değerlerden tanınır.
SET NAMES utf8 from utf8mb4 tablesdönüştürülür, uyarıylaMySQL 5.x mysqldump varsayılan olarak 3 baytlık utf8 yazar ve herhangi bir dönüştürücü dosyayı görmeden önce her emojiyi soru işaretiyle değiştirir.dump_lost_four_byte_chars
dumps without SET NAMES whose text isn't UTF-8Latin-1 (Windows-1252) olarak okunurMySQL'in latin1 kodlaması Windows-1252'dir; bu tür dökümlerin olağan kodlamasıdır.charset_guessed
sjis, cp932, gbk, big5 dumpsuyarıyla UTF-8 olarak okunurBu kodlamalar henüz çözülmüyor.unsupported_charset
UNHEX('..'), CONVERT(b'..', UNSIGNED), CONVERT(".." USING x), ST_GeomFromText('..') in rowshesaplanırBazı döküm araçları değerleri bu çağrılar olarak yazar; bunlar ürettikleri değerler olarak okunur.
other expressions in rowsNULLVeritabanı çalıştırmayan bir dönüştürücü bunları hesaplayamaz.expression_value
DEFAULT in VALUESsütunun varsayılan değeriSabit bir varsayılan değer satıra kopyalanır.default_keyword_filled
DEFAULT in VALUES without a literal defaultNULLKopyalanacak bir değer yok.default_keyword_null
REPLACE and INSERT IGNOREdüz satırlarBir dökümde her anahtar için bir satır vardır, bu yüzden satırlar aynıdır.replace_as_insert
types IntoSQL doesn't knowLONGBLOBBir blob her değerin baytlarını tutar; yüklemeden sonra türü değiştirin.unknown_type
values that don't fit their columnNULLHasarlı veya elle yazılmış bir döküm, sütununun tutamayacağı değerler içerebilir; geri kalanın yüklenmesi için bunlar NULL olur.invalid_value_null
unreadable geometriesNULLGeometri olmayan baytlar geometri olarak saklanamaz.bad_geometry
TIMESTAMPkorunur, dökümün belirttiği saat diliminde yüklenirBetik dökümle aynı saat dilimini ayarlar, böylece her an aynı kalır.
VECTOR(n) (MariaDB 11.7+)float'ları dizi olarak tutan jsonBetik, vektör türü olmayan MariaDB 10.11 ve sonrasında yüklenir; bir JSON dizisi her float'ı korur ve VEC_FromText onu geri okur.type_replaced

Betiği MariaDB veritabanına yükleyin

Betik tabloları oluşturur, satırları kopyalar, ardından anahtarları, indeksleri ve yabancı anahtarları ekler; böylece hızlı yüklenir ve ilk hatada durur.

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

Yabancı anahtarlar, mysqldump'ın yaptığı gibi, satırlar yüklenirken FOREIGN_KEY_CHECKS=0 ile dökümün tanımladığı şekilde oluşturulur.

Büyük bir döküm için istemciyi sunucuyla aynı makinede çalıştırın ve tek bir satır çok büyükse max_allowed_packet değerini artırın.

IntoSQL Pro, dosyayı masaüstü uygulamasından veya komut satırından doğrudan MariaDB veritabanına yükler; betik yazmanız gerekmez.

En iyi sonuç için MySQL dökümü nasıl alınır

Dönüştürücü, dökümün içerdiğini okur. Bu seçenekler verilerinizin daha fazlasını dökümde tutar:

  • --default-character-set=utf8mb4 emoji ve diğer 4 baytlık karakterleri korur; utf8 dökümü bunları dönüştürücü görmeden önce kaybeder.
  • --hex-blob ikili sütunları onaltılık olarak yazar; bu biçim sistemler arasında kopyalamada bozulmaz.
  • --routines --triggers --events bu nesneleri döküme ekler; böylece rapor onları listeleyebilir.

Neler dönüştürülmez

Görünümler, tetikleyiciler, saklı yordamlar, fonksiyonlar ve olaylar her veritabanının kendi dilinde yazılır. Raporda adlarıyla listelenirler, asla sessizce atlanmazlar; böylece onları MariaDB için yeniden yazabilirsiniz.

MySQL - MariaDB dönüştürme hakkında sorular

Yanıtınızı bulamadınız mı? İletişim sayfasından bize yazın, bir kişi yanıt verir. İletişim sayfası

Dökümüm yükleniyor mu?

Hayır. Dönüştürücü tarayıcınızda çalışır ve dökümü diskinizden parça parça okur; böylece döküm bilgisayarınızdan hiç çıkmaz. Masaüstü uygulaması ve komut satırı da bilgisayarınızda dönüştürür.

Döküm ne kadar büyük olabilir?

Dönüştürücü dökümün tamamını asla bellekte tutmaz: dosyayı aralıklar halinde iki kez okur ve betiği ilerledikçe yazar. Birkaç gigabaytlık dökümler tarayıcıda, masaüstü uygulamasında ve komut satırıyla dönüştürülür.

MariaDB dökümlerini okuyor mu?

Evet. mariadb-dump ile alınan dökümler ve MariaDB 10.3 ile 12 arası sürümlerin dökümleri, MariaDB'nin INET6, INET4 ve UUID sütunları dahil, aynı şekilde dönüştürülür.

0000-00-00 tarihlerine ne olur?

MariaDB bunları korur: betik yükleme sırasında sıfır ve imkansız tarihleri kabul eden bir SQL modu ayarlar, böylece olduğu gibi gelirler.

AUTO_INCREMENT değerleri korunuyor mu?

Evet. AUTO_INCREMENT olduğu gibi kalır ve tablonun sayacı dökümün bıraktığı yerden devam eder.

TINYINT(1) boolean olur mu?

Kaynaktaki gibi TINYINT(1) olarak kalır; böylece her değer kendi sayısını korur.

Saklı yordamlar ve tetikleyiciler ne olur?

Raporda adlarıyla listelenirler ve dönüştürülmezler; böylece yeniden oluşturmadan önce her birini MariaDB ile karşılaştırabilirsiniz. ON UPDATE CURRENT_TIMESTAMP olduğu gibi kalır.

Betik hangi MariaDB sürümlerinde yüklenir?

MariaDB 10.11 ve sonrası. Her test dökümü, MySQL 5.7 ile 9 arasından ve MariaDB'den, 10.11 ve 11.4 üzerinde yüklenir.