אחסון DB של XBMC על MySQL של Synology - בעיה ופתרון

תוכנות ניהול מדיה: KODI, תוספים, XBMC, Media Portal, PLEX וכו'

מנהלים: מנהלי וידאו, מנהלי HTPC ועיבוד תמונה

שלח תגובה
Itsik_G
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1178
הצטרף: יולי 2005
מיקום: מרכז הארץ
נתן תודות: 38 פעמים
קיבל תודות: 81 פעמים

אחסון DB של XBMC על MySQL של Synology - בעיה ופתרון

לינק להודעה #1 

יש לי מחשב שעליו מותקן MySQL. על ה MySQL התקנתי DB של תוכנת XBMC כדי שאוכל לשתף את התוכן בצורה מרוכזת לכמה מחשבים.
לאחרונה קניתי NAS של Synology, דגם DS410. מכשיר ה NAS הזה מריץ כמה אפליקציות מובנות, ביניהן שרת WEB וגם DB של MySQL.
חשבתי שיהיה יעיל יותר להעביר את ה DB של XBMC אל ה NAS ולשחרר את התלות מהמחשב שמריץ אותו היום.
ניסיתי בכל מיני צורות לעשות את זה (EXPORT/IMPORT, בניה מחדש של ה DB) אבל בכל פעם יש לי בעיה עם העברית, ה DB נבנה אבל כל התוכן בעברית (כל התקצירים מ sratim) פשוט לא ניתן לצפיה.

*הפתרון בהמשך השרשור.
נערך לאחרונה על ידי Itsik_G ב 30/10/2011 15:09, נערך 2 פעמים בסך הכל.

eyal_123
סמל אישי של משתמש
חבר פעיל מאוד
חבר פעיל מאוד
הודעות: 394
הצטרף: יולי 2007
נתן תודות: 9 פעמים
קיבל תודות: 28 פעמים

לינק להודעה #2 

אתה משתמש ב charset הנכון לטבלאות שלך? (עברית או unicode)

Itsik_G
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1178
הצטרף: יולי 2005
מיקום: מרכז הארץ
נתן תודות: 38 פעמים
קיבל תודות: 81 פעמים

לינק להודעה #3 

טוב, המשכתי לשחק עם זה עוד קצת.
כשניסיתי לעשות EXPORT ל DB הקיים, כל העברית הפכה לג'יבריש.
החלטתי להתחיל נקי ואז גיליתי בעיות איטיות מוזרות:
ה XBMC עובד מאוד לאט מול ה DB שב NAS וממש נתקע כל פעם ל 20-30 שניות לפני שהוא מביא נתונים.
כדי לבדוק אם זו בעיית ביצועים של DB או רשת, התקנתי MySQL Workbench והרצתי ממנו שאילתות מול ה MySQL המקומי (בתחנה) ומול ה MySQL שמותקן ב NAS. השאילתות הסתיימו באותה מהירות (מילי-שניות).
כך שככל הנראה מדובר בבעיה ב XBMC. אני אמשיך לבדוק.

Itsik_G
סמל אישי של משתמש
חבר ותיק
חבר ותיק
הודעות: 1178
הצטרף: יולי 2005
מיקום: מרכז הארץ
נתן תודות: 38 פעמים
קיבל תודות: 81 פעמים

לינק להודעה #4 

לאחר תלאות רבות, נפתרו הבעיות. אז למי שיש NAS של Synology שמריץ MySQL ורוצה לשים עליו את ה DB של XBMC זו הדרך:
כדי לנהל את MySQL ב NAS, השתמשתי ב PHPMySQLAdmin. כנראה שלממשק ה Web הזה חסרים בקוד אלמנטים לטיפול או להצגה של עברית כי בכל פעם שניסיתי ליצור DB חדש (ולא משנה ה charcode)
הנתונים בעברית היו הופכים לג'יבריש ו XBMC לא היה מצליח לקרוא אותם נכון.
אתמול התקנתי את SQLBuddy כממשק ניהול. הרבה יותר פשוט, נקי וברור. נסיון ראשון ליצור DB עם charcode של UTF8 לא הצליח, אבל בנסיון השני יצרתי את ה DB כ- latin1 והעסק התחיל לעבוד.
בממשק הניהול העברית עדיין מופיעה כג'יבריש אבל XBMC מצליח לכתוב ולקרוא את העברית בצורה תקינה.

בשלב השני היתה איטיות בלתי נסבלת ותקיעות של XBMC בכל פעם שפונים ל DB.
מסתבר ש MySQL כברירת מחדל מנסה לעשות resolve לכתובת של ה client שפונה אליו בכל פניה ל DB. מאחר ובבית אין שרת DNS, ה resolve הזה נכשל ולכן מאיט את פעולת ה DB.
כדי לפתור את הבעיה צריך להוסיף פרמטר skip-name-resolve לקובץ הקונפיגורציה של MySQL שנקרא my.cnf.
ב Synology, הקובץ הזה לא קיים בברירת המחדל. צריך להתחבר ל NAS באמצעות telnet ולגשת לתיקייה:
/usr/syno/mysql/share/mysql/
בתיקיה הזו קיימים מספר קבצי קונפיגורציה לדוגמא שמותאמים לגדלים שונים של DB בהתאם לנפח הנתונים שאתם צריכים לאחסן: my-small.cnf, my-medium.cnf, my-huge.cnf וכו'.
אני הלכתי על האמצע ולקחתי את my-medium.cnf.
את הקובץ הזה יש להעתיק לתיקיית etc:
cp my-medium.cnf /etc/my.cnf
אח"כ לעבור לתיקיית etc ומשם להריץ פקודת עריכה:
vi my.cnf
יש לחפש את האיזור בקובץ שמתחיל ב [mysqld], ומתחתיו לעמוד על השורה skip-external-locking.
כאן יש ללחוץ על shift+o (כדי להוסיף שורה מעל) ולהקליד skip-name-resolve.
לוחצים ESC, ואז שומרים ויוצאים על ידי הקלדת : ואז wq ו- ENTER.

נשאר רק לאתחל את MySQL כדי שהשינוי ייכנס לתוקף. בשביל זה מריצים את הפקודה:
usr/syno/etc/rc.d/S21mysql.sh restart/

זהו, אפשר עכשיו להתחבר מ XBMC ולבדוק.

אגב, למי שמחזיק DB גם עבור מוזיקה ועדיין חווה איטיות, יש כמה פקודות שניתן להריץ כדי לשפר את הביצועים (יצירת אינדקסים).
יש פרטים בלינק הזה:
http://forum.xbmc.org/showpost.php?s=47 ... stcount=3

שלח תגובה

חזור אל “תוכנה - KODI”