---
title: "SQL Server - MySQL taşıma, tarayıcınızda"
description: "Bir SQL Server veritabanını MySQL hedefine taşıyın: SSMS'in ürettiği betiği aynı tablolar, anahtarlar ve verilerle bir betiğe dönüştürün, raporuyla birlikte."
canonical: https://intosql.com/tr/sql-server-mysql-donusturme
last_updated: 2026-10-15
---

# SQL Server - MySQL taşıma, tarayıcınızda

SSMS'in Generate Scripts aracının şema ve veriyle yazdığı betiği .sql veya .sql.gz, UTF-16 veya UTF-8 olarak bırakın ve aynı tablolar, anahtarlar, indeksler ve verilerle bir MySQL betiği indirin. MySQL'in olduğu gibi tutamadığı her değer ve taşımadığı her nesne raporda listelenir.

[SQL Server - MySQL taşıma kılavuzu](https://intosql.com/docs/migrations/sql-server-to-mysql)

[SQL Server - MySQL veri türleri](https://intosql.com/docs/types/sql-server-to-mysql)

## SQL Server ile MySQL 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.

| SQL Server içinde | MySQL içinde | Rapor satırı |
| --- | --- | --- |
| bit | tinyint(1) |  |
| char(n), varchar(n), nchar(n), nvarchar(n), varchar(max), text | char(n), 1024 karaktere kadar varchar(n), ötesi text türleri |  |
| decimal(p,s), money, smallmoney | decimal(p,s); money decimal(19,4) olarak |  |
| datetime, datetime2, smalldatetime | datetime(p) |  |
| datetime2(7), time(7) and datetimeoffset(7) | saniyenin altı basamağı, yedincisi kesilir | `fraction_cut` |
| datetimeoffset | UTC'de datetime(p) | `moments_as_utc` |
| time | time(p) |  |
| dates before the year 1000 | NULL | `date_out_of_range` |
| json (SQL Server 2025) | json |  |
| uniqueidentifier | char(36) |  |
| binary, varbinary, image | binary(n), varbinary(n) ve blob türleri |  |
| geometry, geography | SQL Server'ın kendi baytlarıyla blob | `spatial_as_native` |
| rowversion, timestamp | blob, boş | `rowversion_empty` |
| xml, sql_variant, hierarchyid, vector | longtext | `type_replaced` |
| collations that ignore case (_CI_) | tam karşılaştırma (utf8mb4_bin) | `case_insensitive_collation` |
| IDENTITY | en yüksek id'den sonra devam eden AUTO_INCREMENT |  |
| IDENTITY columns that don't lead the primary key | düz bir tam sayı | `counter_dropped` |
| CREATE SEQUENCE | oluşturulmaz | `sequence_not_converted` |
| computed columns | üretilen sütunlar, PERSISTED ise STORED, değilse VIRTUAL |  |
| computed columns with functions MySQL lacks | düz bir sütun | `generated_not_translated` |
| defaults with functions MySQL lacks, and NEXT VALUE FOR | varsayılan değer yok | `default_not_translated` |
| CHECK constraints | çevrilir |  |
| CHECK constraints with functions MySQL lacks | oluşturulmaz | `check_skipped` |
| CHECK constraints added WITH NOCHECK or disabled | oluşturulmaz | `check_not_enforced` |
| filtered and columnstore indexes | oluşturulmaz | `index_skipped` |
| foreign keys | FOREIGN_KEY_CHECKS=0 ile yüklenen yabancı anahtarlar |  |
| foreign keys to tables the dump doesn't create | oluşturulmaz | `foreign_key_skipped` |
| tables on a partition scheme | her bölümün satırlarını içeren tek tablo | `partitions_dropped` |
| temporal tables (SYSTEM_VERSIONING) | iki tablo: mevcut satırlar ve geçmiş | `system_versioning_dropped` |
| schemas | tek veritabanı, tabloların adı önce şemalarının adıyla başlar | `schemas_merged` |
| NOT NULL columns with values that become NULL | NOT NULL kaldırılır | `not_null_relaxed` |
| views, functions, procedures, triggers, synonyms, types and partition functions | raporda listelenir | `not_converted_objects` |
| scripts without CREATE TABLE (data only) | değerlerden okunan türler | `no_schema` |
| expressions in INSERT values | NULL | `expression_value` |
| types IntoSQL doesn't know | longtext | `unknown_type` |
| NUL characters in text | korunur |  |
| text that isn't valid in its encoding | hatalı baytlar yerine koyma karakteri olarak | `invalid_utf8_replaced` |
| text decoded twice (Ã±) | olduğu gibi kopyalanır | `mojibake_suspected` |

## Betiği MySQL 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.

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

Yabancı anahtarlar dökümün tanımladığı şekilde, satırlar yüklenirken FOREIGN_KEY_CHECKS=0 ile oluşturulur; böylece var olmayan bir satıra işaret eden bir satır yüklemeyi durdurmaz.

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 MySQL veritabanına yükler; betik yazmanız gerekmez.

## En iyi sonuç için SQL Server 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:

- SSMS'te veritabanına sağ tıklayın, Tasks, Generate Scripts'i seçin ve tabloları işaretleyin. dbatools, mssql-scripter ve aynı kitaplık üzerine kurulu diğer araçlar aynı betiği yazar.
- Advanced altında Types of data to script ayarını Schema and data yapın. Yalnızca şemayı içeren bir betikte tablolar satırsızdır.
- Betiği SSMS'in varsayılanı olan Unicode ya da UTF-8 olarak kaydedin: ikisi de aynı şekilde okunur, gzip de çalışır.

## Neler dönüştürülmez

Görünümler, fonksiyonlar, saklı yordamlar, tetikleyiciler, eş anlamlılar, kurallar ve güvenlik ilkeleri T-SQL ile yazılır. Raporda adlarıyla listelenirler, asla sessizce atlanmazlar; böylece onları MySQL için yeniden yazabilirsiniz.

## SQL Server - MySQL dönüştürme hakkında sorular

### 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.

### SSMS'in kaydettiği UTF-16 dosyasını okuyor mu?

Evet. SSMS betikleri varsayılan olarak UTF-16 kaydeder ve dönüştürücü, gzip'li olsun olmasın, toplu işler arasında GO bulunan UTF-16 ve UTF-8 dosyalarını aynı şekilde okur.

### Betik hangi SQL Server sürümlerinden gelebilir?

SSMS, dbatools veya mssql-scripter ile SQL Server 2017 ve sonrasından yazılmış betikler. Her test betiği SQL Server 2017, 2022 ve 2025'ten gelir ve kaynağıyla hücre hücre karşılaştırılır.

### IDENTITY değerleri korunuyor mu?

Evet, tablo başına bir sütun için: birincil anahtarın başındaki IDENTITY sütunu AUTO_INCREMENT olur ve en yüksek id'den sonra devam eder. MySQL'de sequence olmadığı için sequence'lar oluşturulmaz ve rapor bunu belirtir.

### money, datetimeoffset ve diğer SQL Server türleri ne olur?

bit tinyint(1), money decimal(19,4), uniqueidentifier char(36), datetimeoffset ise UTC'de datetime olur. Şemalar tek bir veritabanında tablo adı önekleri olur. Büyük/küçük harfi yok sayan sütunlar tam karşılaştırır ve rapor hangileri olduğunu söyler.

### Saklı yordamlar, tetikleyiciler ve görünümler ne olur?

Raporda adlarıyla listelenirler ve dönüştürülmezler, çünkü her veritabanı onları kendi dilinde yazar.

### Betik hangi MySQL sürümlerinde yüklenir?

MySQL 5.7 ve sonrası. Her test betiği 5.7 ve 9 üzerinde yüklenir ve bir sorun çıkarsa ilk hatada durur.

## Kaynak: SQL Server

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

## Hedef: MySQL

- [MySQL - MySQL](https://intosql.com/tr/mysql-mysql-donusturme)
- [MariaDB - MySQL](https://intosql.com/tr/mariadb-mysql-donusturme)
- [PostgreSQL - MySQL](https://intosql.com/tr/postgresql-mysql-donusturme)
- [SQLite - MySQL](https://intosql.com/tr/sqlite-mysql-donusturme)
- [Oracle - MySQL](https://intosql.com/tr/oracle-mysql-donusturme)

## Kılavuz ve tüm ikililer

- [MySQL - SQL Server](https://intosql.com/tr/mysql-sql-server-donusturme)
- [SQL Server - MySQL taşıma kılavuzu](https://intosql.com/docs/migrations/sql-server-to-mysql)
- [SQL Server - MySQL veri türleri](https://intosql.com/docs/types/sql-server-to-mysql)
- [Tüm veritabanı ikilileri](https://intosql.com/tr/veritabani-tasima)
