Назад | Перейти на главную страницу

Сокет MySQL исчезает

Я использую Ubuntu 16.04 LTS с сервером MySQL для MediaWiki 1.30.0 вместе с Apache2 и PHP7.0. Установка прошла успешно, мне удалось все запустить. Затем я начинаю устанавливать расширения для MediaWiki. Все нормально, пока я не установлю расширение Virtual Editor. Это требует, чтобы у меня были установлены и Parsoid, и RESTBase. Поэтому я устанавливаю их вместе с Virtual Editor. Затем я проверяю свою вики и вижу это сообщение (имя базы данных вики - «библия»):

Сожалею! Этот сайт испытывает технические трудности.

Попробуйте подождать несколько минут и перезагрузить.

(Невозможно получить доступ к базе данных: неизвестная база данных 'bible' (localhost))

Обратная трассировка:

# 0 /var/www/html/w/includes/libs/rdbms/loadbalancer/LoadBalancer.php(1028): Wikimedia \ Rdbms \ Database-> reportConnectionError ('Неизвестные базы данных ...')

# 1 /var/www/html/w/includes/libs/rdbms/loadbalancer/LoadBalancer.php(670): Wikimedia \ Rdbms \ LoadBalancer-> reportConnectionError ()

# 2 /var/www/html/w/includes/GlobalFunctions.php(2858): Wikimedia \ Rdbms \ LoadBalancer-> getConnection (0, массив, ложь)

# 3 /var/www/html/w/includes/user/User.php(493): wfGetDB (-1)

# 4 /var/www/html/w/includes/libs/objectcache/WANObjectCache.php(892): Пользователь -> {closure} (false, 3600, Array, NULL)

# 5 /var/www/html/w/includes/libs/objectcache/WANObjectCache.php(1012): WANObjectCache -> {closure} (ложь, 3600, массив, NULL)

# 6 /var/www/html/w/includes/libs/objectcache/WANObjectCache.php(897): WANObjectCache-> doGetWithSetCallback ('global: user: id: ...', 3600, Object (Closure), Array, НОЛЬ)

# 7 /var/www/html/w/includes/user/User.php(520): WANObjectCache-> getWithSetCallback ('global: user: id: ...', 3600, Object (Closure), Array)

# 8 /var/www/html/w/includes/user/User.php(441): Пользователь-> loadFromCache ()

# 9 /var/www/html/w/includes/user/User.php(405): User-> loadFromId (0)

# 10 /var/www/html/w/includes/session/UserInfo.php(88): Пользователь-> load ()

# 11 /var/www/html/w/includes/session/CookieSessionProvider.php(119): MediaWiki \ Session \ UserInfo :: newFromId ('1')

# 12 /var/www/html/w/includes/session/SessionManager.php(487): MediaWiki \ Session \ CookieSessionProvider-> provideSessionInfo (Объект (WebRequest))

# 13 /var/www/html/w/includes/session/SessionManager.php(190): MediaWiki \ Session \ SessionManager-> getSessionInfoForRequest (Объект (WebRequest))

# 14 /var/www/html/w/includes/WebRequest.php(735): MediaWiki \ Session \ SessionManager-> getSessionForRequest (Object (WebRequest))

# 15 /var/www/html/w/includes/session/SessionManager.php(129): WebRequest-> getSession ()

# 16 /var/www/html/w/includes/Setup.php(762): MediaWiki \ Session \ SessionManager :: getGlobalSession ()

# 17 /var/www/html/w/includes/WebStart.php(114): require_once ('/ var / www / html / w ...')

# 18 /var/www/html/w/index.php(40): require ('/ var / www / html / w ...')

# 19 {main}

Я проверил журналы ошибок в MySQL, и в сообщении об ошибке говорилось, что база данных пыталась получить доступ без пароля. Я перезапустил свой компьютер и перезапустил Apache, Parsoid, RESTBase и MySQL. Но мне не удалось перезапустить MySQL. Журнал ошибок, набрав команду journalctl -xe и увидел, что он не запускается, потому что не может писать в /var/lib/mysql/. Я пошел в StackExchange, чтобы узнать, могу ли я найти решение, и в одном из ответов было сказано использовать команду mysql -u root -p. Я сделал и ввел пароль, и он дал такую ​​ошибку:

ОШИБКА 2002 (HY000): не удается подключиться к локальному серверу MySQL через сокет '/var/run/mysqld/mysqld.sock' (2)

Я также проверяю его статус, набрав sudo mysqladmin status который сказал:

mysqladmin: подключиться к серверу на «localhost» не удалось ошибка: «Не удается подключиться к локальному серверу MySQL через сокет» /var/run/mysqld/mysqld.sock »(2)« Убедитесь, что mysqld запущен и что сокет: » /var/run/mysqld/mysqld.sock 'существует!

Я хотел убедиться, что он существует, но при просмотре местоположения сокета я обнаружил, что его там нет. Я увидел ответ об отсутствующем сокете MySQL, в котором говорилось, что нужно использовать touch команда для создания сокета и другого файла. Я сделал это, и у меня остались те же проблемы. Я вернулся в каталог и обнаружил, что два файла отсутствуют. Я создал их снова с помощью touch команда и наблюдала за папкой, чтобы увидеть, что происходит. Примерно через полминуты папка кажется удаленной и воссозданной. Меня выгнали из папки в родительский каталог, и когда я вернулся, файлы исчезли.

Кто-нибудь знает, почему это происходит, или, по крайней мере, как я могу это исправить и восстановить и запустить MySQL?