L'installazione di mysql causa l'errore 2002


0

Ho provato a installare il server mysql un paio di volte e sto riscontrando problemi. Prima di tutto, quando installo mi dà un messaggio che si sta configurando e si blocca. Non riesco a uscire da ctl + c, quindi riavvio il server e provo ad accedere al db con

sudo mysql -u root -p

Inserisco la mia password e poi ottengo

ERRORE 2002 (HY000): impossibile connettersi al server MySQL locale tramite socket '/var/run/mysqld/mysqld.sock' (2)

Riavvio del server:

$ sudo /etc/init.d/mysql start
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service mysql start

Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the start(8) utility, e.g. start mysql

Provo questo:

$ aptitude search mysql | grep ^i
i A libdbd-mysql-perl               - Perl5 database interface to the MySQL data
i   libmysql-java                   - Java database (JDBC) driver for MySQL     
i A libmysqlclient16                - MySQL database client library             
i   mysql-client-5.1                - MySQL database client binaries            
i A mysql-client-core-5.1           - MySQL database core client binaries       
i   mysql-common                    - MySQL database common files, e.g. /etc/mys
i   mysql-embedded                  - MySQL - embedded library                  
i   mysql-server-core-5.1           - MySQL database server binaries 

Quando cerco la cartella per vedere se esiste il file * .sock:

'/var/run/mysqld/mysqld.sock'

non è così. Provo anche questo:

$ service mysql status
status: Unable to connect to system bus: Failed to connect to socket /var/run/dbus/system_bus_socket: No such file or directory

Qualche idea? Sulle mie altre macchine l'installazione di mysql è stata semplicissima, non sono sicuro di quale sia il problema.

Risposte:


2

Ho corrotto i tuoi pacchetti, vedo. Hai detto di aver annullato l'installazione del server MySQL, che è il pacchetto mysql-server-5.1.

Prova a cancellare la tua configurazione MySQL e reinstallarla:

sudo rm -rf /etc/mysql /var/lib/mysql
sudo apt-get install mysql-server-5.1

Si noti che il primo comando cancella le impostazioni e le password precedenti del database MySQL incluso il database MySQL stesso. Se hai appena installato il server (come posso capire dalla tua domanda), questo non è un problema.


Come notato da SpamapS, puoi usare la funzione di eliminazione di apt per sbarazzarti del server MySQL e delle sue impostazioni. Di seguito sono riportati i comandi per l'eliminazione e l'installazione:

sudo apt-get --purge remove mysql-server-5.1
sudo apt-get install mysql-server-5.1

1
Potrebbe voler eliminare il pacchetto prima di assegnare questi rm -rf. I file in / etc rimarranno eliminati se il pacchetto è ancora installato.
SpamapS

-1

Il file mysqld.sockesiste? In caso contrario, provare quanto segue:

sudo mkdir /var/run/mysqld
sudo touch /var/run/mysqld/mysqld.sock
sudo chown -R mysql /var/run/mysqld

Conosci MySQL? Il file socket è un file speciale creato dal server MySQL, non puoi semplicemente crearlo.
Lekensteyn,

Sì, ho fatto alcuni problemi con MySql ai miei giorni. In realtà ho cercato su Google il problema e ho trovato una soluzione con la risposta sopra indicata. Non è che spezzerebbe il sistema degli utenti creando quel file. Ad ogni modo, mi dispiace che stavo cercando di aiutare ...
mount.cifs il


@ mount.cifs: ha senso, rimosso il voto negativo. Ma se si tratta di un problema relativo alle autorizzazioni, solo /var/run/mysqld/dovrebbe essere creato e riconosciuto a mysql. Consenti al server MySQL di creare il file socket riavviandolo.
Lekensteyn,

Ciao, ho provato questo e non ha funzionato. Sto ancora ricevendo l'errore .sock, come prima
cattiva
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.