לדלג לתוכן

MySQL/מבוא

מתוך ויקיספר, אוסף הספרים והמדריכים החופשי

מה זה SQL?

[עריכה]

להקדמה כללית יותר עיין בSQL Wikibook.

Structured Query Language היא שפת דור שלישי לעבודה עם מסדי נתונים יחסיים. בהיותה שפת 3G היא קרובה יותר לשפה האנושית מאשר שפת מכונה ולכן קלה יותר להבנה ולעבודה איתה.

  • ד"ר E. F. Ted Codd שעבד עבור IBM תיאר מודל יחסי למסד נתונים ב-1970.
  • בשנת 1992, ANSI (מכון התקנים הלאומי האמריקאי), גוף הקודקוד, תיקנן את רוב התחביר הבסיסי.
  • זה נקרא SQL 92 ורוב מסדי הנתונים (כמו Oracle, MySQL, Sybase וכו') מיישמים תת-קבוצה של התקן (והרחבות קנייניות שהופכות אותם לעתים קרובות לבלתי תואמים).

למה MySQL?

[עריכה]
  • חינם כמו בחופש - שוחרר עם רישיון GPL גרסה 2 (אם כי ניתן לקנות רישיון אחר מאורקל, ראה להלן)
  • בחינם!
  • תמיכה - הדרכות מקוונות, פורומים, רשימת תפוצה (lists.mysql.com), חוזי תמיכה בתשלום.
  • מהירות - אחד ממאגרי המידע המהירים ביותר שקיימים. ([1])
  • פונקציונליות - תומך ברוב פקודות ANSI SQL.
  • קלות שימוש - פחות צורך בהכשרה / הסבה מחדש.
  • ניידות - ייבוא/ייצוא בקלות מאקסל וממסדי נתונים אחרים
  • ניתן להרחבה - שימושי עבור מסדי נתונים קטנים כגדולים המכילים מיליארדי רשומות וטרה-בייט של נתונים במאות אלפי טבלאות.
  • בקרת הרשאות - הענקה או ביטול סלקטיבית של הרשאות למשתמשים.

רישיון MySQL

[עריכה]

MySQL זמין תחת סכימת רישוי כפול:

  1. תחת הרישיון הציבורי הכללי של GNU, גרסה 2, ("או מאוחר יותר" מותר בגרסאות שפורסמו לפני 2007): זהו רישיון תוכנה חינם (כמו בחופש), copyleft המאפשר לך להשתמש ב-MySQL למטרות מסחריות ולא מסחריות ביישום שלך, כל עוד היישום שלך משוחרר תחת GNU GPL. יש גם "FLOSS חריג" המאפשר בעצם ליישומים שאינם מבוססי GPL אלא בחינם (כגון שפת התכנות PHP, תחת רישיון PHP) להתחבר ל-MySQL שרת. החריג מפרט קבוצה של רישיונות תוכנה חינמיים וקוד פתוח שניתן להשתמש בהם בנוסף ל-GNU GPL עבור היישום החינמי התלוי ב-MySQL שלך.
  2. מה שנקרא "מסחרי" [1], רישיון בתשלום, כלומר, רישיון שבו MySQL מעניק לך את הזכות לשלב את MySQL עם יישום שאינו FLOSS שאתה מפיץ מחדש מחוץ לארגון שלך. [2]

MySQL ומזלגותיו

[עריכה]

MySQL היא תוכנה חופשית, כך שקיימים כמה מזלגות ובניינים לא רשמיים המספקים תרומות מהקהילה.

MariaDB

[עריכה]

בשנת 2008 Sun Microsystems רכשה את MySQL, כאשר Sun נרכשה בעצמה מאוחר יותר על ידי אורקל, בשנת 2010. לאחר הרכישה, תהליך הפיתוח השתנה. הצוות החל לשחרר גרסאות MySQL חדשות בתדירות נמוכה יותר, כך שהקוד החדש נבדק פחות. היו גם פחות תרומות מהקהילה.

בשנת 2009 מונטי ווידניוס, מייסד MySQL, עזב את החברה ויצר חברה חדשה בשם The Monty Program. הוא התחיל מזלג חדש בשם MariaDB. היקפים של MariaDB:

  • ייבא את כל הקוד החדש שיתווסף לסניף MySQL הראשי, אך שפר אותו כדי להפוך אותו ליציב יותר;
  • נקה את קוד MySQL;
  • הוסף תרומות מהקהילה (תוספים חדשים, תכונות חדשות);
  • לפתח את מנוע האחסון Aria, שנקרא בעבר מריה;
  • שיפור הביצועים;
  • הוספת תכונות חדשות לשרת.

הרישיון הוא GNU GPLv2 (הועבר בירושה מ-MySQL).

הפלטפורמה העיקרית של MariaDB היא GNU/Linux, אך פועלת גם על מערכת קניינית אחת. מנוע האחסון הבא נוספה:

  • אריה (משמש גם לשולחנות פנימיים)
  • PBXT
  • XtraDB
  • FederatedX
  • SphinxSE
  • OQGRAPH
  • ייתכן שיתווספו אחרים בעתיד.

טפטוף

[עריכה]

בשנת 2008 בריאן אקר, האדריכל הראשי של MySQL, עזב את הפרויקט כדי להתחיל מזלג חדש בשם Drizzle. בעוד שאורקל מימנה בתחילה את הפרויקט, דריזל ממומן כעת על ידי Rackspace. המאפיינים שלו הם:

  • רק חלק קטן מקוד MySQL שרד במזלג הזה, השאר הוסר: רק תכונות חיוניות מיושמות בשרת ה-Drizzle;
  • הקוד ששרד נוקה;
  • טפטוף הוא מודולרי: תכונות רבות מיושמות או יכולות להיות מיושמות כפלאגינים;
  • התוכנה מותאמת למכונות ריבוי מעבדים ומכונות מרובות ליבות 64 סיביות;
  • רק מערכות GNU/Linux ו-UNIX נתמכות.

עדיין אין מהדורות פומביות של המזלג הזה. הרישיון העיקרי שלו יהיה GNU GPLv2 (הועבר בירושה מ-MySQL), אך במידת האפשר רישיון BSD מוחל.

הדלתא שלנו

[עריכה]

OurDelta הוא מזלג נוסף, מתוחזק על ידי Open Query. הסניף הראשון, בעל מספר 5.0, מבוסס על MySQL 5.0. סניף 5.1 מבוסס על MariaDB. OurDelta כולל כמה תיקונים שפותחו על ידי הקהילה או על ידי צדדים שלישיים. OurDelta מספק חבילות עבור כמה הפצות GNU/Linux: Debian, Ubuntu, Red Hat/CentOS. הוא אינו זמין עבור מערכות אחרות, אך קוד המקור זמין באופן חופשי.

שרת Percona

[עריכה]

Percona Server הוא מזלג MySQL שמתוחזק על ידי Percona. הוא מספק את ExtraDB Storage Engine, שהוא מזלג של InnoDB, וכמה תיקונים המשפרים בעיקר את הביצועים.

  1. ^ לכנות אותו "מסחרי" הוא מטעה, מכיוון שניתן להשתמש ב-GNU GPL בפרויקטים מסחריים (אך שאינם קנייניים).
  2. ^ פרויקטים קנייניים עדיין יכולים להתחבר לשרת MySQL מבלי לרכוש רישיון זה על ידי שימוש בגרסאות ישנות של ספריות החיבור ללקוח MySQL (תחת הרישיון GNU Lesser General Public License). עם זאת, ספריות אלו אינן יכולות להתחבר לגרסאות החדשות ביותר של שרת MySQL.