גיבוי SQL (.sql)
ISO/IEC תקןStructured Query Language Script (SQL) הוא פורמט מסד הנתונים היחסי האוניברסלי המכיל הצהרות DDL הצהרתיות לבניית טבלאות מסד נתונים והצהרות DML INSERT לאכלוס נתונים.
המר SQLITE ל-SQL
ממיר חינמי מ-SQLITE ל-SQL פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.
בדיקה ומטא-דאטה
מערכות הפעלה ומנתחי קבצים מזהים קבצי SQL על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת כותרת ברמת הבייט (Magic Bytes)
מערכות הפעלה ומנתחי קבצים מזהים קבצי SQL על ידי בדיקת רצף הבייטים הבינארי הראשוני:
חתימת HEX (היסט 0):
2D 2D 20 / 43 52 45 41 54 45ייצוג ASCII: -- / CREATE
תקינה: ISO/IEC 9075:2023 / ANSI SQL Standard
מפרט טכני
| ארכיטקטורת מעטפת | Unicode plain text script containing Data Definition Language (DDL) and Data Manipulation Language (DML) statements |
| דחיסה | Uncompressed plaintext (frequently compressed as .sql.gz or .sql.zst) |
| סדר בתים (Endianness) | UTF-8 / Unicode text stream |
| מרחבי צבע | N/A (Database Script) |
| ערוצים ומבנה | Relational schema definitions (tables, views, indexes, foreign keys) and data INSERT rows |
| ממדים מרביים | Unbounded text length (supports multi-terabyte database dumps) |
| שקיפות | None |
| הזרמה ופרוגרסיביות | Statement-by-statement transactional streaming execution |
מטריצת השוואה טכנית: SQL מול מתחרים
| תכונה טכנית | SQL (נוכחי) | CSV | JSON | SQLITE |
|---|---|---|---|---|
| שימור סכימה | סכימה מלאה (טבלאות, טיפוסים, מפתחות זרים) | שמות עמודות כותרת בלבד | מבנה מסמך מזהה את עצמו | קובץ מסד נתונים בינארי שלם |
| מודל ביצוע | סקריפט DDL/DML בר ביצוע | נתוני שורה-עמודה פסיביים | עץ מסמכים פסיבי | שאילתת עץ B בינארית ישירה |
| תקינה | תקן ISO/IEC 9075 | RFC 4180 | RFC 8259 | פורמט קובץ פתוח של SQLite |
| קשרי נתונים | אילוצי מפתח זר מלאים | טבלאי שטוח (ללא קשרים) | אובייקטי אב-בן מקוננים | אילוצים יחסיים מלאים |
מצבי שיחשות נפוצים ומדריך שחזור הקסדצימלי (Hex)
ייבוא מסד הנתונים נכשל עם 'ERROR: syntax error at or near...'.
גורם שורש: אי-התאמה של ניב SQL (למשל ייבוא גיבוב תגים אחוריים של MySQL לתוך PostgreSQL) או מרכאות בודדות שלא עברו בריחה.
התאוששות: המר וטהר את תחבירת הניב באמצעות File2File Database Transpiler.
ניתוח אבטחה ווקטורי התקפה על מנתחים (Parsers)
הפעלת סקריפטים של SQL שאינם מהימנים עלולה לגרום להזרקת SQL קטסטרופלית, כתיבת קבצים שרירותית, או הסלמת הרשאות ניהוליות.
ווקטורי תקיפה ידועים
- הזרקת SQL (SQLi) המפעילה פקודות ניהוליות לא מכוונות (למשל DROP TABLE, GRANT ALL).
- קריאה/כתיבה שרירותית של קובצי שרת באמצעות 'COPY ... FROM PROGRAM' או 'LOAD DATA INFILE'.
- מניעת שירות באמצעות ביטויי טבלה נפוצים רקורסיביים שאינם באינדקס (CTEs).
השיטות המומלצות להגנה:
היסטוריה ואבני דרך
יתרונות מרכזיים
- התקן העולמי הבלתי מעורער לאחסון נתונים ארגוניים: תואם ל-PostgreSQL, MySQL, SQLite, Oracle ו-SQL Server.
- נאמנות יחסית מלאה: משחזר טבלאות, מפתחות ראשיים, מפתחות זרים, אילוצים ואינדקסים לצד נתונים.
- ביצוע עסקאות (טראנזקציות): ניתן להריץ הצהרות בתוך עסקאות (BEGIN...COMMIT) כדי להבטיח שחזור מסד נתונים אטומי.
מגבלות טכניות וחסרונות
- אי-התאמות בין ניבים: הבדלי תחביר עדינים (למשל AUTO_INCREMENT לעומת SERIAL לעומת AUTOINCREMENT) דורשים המרה בין מנועי מסדי נתונים.
- עומס טקסט עצום: הצהרות SQL INSERT פשוטות לוקחות נפח גדול משמעותית מאחסון מסד נתונים בינארי.
- זמני ייבוא איטיים על גיבובי מסדי נתונים ענקיים מרובי גיגה-בייט ללא השבתת בנייה מחדש של אינדקסים.
עובדות טכניות מעניינות
- SQL נקראה במקור 'SEQUEL' (Structured English Query Language), אך שמהקוצר ל-SQL עקב סכסוך סימנים מסחריים עם חברת המטוסים Hawker Siddeley.
- התקן הרשמי של ISO מבטא זאת כאותיות נפרדות 'S-Q-L', אך מיליוני מפתחים מבטאים זאת בעל פה כ-'sequel'.
- SQLite, הפועל על תחבירת SQL, מוערך להיות מותקן על למעלה מטריליון מכשירים ברחבי העולם.
שאלות טכניות נפוצות
מה זה קובץ .sql?
קובץ .sql הוא סקריפט טקסט פשוט המכיל פקודות SQL היוצרות טבלאות, קובעות קשרים ומכניסות שורות נתונים למסד נתונים רלציוני.
האם אני יכול להמיר קובצי גיבוי (dump) של SQL ל-CSV או JSON?
כן. File2File.app יכול לנתח קובצי גיבוי של מסד נתונים מסוג .sql ולייצא את הטבלאות ישירות לגיליונות אלקטרוניים נקיים מסוג CSV או למסמכי JSON מובנים.
למה קובץ ה-.sql של MySQL שלי לא עובד ב-PostgreSQL?
למערכות מסדי נתונים שונות יש הבדלי ניב קנייניים (כגון סוגי נתונים ובריחת מרכאות). עליך להמיר תחביר הספציפי לניב בעת מעבר בין מנועי מסדי נתונים.
זוגות המרה קשורים ל-SQL
המרת קובץ מסד נתונים מסוג SQLite לסקריפט טקסט של SQL Dump מתמירה מסד נתונים בינארי לפקודות טקסט קריאות לצורך הגירה קלה של מסדי נתונים וייבוא לשרתים.
המרת סקריפט טקסטואלי של גיבוי SQL לפורמט JSON הופכת טבלאות מסד נתונים יחסי נוקשות לאובייקטים גמישים ומקוננים עבור אפליקציות מודרניות.
המרת סקריפטים של גיבוי מסדי נתונים רלציוניים לגיליונות נתונים שטוחים לצורך ניתוח נתונים והפקת דוחות בקלות.
המרת גיבוי מסד נתונים בינארי לקובץ פקודות SQL טקסטואלי מאפשרת להעביר טבלאות ונתונים בין מנועי מסדי נתונים שונים לחלוטין.
המרת סקריפט SQL לא מכווץ בטקסט פשוט לקובץ גיבוי מקורי ומותאם של מסד נתונים מקטינה את נפח האחסון ומאיצה את זמני השחזור בשרת.