הדפסת פלט MySQL לקובץ

שימוש בפונקצית tee להדפסת פלט הקונסולה לקובץ

מאמר זה מיועד למתכנתים המשתמשים ב-MySQL על שרת לינוקס.

לעיתים יש צורך בהדפסת פלט של MySQL לקובץ כלשהו. כמו למשל הדפסה של SHOW PROCESS או אפילו שאילתה זו או אחרת. יש לא מעט סיבות שגורמות לנו להדפיס את הפלט לקובץ – הדגמה של שאילתא מסוימת שנותנת פלט בעייתי. הדפסה של פרוססים שונים או של שאילתות בעייתיות במקרה שהלוג לא עובד. בעצם כל פלט שהגודל שלו גדול מדי ל-Copy&Paste.

על מנת לעשות את זה, אנו נשתמש בפקודת tee בשורת ה-MySQL.

ראשית אנו נגדיר קובץ במערכת שלתוכו הפלט יודפס. את זה אנו עושים באמצעות פקודת touch שיוצרת קובץ ריק:


touch mysql-output.log

אחרי כן, אנו נכנס ל-MySQL שלנו. אם הגדרתם את ה-my.cnf שלכם כמו שצריך, אפשר לעשות את זה באמצעות הקלדת mysql. במידה ולא, תצטרכו להקליד:


mysql -uUSERNAME -pPASSWORD

עכשיו נשתמש בפקודת tee על מנת להגדיר לאן אנו נבצע logging. מאד חשוב להקליד את הנתיב במדויק. במקרה הזה שמרתי את הקובץ בספרית הבית שלי (ran)


tee /home/ran/mysql-output.log

במידה והכל תקין, תופיע השורה הבאה:


Logging to file '/home/ran/mysql-output.log'

על מנת לבדוק שהלוגינג תקין, אנו נקליד שוב את הפקודה tee, אם יש לוגינג, אז נראה את השורה הבאה:


Currently logging to file '/home/ran/mysql-output.log'

אם נקליד פקודות ב-MySQL, נוכל לראות לאחר שנצא את כל מה שהקלדנו מופיע בקובץ.

אם נרצה לחזור ל-MySQL ולהמשיך את ההקלדה, אין בעיה, פקודת tee לא דורסת את הקובץ אלא מוסיפה לו.

פוסטים נוספים שכדאי לקרוא

בינה מלאכותית

איך אייג׳נט מבוסס LLM עובד?

הסבר בסיסי על איך אייג׳נט עם כלים עובד ואפילו איך בונים אחד מאפס עם פייתון בלבד.

יסודות בתכנות

Decoupling ו-Coupling בהנדסת תוכנה

הסבר על מושג מרכזי בהנדסת תוכנה ובכתיבת קוד שכדאי להכיר במיוחד כשמנחים LLM בכתיבת קוד.

בינה מלאכותית

hooks של LLMים שעורכים קוד

הסבר על הוקים: הפעלה אוטומטית של פקודות שקיימת בכל האייג׳נטים שעורכים קוד (כלומר קורסור, קלוד קוד, קודקס וחבריהם) שיכולה מאד לסייע בפיתוח.

גלילה לראש העמוד