phpMyAdmin לא מתחבר לsocket

phpMyAdmin לא מתחבר לsocket

שלום
אני מריץ על לינוקס פדורה 2 שרת2 Apache עם תמיכה ב-PHP 4.3.9 ועם mysql 3.23.58 . כאשר אני מתחבר דרך הטרמינל ל-mysql הכל עובד יפה ואני יכול לנהל את המסד. אני הורדתי את phpMyAdmin ונכתבה לי השגיאה הבאה כאשר הפעלתי את index.php דרך הדפדפן (כמובן בשימוש הכתובת הלוקאלית: 127.0.0.1). איך אני פותר זאת ?
 
השגיאה ../images/Emo9.gif

#2002 - Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (13)​
 

Jonatan 44

New member
אוקי הינה התשובה:

תיכנס לתיקית ההגדרות של ה apache שלך, אצלי זה ב /etc/apache, אמור להיות לך שם הקובץ php.ini, שזה קובת ההגדרות של PHP, תעשה su, זה יתן לך הרשאות שליטה מלאות על המכונה, תעשה mcedit/vi/nano/pico/ או כל עורך שבא לך ובעזרתו תיפתח את ה php.ini (שוב כ root, הרי [ואני מאוד מקווה] שמשתמש רגיל לא יכול לערוך אותו),תחפש את שורה669, או יותר נכון את השורה שבה מופיעה לך "mysql.default_socket", אני מניח שהערך של זה הוא "/tmp/mysql.sock ", אם לא אז לא חשוב, העיקר שתיזכור אותו (עדיף שתגבה את ה php.ini ליפני שאתה עורך אותו), תשנה את זה ל "mysql.default_socket = /var/lib/mysql/mysql.sock ", תעשה ריסט ל apache, וזה אמור לעבוד. בהצלחה!
 

Jonatan 44

New member
---->

טוב אני אצטרך לישאול אותך כמה שאלות כדאי לחקור לעומק: גירסה apache גירסת php גירסת mysql איפה ה mysql.sock נימצאה ? (חפש בעזרת locate על / כדאי לסרוק את כל המחשב) ובעזרת כל אלא אני אוכל לענות לך יותר לעיניין. בנתיים, תריץ את הסקריפט הזה כדאי שניראה יותר מידע:
<?php $host="localhost"; $user="root"; $password=""; //MySQL connecting chack. if(mysql_connect($host,$user,$password) == true) { echo "MySQL connected."; $conn=mysql_connect($host,$user,$password); //MySQL open data base chack. if(mysql_select_db("test", $conn) == true) { echo "I am able to open data base."; } else { echo "I am NOT able to open data base"; } mysql_close($conn); } else { echo "MySQL connecting error:".mysql_error()."."; } ?>​
אז מה שהסקריפט הזה עושה הוא בהתחלה פותח חיבור ל mysql server (אם ערכתה את השם משתמש או הסיסמה של ה mysql תשנה אותם במשתנים) אם הוא הצליח הוא בוחר database, ה database לניסויים שבא כברירת מחדל אם ה mysql הוא "test" (בבסיס נתונים בשם mysql אל תיגע), ואותו אני מנסה ליפתוח. תודיעה לי אם השלבים הצליחו. בהצלחה! נ.ב. את הסקריפט כתבתי הרגע, לא הרצתי אותו זה יכול להיות שהוא מכיל בעיות.
 
פרטים בהודעה הראשית בשרשור

mysql.sock המיקום שלו נמצא בהודעת השגיאה אני כבר הרצתי סקריפט קטן שבסה"כ מתחבר לשרת (בלי להתחבר ל-DB וכן הלאה) והשגיאה קפצה לי. APACHE 2 PHP 4.3.9 MYSQL 3.23.58 /var/lib/mysql/mysql.sock
 

Jonatan 44

New member
אוקי

אני לא בטוח, אבל אני רוצה שתנסה. אני חושב שבגירסה של ה MySQL שלך ישנה מידי, נסה את גירסה 2.2 של phpMyAdmin http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.2.7-pl1.tar.bz2?download עוד משהוא, מה זאות אומרת? אתה אפילו לא מדבר בסקריפט מסויים אם ה MySQL שלך והוא נותן לך שגיאה?
 
הכוונה שהסקריפט רק מתחבר

לשרת ה-mysql והוא מקפיץ שגיאה לא מתקשר אח"כ עם DB מסויים. עשיתי את הסקריפט שמופיע בwww.php.net/mysql_connect אגב, אחלה ממשק עשו לזה - עבדתי עליו קצת דרך WIN
 

Jonatan 44

New member
--------->

אני חושב שצדקתה, חשבתי בהצלחה שהבעייה היא בphpMyAdmin, כניראה שלא. הבעייה היא ב MySQL, ולאחר סיור ב Google, אתה צריך לעשות: chown -R mysql /var/lib/mysql/* chgrp daemon /var/lib/mysql/* כ root. כניראה שהחיבלה שבא אם ההפצה דפוקה, צריך לחפש ב bugzilla של פדורה. בהצלחה!
 
עדיין לא ../images/Emo4.gif זה נשאר אותו דבר

אני אתקין את גרסא 4.1 ונראה
אבל מוזר שדרך הטרמינל אני כן מצליח להתחבר ודרך ה-PHP לא
 
למעלה