"Errore 1067: il processo è terminato in modo imprevisto" durante il tentativo di installare MySQL su Win7 x64 [chiuso]


14

Mi sono imbattuto in un muro di mattoni nel tentativo di installare MySQL v5.5 sulla mia macchina.

Il mio PC è Windows 7 x64, versione Enterprise.

MySQL si installa bene, ma quando eseguo "Configurazione guidata istanza MySQL", si interrompe per sempre sul passaggio "Avvia servizio" (posso lasciarlo funzionare per 30 minuti senza risposta). Se vado nei servizi, vedo che il servizio "MySQL" non è stato avviato e se provo ad avviarlo, viene visualizzato il messaggio "Impossibile avviare il servizio MySQL sul computer locale. Errore 1067: il processo è terminato in modo imprevisto".

Ho provato quanto segue:

  • Disattivazione del firewall.
  • Disinstallazione di tutto il software antivirus.
  • Installazione / reinstallazione della versione a 32 bit di MySQL.
  • Installazione / reinstallazione della versione a 64 bit di MySQL.
  • Disinstallazione, eliminazione dei contenuti di "C: \ programmi \ MySQL" e "C: \ programmi (x86) \ MySQL", reinstallazione.
  • Controllando che non ci siano servizi canaglia di nome MySQL ???? (da un'installazione precedente).
  • Verifica che la porta 3306 non sia utilizzata da un programma alternativo.
  • Modifica della porta predefinita utilizzata da MySQL.
  • Verifica di "my.ini" e "my.ini.cnf" in "C: \ windows" (non esiste altro che causa un problema).
  • Eseguendo sia il programma di installazione MySQL sia la procedura guidata di configurazione, in "Modalità amministratore".
  • Disattivazione UAC.
  • Installazione con impostazioni predefinite, non modifica nulla.
  • Riavvio del mio computer (circa 6 riavvii finora).
  • Apertura della porta 3306 nel firewall (sia TCP che UDP, in entrata e in uscita).
  • Imprecare contro il klutz di un programmatore che ha progettato MySQL in modo da non poterlo nemmeno installare (come se ciò potesse aiutare!)

La mia macchina funziona al 100% in tutti gli altri modi. InfiniDB (un database compatibile con MySQL) si installa al 100%, così come Visual Studio 2010, Microsoft SQL Server, ecc. Ecc.

Il tuo consiglio su come aggirare questo?

ps Ecco lo schermo su cui è rimasto bloccato per 15 minuti fino a quando ho ucciso il processo:

testo alternativo

Aggiornamento 20/12/2010

Ho provato MySQL v5.1, non ha funzionato neanche. È incredibile - se digiti "mysqld /?" O "mysqld -help", non ti darà alcun aiuto. E, se si tenta di riavviare il servizio manualmente, non viene visualizzato alcun messaggio di errore. Potrebbe essere più inutile?

Aggiornamento 21-12-2010

Ho installato MySQL 6.0 alpha e ha funzionato. Tuttavia, preferirei non utilizzare una versione alpha, dato che la versione "stabile" è tutt'altro che :(

Aggiornamento 21-12-2010

Trovato http://dev.mysql.com/doc/refman/5.1/en/windows-tro troubleshooting.html, relativo alla risoluzione dei problemi in Windows.

È stato scoperto che è possibile generare un registro degli errori se il servizio non si avvia: consultare qui: http://dev.mysql.com/doc/refman/5.1/it/error-log.html

Aggiornamento 21-12-2010

Aha! Un indizio. Per vedere effettivamente l'errore, aggiungi "--console":

mysqld --console

Questo ritorna:

101221 13:57:28 [Note] Plugin 'FEDERATED' is disabled.
InnoDB: The InnoDB memory heap is disabled
InnoDB: Mutexes and rw_locks use Windows interlocked functions
InnoDB: Compressed tables use zlib 1.2.3
101221 13:57:28  InnoDB: Initializing buffer pool, size = 203.0M
101221 13:57:28  InnoDB: Completed initialization of buffer pool
InnoDB: Error: log file .\ib_logfile0 is of different size 0 56623104 bytes
InnoDB: than specified in the .cnf file 0 106954752 bytes!
101221 13:57:28 [ERROR] Plugin 'InnoDB' init function returned error.
101221 13:57:28 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
101221 13:57:28 [ERROR] Unknown/unsupported storage engine: INNODB
101221 13:57:28 [ERROR] Aborting
101221 13:57:28 [Note] mysqld: Shutdown complete

Aggiornamento 21-12-2010

Ora si installa correttamente. Vedi la risposta sotto.


Nel mio caso, il file "my.ini" aveva percorsi configurati male. Spero che aiuti qualcun altro.
scepeda,

Risposte:


11

Ecco come ho risolto il problema:

Passaggio 1: per impostazione predefinita, è impossibile scoprire il motivo per cui il servizio non si avvia. Quindi, digli di avviarsi in modalità non di servizio e di pipe pipe alla console:

mysqld --console

Passaggio 2: Nel mio caso particolare, ho dovuto eliminare il contenuto di:

C:\ProgramData\MySQL

... quindi reinstallare. Il programma di installazione di MySQL v5.5 ha un bug: se disinstalli MySQL v5.5 per risolvere un problema con un'installazione errata, non riesce a ripulire C: \ ProgramData \ MySQL, il che significa che è impossibile installare MySQL v5.5 su quella macchina, da quel momento in poi, senza cancellare questa directory canaglia.

suggerimenti:

  • Assicurati di uccidere qualsiasi istanza di "mysqld" nel monitor di processo.
  • Per rimuovere tutti i servizi esistenti, utilizzare "sc delete MYSQLxx".

Lettera aperta al team di sviluppo MySQL di Oracle:

--- inizia una lettera aperta a Oracle ---

Caro team di sviluppatori MySQL di Oracle:

Se, quando MySQL è installato, il servizio non si avvia, fateci sapere perché (a) indicandoci nella direzione del registro degli errori o (b) mostrando questo registro degli errori.

In caso contrario, si lancia Oracle in una luce incompetente.

Cordiali saluti,

Tutti quelli che installano MySQL su Windows.

--- termina la lettera aperta a Oracle ---


3

Sono d'accordo con Gravitas ma non è necessario effettuare una reinstallazione (soprattutto quando si installa MySQL
Server xx in una cartella diversa da quella predefinita in C: / Programmi /).
Questi passaggi mi hanno aiutato a eseguire correttamente il servizio. Funzionato in Win7 x64, quindi suppongo che x32 andrà bene :)

Apri il file 'my.ini' in cui è installato MySQL Server xx (il mio era 5.5 ma anche 5.1 è OK)
Vai alla riga dove dice:

datadir=C:/ProgramData/MySQL/MySQL Server x.x/data-> (Questo è il percorso predefinito)
Cambia la riga sopra con qualcosa del genere:
datadir="<Drive_Letter>:/path/where/MySQL/is/installed/MySQL Server x.x/data/"

Copia tutto il contenuto del C:/ProgramData/MySQL/MySQL Server x.x/nuovo datadir
EXCEPT ib_logfile0 & ib_logfile1(riposizionalo altrove come backup).
Elimina C:/ProgramData/MySQL/MySQL Server x.x/.
Rieseguire MySQLInstanceConfig.
Controllare TCP/IP networkingma NON modificare le impostazioni di sicurezza (lasciarle inalterate).
Avvia il servizio ( ib_logfile(1,2)verrà rigenerato).

PS: riavvia e pulisci i file temporanei, dopo il riavvio, con CCleaner. Per qualche (strano?) Motivo, non è possibile connettersi a MySQL DBMS da un IDE o MySQL Workbench CE xx dopo aver applicato le impostazioni precedenti fino al riavvio.

NOTA: la modifica delle impostazioni di sicurezza provoca l'arresto dell'utilità di configurazione a causa di un altro bug
introdotto quando si abilita TCP / IP con qualsiasi altra impostazione.

Spero che sia di aiuto!


2

http://mydailytech.com/post/how-to-fix-mysql-error-1067/

controlla e segui il link sopra - dovrebbe risolversi come nel mio caso.

Spero possa aiutare


Spiacenti, questo non ha risolto il problema. Ho anche provato a reinstallarlo in C: \ MYSQL55 \ solo per assicurarmi che i nomi di file lunghi non alterassero le cose, riavviando il mio computer, ecc. Sto iniziando a chiedermi se MySQL v5.5 e precedenti sono semplicemente interrotti in Windows 7 x64?
Contango,

2

Citato dal sito Web che Rigatum ha pubblicato:

Quando si installa MySQL, se lo si installa in una directory non standard, è necessario specificare dove si trova il percorso del file delle impostazioni predefinite prima di poter eseguire MySQL o installare il servizio MySQL, altrimenti verrà visualizzato l'errore 1067.

Innanzitutto apriamo il prompt dei comandi. Passare alla cartella di installazione di MySQL e trovare ovunque sia mysqld.exe. Quindi esegui questo:

mysqld –remove MySql

Ciò disinstallerà il servizio MySQL. Ora reinstalla il servizio con il parametro defaults-file:

mysqld –install <service name> –defaults-file=<full path of “my.ini” file>

Per esempio:

mysqld –install MySql –defaults-file=c:\mysql\my.ini

Goditi la tua installazione MySQL senza errori.


Spiacenti, questo non ha risolto il problema. Ho anche provato a reinstallarlo in C: \ MYSQL55 \ solo per assicurarmi che i nomi di file lunghi non alterassero le cose, riavviando il mio computer, ecc. Sto iniziando a chiedermi se MySQL v5.5 e precedenti sono semplicemente interrotti in Windows 7 x64?
Contango,

1
no, non è affatto rotto, lo faccio funzionare perfettamente su 65 macchine Windows 7 sviluppate al lavoro, 18 server (sia nix che windows 2008R2), e sul mio computer di casa mix di Windows 2008 e sette. penso che non stia disinstallando qualcosa in modo corretto ed è per questo che ad un certo punto si è bloccato - mi è successo ma è stato un po 'di tempo fa. Avevo disinstallato, cancellato manualmente tutte le directory mysql e cancellato anche l'istanza del servizio da Windows.
Rihatum,

2

E aggiungo solo - non solo programdata \ mysql deve essere cancellato in questo caso, ma anche cartella innoDB: \ mysql datafiles


2

Per la cronaca, ho provato per diverse ore 5.5.20a installare Windows 2008 64bit. Non sarebbe mai iniziato. Ho provato tutti gli esempi che sono riuscito a trovare. Inclusa la risposta accettata qui. Non ha mai funzionato

Quindi ho effettuato il downgrade 5.1.61e ha funzionato come un campione. Prima volta.


2

Quello che ho fatto è stato

  1. Con il demone non in esecuzione, rinominare la cartella dei dati in Program Data \ MySQL con qualcos'altro.
  2. Disinstallare mysql dal pannello di controllo
  3. Reinstallare. Nella configurazione delle impostazioni di sicurezza non riesce con errore # 1045. Ho verificato che MySQL sia stato installato come servizio e che la password di root fosse vuota. Ho verificato questo eseguendo l'utilità mysql senza nome utente. Quando viene richiesto di riprovare o saltare, ho fatto clic su salta e ho fatto clic sul pulsante Indietro fino alla finestra di dialogo in cui si specificano la password di root corrente e la nuova password. Rimuovo la password nel campo della password di root corrente poiché è già vuota e ha fornito la mia nuova password di root. La configurazione è proseguita senza ulteriori errori
  4. Interrompere il servizio
  5. Copia le cartelle del database dalla vecchia cartella dei dati che è stata rinominata. Non ha copiato i file di registro e il file ibdata.
  6. Incolla le cartelle nella cartella dei dati corrente (nuova).
  7. Riavviato il servizio
  8. Test nell'utilità mysql per vedere se verrà mostrato il database.

A proposito, ho scaricato il database con mysqldump - tutti i database per ogni evenienza :)


2

Aggiungendo la logica innodb_flush_method=normalper my.inifunzionare per me. Sono su Windows 7 x64 con MySQL 5.7, spostando i database su un HDD da 3 TB. Una breve guida:

  1. Arrestare il servizio nel prompt dei comandi di Windows con net stop sqlXX
  2. Copia sulla datacartella con il comandoxcopy "C:\ProgramData\MySQL\MySQL Server X.X\data" "<new_directory>\data" /s
  3. In "<new_directory>\data"cancella ib_logfile0eib_logfile1
  4. Apri C:ProgramData\MySQL\MySQL Server X.X\my.ini, imposta datadir="<new directory>/data", aggiungi innodb_flush_method=normalnella parte inferiore del file e salva
  5. Riavvia il servizio con il comando net start mysqlXX

Qui XX è il tuo numero di versione. Sto usando 5.7, quindi ho usato net start mysql57.

Secondo la discussione collegata, il valore predefinito per questo è innodb_flush_method=unbuffered, che dipende da una dimensione del settore di 512 byte, che è normale per gli HDD <2 TB. Se l'HDD è> 2 TB, verrà in genere formattato con settori di 4096 byte, causando l'errore 1067.

Avevo provato anche tutto quanto sopra e questa è l'unica cosa che l'ha risolto.

http://bugs.mysql.com/bug.php?id=28913

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.