גיבוי SQL (.sql)

ISO/IEC תקן

Structured Query Language Script (SQL) הוא פורמט מסד הנתונים היחסי האוניברסלי המכיל הצהרות DDL הצהרתיות לבניית טבלאות מסד נתונים והצהרות DML INSERT לאכלוס נתונים.

המר SQLITE ל-SQL

ממיר חינמי מ-SQLITE ל-SQL פועל בדפדפן. המר קבצים באופן מיידי במכשיר שלך.

בדיקה ומטא-דאטה

מערכות הפעלה ומנתחי קבצים מזהים קבצי SQL על ידי בדיקת רצף הבייטים הבינארי הראשוני:

בחר או גרור קבצים לכאן

המרה פרטית ב-100% בתוך הדפדפן - הקבצים לעולם אינם עוזבים את המכשיר שלך

או הדבק Ctrl+V
הבטחת פרטיות ללא העברה ברשת: 0 בייט הועלו לשרתים חיצוניים. כל העיבוד מתבצע באופן מקומי בארגז החול של הדפדפן שלך.

חתימת כותרת ברמת הבייט (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 (נוכחי)CSVJSONSQLITE
שימור סכימהסכימה מלאה (טבלאות, טיפוסים, מפתחות זרים)שמות עמודות כותרת בלבדמבנה מסמך מזהה את עצמוקובץ מסד נתונים בינארי שלם
מודל ביצועסקריפט DDL/DML בר ביצוענתוני שורה-עמודה פסיבייםעץ מסמכים פסיבישאילתת עץ B בינארית ישירה
תקינהתקן ISO/IEC 9075RFC 4180RFC 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).

השיטות המומלצות להגנה:

היסטוריה ואבני דרך

2023שוחרר ISO/IEC 9075:2023, המשלב שאילתות גרף מאפיינים (SQL/PGQ) ב-SQL הסטנדרטי.
1986ANSI ו-ISO מאמצים את SQL כתקן הרשמי עבור מערכות ניהול מסדי נתונים יחסיים.
1974דונלד צ'מברלין וריימונד בויס מפתחים את SEQUEL במחקר של IBM על בסיס המודל היחסי של אדגר פ. קוד (Edgar F. Codd).

יתרונות מרכזיים

  • התקן העולמי הבלתי מעורער לאחסון נתונים ארגוניים: תואם ל-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?

למערכות מסדי נתונים שונות יש הבדלי ניב קנייניים (כגון סוגי נתונים ובריחת מרכאות). עליך להמיר תחביר הספציפי לניב בעת מעבר בין מנועי מסדי נתונים.