Моя установка MySQL нарушена. Как полностью переконфигурировать его?

19

Вот следующие команды, которые я сделал.

$ sudo service mysql start
mysql start/running

$ mysql -u root
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

$ aptitude search mysql |grep ^i
i   libapache2-mod-auth-mysql       - Module Apache 2 pour l'authentification vi
i   libdbd-mysql-perl               - Perl5 database interface to the MySQL data
i   libmysqlclient16                - MySQL database client library             
i   mysql-client-5.1                - MySQL database client binaries            
i   mysql-client-core-5.1           - MySQL database core client binaries       
i   mysql-common                    - MySQL database common files, e.g. /etc/mys
i   mysql-server-5.1                - MySQL database server binaries and system 
i   mysql-server-core-5.1           - MySQL database server binaries            
i   php5-mysql                      - MySQL module for php5                     
    
задан alm 19.10.2011 в 19:15
источник

4 ответа

13

Перед повторной установкой check / var / log / mysql для файлов журналов, которые могут содержать подсказки о том, почему mysql не работает. Если в вашей конфигурации нет журналов, журнал не может быть включен: Конфигурировать журнал ошибок Mysql

Чтобы переустановить любое использование пакета

sudo apt-get install mysql-server-5.1 --reinstall

Если это не позволяет вам перенастроить пакет, вы можете использовать

sudo dpkg-reconfigure mysql-server-5.1
    
ответ дан Ciaran Liedeman 19.10.2011 в 21:15
6

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

В установках MySQL можно указать, где у нас будет сокет для локальных подключений. При создании обновлений нередко появляется сообщение об ошибке «Не удается подключиться к локальному серверу MySQL через сокет». Давайте посмотрим, как решить эту проблему.

Ошибка выглядит так:

Mysql-u root-p
Enter password:
ERROR 2002 (HY000): Can not connect to local MySQL server-through socket '/ tmp / mysql.sock' (2)

thru ps , мы можем видеть, задано ли параметром и местом где оно:

# ps -fea | grep mysqld
mysql    17661 14003  1 Feb19 ?        00:24:59 /usr/local/mysql-percona/libexec/mysqld --basedir=/usr/local/mysql-percona --datadir=/var/data/mysql/datadir/data --user=mysql --pid-file=/var/run/mysqld/mysqld.pid --skip-external-locking --socket=/var/lib/mysql/mysql.sock --log-error=/var/log/mysqld.log
root     23790  7840  0 09:25 pts/0    00:00:00 grep mysqld

В этом случае мы видим, что в /var/lib/mysql/mysql.sock . Если этот параметр не найден, необходимо найти в разделе mysqld /etc/my.cnf , чтобы найти параметр:

grep socket /etc/my.cnf
socket=/var/lib/mysql/mysql.sock

Если мы знаем, где это, нам нужно изменить один и тот же файл ( /etc/my.cnf ) и добавить клиент сокета секции параметров:

[client]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
    
ответ дан hhlp 19.10.2011 в 21:59
1

Для последних зрителей:
    Я пришел к аналогичной ошибке, когда мне не удалось обновить пакет mysql-server, но я нашел это решило мою проблему . Когда sudo apt-get install -f не работает, попробуйте sudo apt-get purge mysql* . Теперь вы можете переустановить mysql-сервер.

    
ответ дан artificerpi 15.04.2016 в 15:03
1

Одна из проблем, с которыми я сталкиваюсь, - это знать, с какой версией у меня возникают проблемы. Это была аккуратная идея:

$ aptitude search mysql |grep ^i

Но вот что я нашел в критическом ключе:

$ apt-get --reinstall install mysql-server-5.x

(где x - версия.Если вы не добавляете это, вы можете работать с неправильным dpkg.

    
ответ дан Netsec 31.01.2017 в 17:59