שדרוג לגרסת MySQL 5.5 על מערכת הפעלה Ubuntu
שדרוג לגרסת MySQL 5.5 על מערכת הפעלה Ubuntu
הקדמה
מסמך זה יתאר בפירוט, איך לשדרג את סביבת Ubuntu מ MySQL 5.x ל MySQL 5.5.
נכון להיום, גרסאות MySQL, המופצות עם Ubuntu Aptitude הינם 5.1, לכן תהליך ההתקנה והשדרוג הם ידניים.
הוראות ההתקנה נרשמו בלשון זכר, למען הנוחות.
ביצוע השדרוג
סעיף זה יתאר בפירוט את הפעולות הדרושות על מנת לשדרג את סביבת ה-master וה-slave, בשרת Ubuntu לגרסת 5.5.
סדר ההליך, הוא לשדרג את שרת ה-slave ראשון, ולאחר מכן לשדרג את שרת ה-master.
דחיסה ב-InnoDB
הנה לינק למאמר מעולה של מארק קלאהאן מ-facebook בנושא דחיסה במנוע InnoDB:
http://planet.mysql.com/entry/?id=29014
את אותו מאמר, ניתן למצוא גם בדף ה-facebook של MySQL@Facebook:
מבוא ל-MySQL Cluster
במסד נתונים MySQL הקלאסי, שורות של נתונים מסודרות בטורים בתוך טבלאות. טבלאות אלה מאוחסנות על קבצים בדיסק של שרת מסד הנתונים. אם השרת מתרסק, השירות יורד. אם ישנו עומס גדול מדי, הפתרון היחיד הוא להפוך את השרת לחזק יותר.
Read the rest of this entry »
רפליקציה מושהית-זמן (Time-Delayed)
כפי שפירסמתי בפוסט הקודם, גירסת 5.6.2 של MySQL שוחררה עם feature מאוד חשוב – Time Delayed Replication.
הרעיון (וגם הביצוע) פשוט מאוד. אם משתמש מבצע טעות על שרת ה-master – כגון drop של טבלאות/מחיקת נתונים וכו’, ניתן לשחזר את המצב על ידי שימוש בנתונים, המוחזקים על אחד שרתי ה-slave. הבעיה היא ששרת ה-slave עסוק בניסיון לשמור על סנכרון עם שרת ה-master, ומן הסתם המידע/הטבלאות יעלמו, לפני שתהיה אפשרות לגשת אליהם.
Feature זה, מספק ל-DBA את האפשרות לבצע עיכוב ברפליקציה, על מנת שתהיה אפשרות לנתק את שרת ה-slave לפני שיבצע את הטעות.
כדי להבין איך זה מיושם, אסקור בקצרה איך מיושמת רפליקציה ב-MySQL.
טריק קטן להעתקת מידע
הבוקר נתקלתי בבעיה קטנה.
הייתי צריך להעביר מידע מטבלה מאוד גדולה ל-database אחר.
אולם, לא היה לי מספיק מקום על הדיסק, על מנת ליצור את קובץ ה-output.
כידוע, mysqldump מוציא את מבנה ונתוני ה-database/טבלאות לקובץ, המכיל פקודות INSERT.
התשמשתי בטריק קטן, על מנת לעקוף את הבעיה: שימוש ב-PIPE:
mysqldump –urotem –ppassword –h 192.168.142.1 –lock-tables=FALSE –compact=TRUE –no-create-info prod_db huge_table | mysql –urotem –ppassword –Ddev_db
מה חדש ב-MySQL 5.6?
מה חדש ב- MySQL 5.6?
גרסה MySQL 5.6, הנמצאת בפיתוח, המתחייבת לספק ביצועים טובים יותר, שחררה Milestone חמישי (MySQL 5.6.2 m5) הכוללת את התכונות הבאות:
- שינויים ב-Optimizer עבור ייעול ביצועי שאילתות
- שיפורים במנוע InnoDB לטובת עיבוד מסיבי של טראנזאקציות (throughput)
- API חדש עבור memcached (דומה ל-NoSQL)
- שיפורים במנגנוני partitioning עבור טבלאות ענק
- שיפורים במנוע הרפליקציה
- ניטור ביצועים משופר ע”י הרחבת הנתונים ב-PERFORMANCE_SCHEMA
הסברים ופרמטרים של רפליקציה ב-MySQL
הסברים ופרמטרים של רפליקציה:
על מנת להקים רפליקציה ב-MySQL, ישנם מספר פרמטרים, אותם יש להגדיר בשני שרתי ה-MySQL.
השוואה של פורמט רפליקציה ב-MySQL
מסד הנתונים MySQL, כולל אפשרות לרפליקציה של נתונים בין מסדיMySQL שונים.
שכפול הנתונים מתבצע משרת MySQL אחד (master) לאחד או יותר שרתי MySQL (slave).
שכפול הנתונים ב- MySQL הוא חד כיווני ואסינכרוני.
Tungesten Replicator 2.0 is out !
חברת Continuent שחררה את Tungsten Replicator 2.0, מנוע רפליקציה בקוד פתוח, בעל סט תכונות מתקדמות, שיכול להחליף את מנוע הרפליקציה של MySQL.
למנוע Tungsten יתרונות רבים:
1. Availability – היכולת לבצע failover באופן אוטומטי לשרת ה-slave, במקרה של בעיה