Страница 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 соединение.  

 
			
					
				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=...
    Файл сокета, используемый для подсоединения. 
Спасибо, возьму на вооружение.
Я бы вообще не использовал никакого пути к сокету, как это делал при использовании панели Vesta, но у вас как то иначе все организовано и мускульный чекер почему то ищет по другому пути! Где то не верно что то настроено! Подскажите как правильно должно работать.
 
			
					
				Обслуживание таблиц InnoDB в MaraDB 10 3 7 не работает
				Добавлено: Пн янв 14, 2019 8:38 pm
				 Warnerblept
				так ну это я уже зделал, разобрался...
а как теперь мне теперь эти связи в программе использовать то???