Страница 1 из 1

Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Пт дек 28, 2018 10:01 pm
vikont
Пытаюсь выполнить команду из консоли
mysqlcheck --no-defaults -u root -p --all-databases

С начала мне выдавало ответ
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2) when trying to connect

Я создал файл /var/lib/mysql/mysql.sock
Но теперь выдает ответ
mysqlcheck: Got error: 2002: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (111) when trying to connect

Что я не так делаю?
В одной из моих баз есть тяжелые таблицы на InnoDB и мне важно иметь возможность обслуживать эти таблицы. Стандартные средства phpMyAdmin с таблицами InnoDB не могут сделать восстановление.

Re: Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Сб дек 29, 2018 9:19 am
Akrobs
vikont писал(а):
Пт дек 28, 2018 10:01 pm
Пытаюсь выполнить команду из консоли
mysqlcheck --no-defaults -u root -p --all-databases
Добрый день.
У вас MySQL пытается подключится через сокет.
Попробуйте выполнить команду так:

Код: Выделить всё

mysqlcheck --no-defaults -u root -p --all-databases --socket=/var/run/mysqld/mysql.sock

Re: Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Сб дек 29, 2018 3:15 pm
sbury
Я создал файл /var/lib/mysql/mysql.sock
Этот файл вы нe должны сами создавать, его создает сам сервер sql


вы должны использовать эту команду с ключом -S
-S, --socket=...
Файл сокета, используемый для подсоединения.
У нас доступ к mysql через UDS датаграм расположен по такому пути,
--socket=/var/run/mysqld/mysql.sock
вы должны использовать только этот путь.

Вот ссылка на документацию
http://www.mysql.ru/docs/man/Using_mysqlcheck.html

Re: Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Сб дек 29, 2018 8:19 pm
vikont
Akrobs писал(а):
Сб дек 29, 2018 9:19 am
vikont писал(а):
Пт дек 28, 2018 10:01 pm
Пытаюсь выполнить команду из консоли
mysqlcheck --no-defaults -u root -p --all-databases
Добрый день.
У вас MySQL пытается подключится через сокет.
Попробуйте выполнить команду так:

Код: Выделить всё

mysqlcheck --no-defaults -u root -p --all-databases --socket=/var/run/mysqld/mysql.sock
Спасибо очень выручили! Но думаю это не правильно! Почему ищется путь не там где положено?

Re: Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Сб дек 29, 2018 8:30 pm
Akrobs
vikont писал(а):
Сб дек 29, 2018 8:19 pm
Спасибо очень выручили!
Пожалуйста.
vikont писал(а):
Сб дек 29, 2018 8:19 pm
Но думаю это не правильно! Почему ищется путь не там где положено?

Вот это уже вопрос к разработчикам, но меня это не сильно беспокоит. Куда важнее, что "из коробки" MySQL работает через сокет, а это быстрее, чем через TCP соединение. 8-)

Re: Обслуживание таблиц InnoDB в MaraDB 10.3.7 не работает

Добавлено: Сб дек 29, 2018 8:31 pm
vikont
sbury писал(а):
Сб дек 29, 2018 3:15 pm
Я создал файл /var/lib/mysql/mysql.sock
Этот файл вы нe должны сами создавать, его создает сам сервер sql
Файл сокета создан с помощью специальной команды.
вы должны использовать эту команду с ключом -S
-S, --socket=...
Файл сокета, используемый для подсоединения.
Спасибо, возьму на вооружение.
У нас доступ к mysql через UDS датаграм расположен по такому пути,
--socket=/var/run/mysqld/mysql.sock
вы должны использовать только этот путь.

Вот ссылка на документацию
http://www.mysql.ru/docs/man/Using_mysqlcheck.html
Я бы вообще не использовал никакого пути к сокету, как это делал при использовании панели Vesta, но у вас как то иначе все организовано и мускульный чекер почему то ищет по другому пути! Где то не верно что то настроено! Подскажите как правильно должно работать.

Обслуживание таблиц InnoDB в MaraDB 10 3 7 не работает

Добавлено: Пн янв 14, 2019 8:38 pm
Warnerblept
так ну это я уже зделал, разобрался...
а как теперь мне теперь эти связи в программе использовать то???