קריסת MYSQL
-
התקנתי פורום של XENFORO על שרת UBUNTO 18.4
משום מה יש כל הזמן קריסות של הMYSQL. כשזה קורה אני עושה ריסטרס על הMYSQL והאפאצי' ואז זה עובד שוב עד לפעם הבאה (בין כמה דקות לכמה שעות).השגיאה
: Uncaught exception 'XF\Db\Exception' with message 'No such file or directory' in /var/www/html/forum/src/XF/Db/Mysqli/Adapter.php:160 Stack trace: #0 /var/www/html/forum/src/XF/Db/Mysqli/Adapter.php(28): XF\Db\Mysqli\Adapter->makeConnection(Array) #1 /var/www/html/forum/src/XF/Db/AbstractAdapter.php(60): XF\Db\Mysqli\Adapter->getConnection() #2 /var/www/html/forum/src/XF/Db/Mysqli/Adapter.php(113): XF\Db\AbstractAdapter->connect() #3 /var/www/html/forum/src/XF/Db/AbstractAdapter.php(516): XF\Db\Mysqli\Adapter->escapeString('options') #4 /var/www/html/forum/src/XF/Db/AbstractAdapter.php(494): XF\Db\AbstractAdapter->quote('options') #5 /var/www/html/forum/src/XF/DataRegistry.php(138): XF\Db\AbstractAdapter->quote(Array) #6 /var/www/html/forum/src/XF/DataRegistry.php(83): XF\DataRegistry->readFromDb(Array, Array) #7 /var/www/html/forum/src/XF/DataRegistry.php(226): XF\DataRegistry->get('options') #8 /var/www/html/forum/src/XF/App.php(1644): XF\DataRegistry->offsetGet('options') #9 /var/www/html/forum/src/XF/Cont in /var/www/html/forum/src/XF/Db/Mysqli/Adapter.php on line 160
התמיכה של הפורום טוענים על השגיאה הזו שזה לא באחריותם כיון שזה בעיה טכנית של חוסר גישה לmysql והפורום שלהם עובד טוב. מה שנכון נכון.
תכלס מה יכול להיות הסיבה, או מה עושים לפתור את זה.
תודה. -
root@server:/var/www/html/forum# mysqlcheck -uroot -p --auto-repair --optimize --all-databases Enter password: mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) when trying to connect root@server:/var/www/html/forum# mysqlcheck -u root -p --auto-repair --optimize --all-databases Enter password: mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) when trying to connect root@server:/var/www/html/forum# service mysql restart sh: 0: getcwd() failed: No such file or directory Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details. root@server:/var/www/html/forum# service mysql stop sh: 0: getcwd() failed: No such file or directory root@server:/var/www/html/forum# service mysql restart sh: 0: getcwd() failed: No such file or directory Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details. root@server:/var/www/html/forum# service mysql start sh: 0: getcwd() failed: No such file or directory Job for mysql.service failed because the control process exited with error code. See "systemctl status mysql.service" and "journalctl -xe" for details. root@server:/var/www/html/forum#
-
● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled) Active: failed (Result: exit-code) since Thu 2019-12-26 01:31:51 IST; 8h ago Process: 20846 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid (code=exited, status=1/FAILURE) Process: 20824 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS) Main PID: 19274 (code=killed, signal=KILL) Dec 26 01:31:50 server systemd[1]: mysql.service: Failed with result 'exit-code'. Dec 26 01:31:50 server systemd[1]: Failed to start MySQL Community Server. Dec 26 01:31:51 server systemd[1]: mysql.service: Service hold-off time over, scheduling restart. Dec 26 01:31:51 server systemd[1]: mysql.service: Scheduled restart job, restart counter is at 5. Dec 26 01:31:51 server systemd[1]: Stopped MySQL Community Server. Dec 26 01:31:51 server systemd[1]: mysql.service: Start request repeated too quickly. Dec 26 01:31:51 server systemd[1]: mysql.service: Failed with result 'exit-code'. Dec 26 01:31:51 server systemd[1]: Failed to start MySQL Community Server.
-
@yossiz אמר בקריסת MYSQL:
מה הכוונה קריסות? התהליך באמת קורס? (אני רוצה להאמין שקריסה של DB זה מקרה נדיר מאוד...)
בהחלט יש כזה מושג.
לפני שידעתי מה זה אינדקס..
היה לי טבלה לא זוכר באיזה שלב זה היה כ400K או כ14M שורות.
השרת היה מבצע בדיקה האם נתון מסויים נמצא בטבלה, הבדיקה הייתה חוזרת בכל שלב בהקשה של המשתמשים, וכאשר היו לי הרבה מידי משתמשים בו זמנית והבדיקה הייתה מבוצעת כל הזמן שוב ושוב על כזו טבלה גדולה, התוצאה הייתה שהחריגות גדולות השרת היה מאתחל את הmysql.
יש כאן תמונה שמראה מה קרה ברגע שאינדקסתי את הטבלה