A1 Data Migrator moves an entire SQL Server database to PostgreSQL, MySQL, SQLite, or MongoDB — schema, data, indexes, foreign keys, and a full inventory of triggers and stored procedures — in four guided phases. Verified on 8.8 million rows.
Smart fallbacks for the cases real databases throw at you, full inventory of what couldn't auto-port, and a verifier you can trust.
T-SQL types, defaults (SYSUTCDATETIME, NEWID, CONVERT, identity), computed columns, and check constraints all rewritten for PostgreSQL.
SYSUTCDATETIME
NEWID
CONVERT
~10× faster than INSERTs. Foreign-key checks deferred during load; identity sequences reset to MAX(id) after.
MAX(id)
btree row-size limit hit? Single-column non-unique indexes auto-retry as USING HASH. The rest get a workbook with options.
USING HASH
3,000+ T-SQL objects captured into _migration_meta.objects with the original body preserved for manual port.
_migration_meta.objects
SQL Server dbo maps to public; other schemas stay namespaced. Duplicate names across schemas are handled correctly.
dbo
public
Source COUNT_BIG(*) compared to target COUNT(*) table-by-table. Zero tolerance for silent mismatches.
COUNT_BIG(*)
COUNT(*)
WPF wizard for one-off migrations, a1mig CLI for CI/CD. Both share the same engine and config file.
a1mig
Connections you provide; nothing leaves your network. The DLL is HMAC-watermarked so you can verify integrity at any time.
The wizard runs them in order; the CLI runs each on demand. Every phase logs its own outcome.
Drop + create the target database, apply all CREATE TABLEs. No indexes, no FKs yet — keeps the door open for fast bulk copy.
CREATE TABLE
Tables sorted by FK dependency. session_replication_role = replica defers FK checks. COPY ... FROM STDIN (FORMAT BINARY) per table.
session_replication_role = replica
COPY ... FROM STDIN (FORMAT BINARY)
Indexes, foreign keys, check constraints — with smart hash-fallback for oversized btrees. Anything that can't apply auto goes to a review workbook.
Triggers, procs, views, functions captured to _migration_meta.objects. Then row counts compared source vs target.
Beyond the migrated schema, a working inventory you can query.
-- See everything that needs a manual port: SELECT object_type, schema_name, object_name, parent_table, port_status FROM _migration_meta.unported ORDER BY object_type, schema_name, object_name; -- Mark one done after porting: UPDATE _migration_meta.objects SET port_status = 'DONE', pg_definition = $$ ... your PL/pgSQL here ... $$ WHERE schema_name = 'public' AND object_name = 'tr_audit_insert';
Why pick A1 Data Migrator over the usual one-off scripts or generic SaaS tools.
Download the free 30-day trial and migrate up to 1 GB. No credit card.
ينقل A1 Data Migrator قاعدة بيانات SQL Server كاملة إلى PostgreSQL أو MySQL أو SQLite أو MongoDB — البنية (schema) والبيانات والفهارس (indexes) والمفاتيح الخارجية (foreign keys)، مع فهرسة كاملة لجميع الـ triggers والـ stored procedures — عبر أربع مراحل واضحة. تم اختباره على 8.8 مليون سجل.
بدائل (fallbacks) ذكية للحالات التي تواجهك في قواعد البيانات الحقيقية، وفهرسة كاملة لكل ما تعذّر نقله تلقائياً، ومُحقّق جدير بثقتك.
أنواع T-SQL، والقيم الافتراضية (defaults) مثل (SYSUTCDATETIME، NEWID، CONVERT، identity)، والأعمدة المحسوبة، و check constraints، تُعاد كتابتها جميعاً لتلائم المحرك الهدف.
أسرع بنحو 10× من INSERT. تُؤجَّل فحوص المفاتيح الخارجية (FKs) أثناء التحميل، وتُعاد الـ identity sequences إلى MAX(id) بعد الانتهاء.
هل تجاوز فهرس btree الحدّ المسموح لحجم الصف؟ تتحوّل الفهارس single-column non-unique تلقائياً إلى USING HASH، ويُدرَج الباقي في workbook مع الخيارات المتاحة.
أكثر من 3,000 كائن T-SQL تُحفَظ في _migration_meta.objects مع الإبقاء على الكود الأصلي للنقل اليدوي.
يتحوّل dbo الخاص بـ SQL Server إلى public، وتبقى بقية الـ schemas ضمن نطاقاتها الخاصة. وتُعالَج الأسماء المتكررة عبر schemas مختلفة معالجة صحيحة.
يُقارَن COUNT_BIG(*) في المصدر بـ COUNT(*) في الهدف جدولاً بجدول، دون أي تسامح مع السجلات المفقودة.
معالج WPF لعمليات الترحيل لمرة واحدة، وأداة a1mig عبر سطر الأوامر للـ CI/CD. وكلاهما يعتمد على المحرك نفسه.
تُحدِّد أنت بيانات الاتصال، ولا تغادر أي بيانات شبكتك. ومكتبة الـ DLL موقّعة بـ HMAC، ويمكنك التحقق من سلامتها في أي وقت.
يُشغّلها المعالج بالترتيب، ويتيح لك سطر الأوامر تشغيل أي مرحلة على حدة.
إعادة إنشاء قاعدة البيانات الهدف، وتطبيق كل CREATE TABLE. دون فهارس أو مفاتيح خارجية بعد، لكي يكون التحميل سريعاً.
تُرتَّب الجداول حسب المفاتيح الخارجية. ويؤجِّل session_replication_role = replica فحوص المفاتيح الخارجية. ويُستخدم COPY ... FORMAT BINARY لكل جدول.
COPY ... FORMAT BINARY
الفهارس والمفاتيح الخارجية و check constraints — مع بديل hash للـ btrees الكبيرة. وكل ما تعذّر تطبيقه يُدرَج في review workbook.
تُحفَظ الـ triggers والـ procs والـ views والـ functions في _migration_meta.objects، ثم تُقارَن أعداد الصفوف بين المصدر والهدف.
نزِّل النسخة التجريبية المجانية (30 يوماً) وانقل حتى 1 جيجابايت. دون بطاقة ائتمان.
We use cookies to improve your experience.