brew installa mysql su macOS


344

Sto cercando di configurare MySQL su mac os 10.6 usando Homebrew di brew install mysql 5.1.52.

Tutto va bene e ho anche successo con mysql_install_db.
Tuttavia, quando provo a connettermi al server usando:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin -u root password 'mypass'

Ottengo:

/usr/local/Cellar/mysql/5.1.52/bin/mysqladmin: connettersi al server su "localhost" 
errore non riuscito: "Accesso negato per l'utente" root "@" localhost "(utilizzando la password: NO)"

Ho anche provato ad accedere mysqladmin or mysql using -u root -proot,
ma non funziona con o senza password.

Questa è una nuova installazione su una macchina nuova di zecca e per quanto ne so la nuova installazione deve essere accessibile senza una password di root. Ho anche provato:

/usr/local/Cellar/mysql/5.1.52/bin/mysql_secure_installation

ma ho anche

ERRORE 1045 (28000): accesso negato per l'utente 'root' @ 'localhost' (utilizzando la password: NO)


Vedi anche: apple.stackexchange.com/a/199747/152271 ... non è brew install, ma ha funzionato per me quando nessuna delle risposte qui ha fatto
sudo rm -rf slash

1
FWIW ho usato mysql -u roote ha funzionato qui: |
rogerdpack,

Risposte:


684

Penso che si possa finire in questa posizione con le versioni precedenti di mysql già installate. Ho avuto lo stesso problema e nessuna delle soluzioni di cui sopra ha funzionato per me. L'ho risolto così:

Ho usato brew's remove& cleanupcommand, scaricato lo launchctlscript, quindi cancellato la directory mysql /usr/local/var, cancellato il mio esistente /etc/my.cnf(lascia quello a te, se applicabile) e launchctl plist

Aggiornata la stringa per il plist. Nota anche che la tua directory di script di sicurezza alternativa si baserà sulla versione di MySQL che stai installando.

Passo dopo passo:

brew remove mysql

brew cleanup

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

sudo rm -rf /usr/local/var/mysql

Ho quindi iniziato da zero:

  1. mysql installato con brew install mysql
  2. eseguito i comandi brew suggerito: (vedi nota: sotto)

    unset TMPDIR
    
    mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
    
  3. Avvia mysql con il mysql.server startcomando, per poterlo accedere

  4. Usato lo script di sicurezza alternativo:

    /usr/local/Cellar/mysql/5.5.10/bin/mysql_secure_installation
  5. Seguito la launchctlsezione dall'output dello script del pacchetto brew come,

    #start
    launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    
    #stop
    launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    

Nota: il --forcebit on brew cleanuppulirà anche i fusti obsoleti, penso che sia una nuova funzionalità homebrew.

Nota il secondo: un commentatore afferma che il passaggio 2 non è richiesto. Non voglio provarlo, quindi YMMV!


31
Ottima risposta, grazie! Una cosa da aggiungere: sebbene sia menzionato nella risposta, l'ho perso e così facendo ho perso circa 6 ore nel tentativo di installarmi su Lion OSX. Assicurati assolutamente di eliminare la vecchia directory mysql in / usr / local / var / mysql se hai una versione precedente di MySql prima di reinstallare. Altrimenti non sarai in grado di accedere come root inizialmente per impostare la password e passerai molto tempo a urlare sul tuo computer.
tronbabylove,

3
vai in ~ / Library / LaunchAgents per vedere come viene effettivamente chiamato il file .plist per mysql - nel mio caso è stato installato da homebrew, quindi devi modificare la procedura di disinstallazione sopra descritta.
Marco

7
Poiché questo thread è vecchio, la riga "launchctl unload" sopra ora è errata. Il file homebrew install non è più chiamato "com.mysql.mysqld.plist", si chiama "homebrew.mxcl.mysql.plist". La riga dovrebbe ora leggere "launchctl unload -w ~ / Library / LaunchAgents / homebrew.mxcl.mysql.plist"
Tommy,

4
Ho` [~ / Library / LaunchAgents] $ ls com.adobe.ARM.202f4087f2bbde52e3ac2df389f53a4f123223c9cc56a8fd83a6f7ae.plist com.mysql.mysqld.plist com.facebook.videochat.ava.plist homebrew.m. / LaunchAgents` ma scaricandoli si ottienelaunchctl: Couldn't stat("com.mysql.mysqld.plist"): No such file or directory
Ava il

9
mysql_install_db ora può essere omesso, brew crea automaticamente il server nella giusta direzione.
rfreytag,

52

Ecco le istruzioni dettagliate che combinano la rimozione di tutti i MySQL dal tuo Mac e l'installazione di The Brew Way come Sedorner ha scritto sopra:

Rimuovi MySQL completamente da The Tech Lab

  • ps -ax | grep mysql
  • stop e killtutti i processi MySQL
  • sudo rm /usr/local/mysql
  • sudo rm -rf /usr/local/var/mysql
  • sudo rm -rf /usr/local/mysql*
  • sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  • sudo rm -rf /Library/StartupItems/MySQLCOM
  • sudo rm -rf /Library/PreferencePanes/My*
  • launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
  • modifica /etc/hostconfige rimuovi la lineaMYSQLCOM=-YES-
  • rm -rf ~/Library/PreferencePanes/My*
  • sudo rm -rf /Library/Receipts/mysql*
  • sudo rm -rf /Library/Receipts/MySQL*
  • sudo rm -rf /private/var/db/receipts/*mysql*
  • sudo rm -rf /tmp/mysql*
  • prova a correre mysql, non dovrebbe funzionare

Brew installa MySQL per utente Sedorner da questa risposta StackOverflow

  • brew doctor e correggere eventuali errori

  • brew remove mysql

  • brew cleanup

  • brew update

  • brew install mysql

  • unset TMPDIR

      mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp # whoami is executed inline
  • mysql.server start

  • esegui i comandi suggeriti da Brew, aggiungi MySQL in launchctlmodo che si avvii automaticamente all'avvio

mysql ora dovrebbe funzionare ed essere sempre in esecuzione come previsto

Godspeed.


3
Mi sono anche morso facendo tutto quanto sopra senza rimuovere prima /tmp/mysql.sock.
TKH,

Grazie +1. Commenti di coppia: dici a sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist, poi qualche passo dopo provi a launchctl unloadquel file ... ma non sarà lì, perché l'hai eliminato. Inoltre, ho brew install mysqleseguito il mysql_install_dbpassaggio per me, non è necessario farlo due volte.
Madbreaks

@CorySimmons significa che dovrei usare il mio nome o rootnella whoamiparte dei tuoi comandi?
YPCrumble

1
Confermato - whoami è il mio nome (l'ho usato root). Questo ha funzionato alla grande.
YPCrumble

Nota che /etc/hostconfignon esiste su Yosemite e oltre ( superuser.com/questions/850974/… )
ecbrodie,

44

Ho avuto lo stesso problema. Sembra che ci sia qualcosa di sbagliato nelle istruzioni di configurazione o nelle tabelle iniziali che vengono create. Ecco come ho fatto funzionare mysqld sulla mia macchina.

Se il server mysqld è già in esecuzione sul tuo Mac, fermalo prima con:

launchctl unload -w ~/Library/LaunchAgents/com.mysql.mysqld.plist

Avviare il server mysqld con il seguente comando che consente a chiunque di accedere con autorizzazioni complete.

mysqld_safe --skip-grant-tables

Quindi esegui mysql -u rootche ora dovrebbe consentire di accedere correttamente senza una password. Il comando seguente dovrebbe reimpostare tutte le password di root.

UPDATE mysql.user SET Password=PASSWORD('NewPassword') WHERE User='root'; FLUSH PRIVILEGES;

Ora se uccidi la copia corrente di mysqld_safe e la riavvii senza l'opzione skip-grant-tables, dovresti essere in grado di accedere con mysql -u root -pla nuova password che hai appena impostato.


Questo ha funzionato per me! Ho iniziato a indovinare la password prima di provare anche questa e la password ha finito per essere "password". Quindi prova quello.
cointilt

Avvio di mysqld_safe senza le tabelle delle sovvenzioni ha funzionato per me. Tuttavia, l'UPDATE non ha funzionato poiché non ho alcun record su select * da mysql.user; Dato che abbiamo già effettuato l'accesso come root, possiamo semplicemente inserirne uno per root eseguendo GRANT ALL PRIVILEGES ON . A 'root' @ 'localhost' IDENTIFICATO DA 'qualunque'; PRIVILEGI DI FLUSH;
Rupert,

Stavo usando il servizio / script di arresto e continuava a riavviare. È perché non ho mai scaricato LaunchAgent? (doh)
reneruiz,

1
Ciò che funziona per me era qualcosa di simile a quello che fai. Nella parte in cui hai aggiornato la password dell'utente, ho dovuto fare: usare mysql; aggiorna user set authentication_string = password ('1111') dove user = 'root'; Come in: stackoverflow.com/a/31122246/1328261
ruhanbidart

16

Se brew ha installato MySQL 5.7, il processo è leggermente diverso rispetto alle versioni precedenti. Per ripristinare la password di root, procedere come segue:

sudo rm -rf /usr/local/var/mysql
mysqld --initialize

Una password temporanea verrà stampata sulla console e può essere utilizzata solo per l'aggiornamento della password di root:

mysql.server start
echo "ALTER USER 'root'@'localhost' IDENTIFIED BY 'my-new-password';" | mysql -uroot --password=TEMPORARY_PASSWORD

2
Posso vedere la password temporanea generata ma quando provo a eseguire mysql, ottengo: ERROR! The server quit without updating PID file (/usr/local/var/mysql/XXXXX.local.pid).e quando eseguo mysql -u root, la password non viene accettata.
anticipare il

1
Ho installato con successo mysql 5.7.9 usando il programma di installazione dmg che mi ha suggerito una finestra che ha generato una password temporanea per me. E ora mysqlfunziona correttamente. Peccato che ho dovuto dedicare una grande quantità di tempo solo per farlo funzionare su un nuovissimo Macbook. : |
anticipare il

1
@forloop 1. ps -ef | grep mysql 2. kill -9 pid 3. mysql.server start
oshaiken,

per me, sopra reimpostazione / modifica della password non ha funzionato. Ho dovuto accedere a mysql usando la password temporanea, quindi eseguire il comando alter 1. mysql -u root -p <temp-password> 2.ALTER USER 'root'@'localhost' IDENTIFIED BY 'New-Password';
Test Test

8

Ok, ho avuto lo stesso problema e l'ho risolto. Per qualche motivo lo script mysql_secure_installation non funziona subito quando si utilizza Homebrew per installare mysql, quindi l'ho fatto manualmente. Nella CLI inserire :

mysql -u root

Questo dovrebbe farti entrare in mysql. Ora procedi come segue (tratto da mysql_secure_installation):

UPDATE mysql.user SET Password=PASSWORD('your_new_pass') WHERE User='root';
DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');
DELETE FROM mysql.user WHERE User='';
DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%'
DROP DATABASE test;
FLUSH PRIVILEGES;

Ora esci e torna a mysql con: mysql -u root -p


1
Questa soluzione non funziona per me perché mysql -u root non mi sta portando al prompt di mysql. Dice Accesso negato per l'utente 'root' @ 'localhost' (usando la password: NO)
Nick Vanderbilt

Avevi una precedente installazione di MySQL su quella macchina?
Darren Newton,

8

Ho avuto lo stesso problema proprio ora. Se brew info mysqlsegui i passaggi, sembra che la password di root dovrebbe essere new-passwordse ricordo bene. Stavo vedendo la stessa cosa che stai vedendo. Questo articolo mi ha aiutato di più.

Si è scoperto che non avevo alcun account creati per me. Quando ho effettuato l'accesso dopo l'esecuzione mysqld_safee non select * from user;sono state restituite righe. Ho aperto MySQLWorkbench con il mysqld_saferunning e ho aggiunto un rootaccount con tutti i privati ​​che mi aspettavo. Questo sta funzionando bene per me adesso.


7

Se mysql è già installato

Ferma mysql completamente.

  1. mysql.server stop <- potrebbe essere necessario modificarlo in base alla versione
  2. ps -ef | grep mysql <- elenca i processi con mysql nel loro nome
  3. kill [PID] <- uccide i processi tramite PID

Rimuovi i file. Le istruzioni sopra sono buone. Aggiungerò:

  1. sudo find /. -name "*mysql*"
  2. Usando il tuo giudizio, rm -rfquesti file. Nota che molti programmi hanno driver per mysql che non vuoi rimuovere. Ad esempio, non eliminare elementi nella directory di installazione di PHP. Rimuovere gli oggetti nella propria directory mysql.

Installare

Spero che tu abbia homebrew. Altrimenti, scaricalo.

Mi piace eseguire la birra come root, ma non credo che tu debba farlo. Modifica 2018: non puoi più eseguire brew come root

  1. sudo brew update
  2. sudo brew install cmake <- dipendenza per mysql, utile
  3. sudo brew install openssl <- dipendenza per mysql, utile
  4. sudo brew info mysql <- sfogliamo questo ... ti dà un'idea di ciò che verrà dopo
  5. sudo brew install mysql --with-embedded; say done<- Installa mysql con il server incorporato. Ti dice quando finisce (la mia installazione ha richiesto 10 minuti)

in seguito

  1. sudo chown -R mysql /usr/local/var/mysql/ <- mysql non avrebbe funzionato per me fino a quando non avessi eseguito questo comando
  2. sudo mysql.server start <- ancora una volta, la sintassi esatta può variare
  3. Creare utenti in mysql ( http://dev.mysql.com/doc/refman/5.7/en/create-user.html ). Ricorda di aggiungere una password per l'utente root.

3

info birra mysql

mysql: stable 5.6.12 (bottled)
http://dev.mysql.com/doc/refman/5.6/en/
Conflicts with: mariadb, mysql-cluster, percona-server
/usr/local/Cellar/mysql/5.6.12 (9363 files, 353M) *
  Poured from bottle
From: https://github.com/mxcl/homebrew/commits/master/Library/Formula/mysql.rb
==> Dependencies
Build: cmake
==> Options
--enable-debug
    Build with debug support
--enable-local-infile
    Build with local infile loading support
--enable-memcached
    Enable innodb-memcached support
--universal
    Build a universal binary
--with-archive-storage-engine
    Compile with the ARCHIVE storage engine enabled
--with-blackhole-storage-engine
    Compile with the BLACKHOLE storage engine enabled
--with-embedded
    Build the embedded server
--with-libedit
    Compile with editline wrapper instead of readline
--with-tests
    Build with unit tests
==> Caveats
A "/etc/my.cnf" from another install may interfere with a Homebrew-built
server starting up correctly.

To connect:
    mysql -uroot

To reload mysql after an upgrade:
    launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
    launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

mysql.service start

. ERROR! The server quit without updating PID file (/var/run/mysqld/mysqld.pid).

o mysql -u root

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Sto cercando una soluzione da qualche tempo ma non riesco a risolvere il mio problema. Ho provato diverse soluzioni in stackoverflow.com ma niente di tutto ciò mi ha aiutato.


4
Prova a eseguire sudo chown -R mysql /usr/local/var/mysql/prima di eseguire mysql.server startse stai eseguendo mysql.servercome root (quando inizi a utilizzare l'utente root, il server MySQL esegue il downgrade _mysqlall'utente).
Rarylson Freitas,

Ehi, ti è capitato di trovare una soluzione per questo problema?
KcC0,

brew install redisOh mio Dio , la quantità di domande e 1.000 righe risponde a questo problema ... penso che farò solo
Danyal Aytekin,

3

TL; DR

Il server MySQL potrebbe non essere in esecuzione dopo l'installazione con Brew. Prova brew services start mysqlo semplicemente mysql.server startse non vuoi che MySQL funzioni come servizio in background.

La storia completa:

Ho appena installato MySQL (stabile) 5.7.17 su un nuovo MacBook Pro con Sierra e ho anche riscontrato un errore durante l'esecuzione mysql_secure_installation:

Securing the MySQL server deployment.

Enter password for user root: 
Error: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

Che cosa?

Secondo le informazioni di installazione di Brew, mysql_secure_installationdovrei chiedermi di ... proteggere l'installazione. Ho pensato che il server MySQL potrebbe non essere in esecuzione e giustamente. Correre brew services start mysqle poi ha mysql_secure_installationfunzionato come un fascino.


1

Prova dando il permesso di concessione Comando di mysql


il problema è che non riesco ad accedere al server mysql dopo l'installazione di brew. Posso avviarlo, ma non mi farà entrare come root con o senza password. (quindi non riesco a creare altri utenti o a gestire i permessi .. o non ti ho capito bene?
nikola

1

Nessuna delle risposte sopra (o nessuna delle dozzine di risposte che ho visto altrove) ha funzionato per me quando ho usato brew con la versione più recente di mysql e yosemite. Ho finito per installare una versione mysql diversa tramite brew.

Specificare una versione precedente dicendo (ad esempio)

brew install mysql56

Ha funzionato per me. Spero che questo aiuti qualcuno. Questo è stato un problema frustrante sul quale mi sono sentito bloccato per sempre.


Sì, questo lavoro volontà, ma se si voleva installare MySQL 5.7 (come attualmente fatto da brew install mysql), si potrebbe seguire le istruzioni nella mia risposta stackoverflow.com/a/33924648/133106
mrucci

1

Ecco un aggiornamento per MySQL 5.7

bash: versione
GNU bash, versione 4.4.12 (1) -release (x86_64-apple-darwin17.0.0)
Copyright (C) 2016 Free Software Foundation, Inc.
Licenza GPLv3 +: GNU GPL versione 3 o successive 

Questo è software libero; sei libero di cambiare e ridistribuirlo.
Non esiste alcuna GARANZIA, nella misura consentita dalla legge.

# ========================================
brew --version
Homebrew 1.7.6
Homebrew / homebrew-core (git revision eeb08; ultimo commit 2018-09-27)
Homebrew / homebrew-cask (git revision c9f62; last commit 2018-09-27)

# ========================================
mysql: versione
mysql Ver 14.14 Distrib 5.7.23, per osx10.13 (x86_64) usando il wrapper EditLine

# ========================================
system_profiler SPSoftwareDataType
Software:

    Panoramica del software di sistema:

      Versione di sistema: macOS 10.13.3 (17D47)
      Versione del kernel: Darwin 17.4.0
      Volume di avvio: Macintosh HD
      Modalità di avvio: normale
      Nome computer: EdisonMacHomeBj
      Nome utente: Edison (edison)
      Memoria virtuale protetta: abilitata
      Protezione dell'integrità del sistema: disabilitata
      Tempo di avvio: 6 giorni alle 23:13
brew rimuovi mysql@5.7
pulire la birra
mv / usr / local / var / mysql /usr/local/var/mysql.bak
brew install mysql@5.7
rm -rf / usr / local / var / mysql

# ========================================
mysqld: inizializza
2018-09-28T04: 54: 06.526061Z 0 [Avvertenza] TIMESTAMP con valore DEFAULT implicito è obsoleto. Utilizzare l'opzione server --explicit_defaults_for_timestamp (consultare la documentazione per maggiori dettagli).
2018-09-28T04: 54: 06.542625Z 0 [Avvertenza] Impostazione lower_case_table_names = 2 perché il file system per / usr / local / var / mysql / non fa distinzione tra maiuscole e minuscole
2018-09-28T04: 54: 07.096637Z 0 [Avvertenza] InnoDB: nuovi file di registro creati, LSN = 45790
2018-09-28T04: 54: 07.132950Z 0 [Avvertenza] InnoDB: creazione di tabelle di sistema di vincoli di chiave esterna.
2018-09-28T04: 54: 07.196824Z 0 [Avviso] Non è stato trovato alcun UUID esistente, quindi supponiamo che questa sia la prima volta che questo server è stato avviato. Generazione di un nuovo UUID: 87cf2f10-c2da-11e8-ac2d-ba163df10130.
2018-09-28T04: 54: 07.224871Z 0 [Avvertenza] La tabella Gtid non è pronta per essere utilizzata. La tabella "mysql.gtid_executed" non può essere aperta.
2018-09-28T04: 54: 07.366688Z 0 [Avvertenza] Il certificato CA ca.pem è autofirmato.
2018-09-28T04: 54: 07.457954Z 1 [Nota] Viene generata una password temporanea per root @ localhost: kq3K = JR8; GqZ

# ========================================
mysql_secure_installation -uroot -p "kq3K = JR8; GqZ"
mysql_secure_installation: [Avvertimento] L'uso di una password sull'interfaccia della riga di comando può essere insicuro.

Protezione della distribuzione del server MySQL.


La password esistente per la radice dell'account utente è scaduta. Si prega di impostare una nuova password.

Nuova password:

Reinserire la nuova password:

VALIDATE PLUGIN PASSWORD può essere utilizzato per testare le password
e migliorare la sicurezza. Controlla la forza della password
e consente agli utenti di impostare solo le password che lo sono
abbastanza sicuro. Desideri installare il plug-in VALIDATE PASSWORD?

Premere y | Y per Sì, qualsiasi altro tasto per No: n
Utilizzo della password esistente per root.
Cambia la password per root? ((Premere y | Y per Sì, qualsiasi altro tasto per No): y

Nuova password:

Reinserire la nuova password:
Per impostazione predefinita, un'installazione di MySQL ha un utente anonimo,
permettendo a chiunque di accedere a MySQL senza doverlo fare
un account utente creato per loro. Questo è destinato solo a
test e per rendere l'installazione un po 'più fluida.
Dovresti rimuoverli prima di passare a una produzione
ambiente.

Rimuovere utenti anonimi? (Premere y | Y per Sì, qualsiasi altro tasto per No): y
Successo.


Normalmente, root dovrebbe essere autorizzato a connettersi solo da
'Localhost'. Questo assicura che qualcuno non possa indovinarlo
la password di root dalla rete.

Non consentire l'accesso root da remoto? (Premere y | Y per Sì, qualsiasi altro tasto per No): n

 ... saltare.
Per impostazione predefinita, MySQL viene fornito con un database chiamato "test"
chiunque può accedervi. Questo è anche destinato solo a test,
e dovrebbe essere rimosso prima di passare a una produzione
ambiente.


Rimuovere il database di prova e accedervi? (Premere y | Y per Sì, qualsiasi altro tasto per No): n

 ... saltare.
Il ricaricamento delle tabelle dei privilegi garantirà che tutte le modifiche
fatto finora avrà effetto immediato.

Ricarica le tabelle dei privilegi ora? (Premere y | Y per Sì, qualsiasi altro tasto per No): y
Successo.

Tutto fatto!

quando copia tutto il database da "mysql.bak" non funziona :(
Jahirul Islam Mamun

1

Solo per aggiungere qualcosa alle risposte precedenti - Durante l'aggiornamento da MySql 5.6 a MySql 8.0, ho seguito i passaggi forniti qui per effettuare una disinstallazione pulita, ma ho riscontrato i seguenti errori

2019-11-05T07:57:31.359304Z 0 [ERROR] [MY-000077] [Server] /usr/local/Cellar/mysql/8.0.18/bin/mysqld: Error while setting value 'ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' to 'sql_mode'.
2019-11-05T07:57:31.359330Z 0 [ERROR] [MY-013236] [Server] The designated data directory /usr/local/var/mysql is unusable. You can remove all files that the server added to it.
2019-11-05T07:57:31.359413Z 0 [ERROR] [MY-010119] [Server] Aborting
2019-11-05T07:57:31.359514Z 0 [Note] [MY-010120] [Server] Binlog end

Mi ci è voluto del tempo per capirlo. Ho trovato un indizio qui: https://discourse.brew.sh/t/clean-removal-of-mysql/2251

Quindi, la chiave del mio problema era rimuovere il file /usr/local/etc/my.cnf dopo la disinstallazione. Dopo l'ultimo passaggio, MySql ha finalmente iniziato a funzionare.


0

Ho avuto lo stesso problema dopo aver provato a riavviare mysql.

Uso i seguenti due alias nel mio .profile per comodità

alias mysql-stop='launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist'
alias mysql-start='launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist' 

Dopo aver interrotto mysql e aver provato a riavviare, ho riscontrato il problema riscontrato. Ho esaminato il caricamento launchctl e stava segnalando un errore "niente trovato per caricare".

Dopo una rapida ricerca ho trovato questo ..

http://www.daveoncode.com/2013/02/01/solve-mac-osx-launchctl-nothing-found-to-load-error/

Quindi mi sono aggiornato mysql-startalias come segue

alias mysql-start='launchctl load -w -F ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist'

Questo ha risolto il mio problema che potrebbe esserti utile.


2
Brew ora supporta un servicescomando, quindi questi possono essere sostituiti con brew services stop mysqle brew services start mysqlrispettivamente.
Devstuff,

0

Il "Percorso di base" per Mysql è memorizzato in /etc/my.cnfcui non viene aggiornato quando si effettua l'aggiornamento. Basta aprirlo e modificare il valore basedir

Ad esempio, cambia questo:

[mysqld]
basedir=/Users/3st/homebrew/Cellar/mysql/5.6.13

per puntare alla nuova versione:

[mysqld]
basedir=/Users/3st/homebrew/Cellar/mysql/5.6.19

Riavvia mysql con:

mysql.server start
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.