Come installare MySQL 5.6?


36

Ho appena installato Ubuntu 12.10 (amd64) e voglio installare una versione recente di MySQL 5.6.

Se possibile, vorrei installarlo (non aggiornarlo) in "Debian Way" (cioè usando apt-geto dpkg).

Risposte:


22

Per versioni precedenti come 12.10:

(Questa versione è End of Lifed, considera l'aggiornamento!)

Ho preparato PPA con i pacchetti MySQL 5.6 basati sui pacchetti Debian di MySQL 5.5. Nessuna garanzia che funzionerà immediatamente, ma sarei grato se puoi provarlo e riportare il successo (o il fallimento).

Esistono PPA per MySQL 5.5 e MySQL 5.6, entrambi con la più recente sorgente upstream.

MySQL 5.5: https://launchpad.net/~ondrej/+archive/mysql-5.5

MySQL 5.6: https://launchpad.net/~ondrej/+archive/mysql-5.6

Aggiornamento: i pacchetti MySQL 5.6 non sono riusciti in un'installazione pulita e questo è stato corretto. Se trovi altri errori, contattami direttamente tramite launchpad o su https://github.com/oerdnj/deb.sury.org/issues


1
Mi chiedo perché il -1? Quei pacchetti non funzionano o c'è qualche altra ragione?
oerdnj,

Grazie per lo sforzo! Perché è "sperimentale"? Lo manterrai con future versioni / correzioni di bug? Hai un PPA (o conosci un affidabile) anche per PHP 5.5 per 12.04?
Dexter,

1
@Dexter È sperimentale, perché ha bisogno di essere testato. Conservo già il repository php5.5 in PPA sperimentale php5 (che presto verrà spostato in PPA php5).
oerdnj,

1
@Dexter JFTR Ora ho unito i due PPA MySQL in uno. Il ppa: ondrej / php5 è stato aggiornato anche con PHP 5.5 e PHP 5.4 è disponibile in ppa: ondrej / php5-oldstable.
oerdnj,

1
@oerdnj: grazie per il packaging 5.6, ma non ha funzionato per me su una nuova installazione di raring. Le voci relative al syslog sono qui: gist.github.com/rasa/6161973
Ross Smith II

21

Per utenti 14.04:

Ubuntu 14.04 è impostato per impostazione predefinita su MySQL 5.5, ma ha anche MySQL 5.6 disponibile per l'installazione dall'archivio dell'universo. L'installazione di 5.6 è facile come specificare la versione:

myuser@mypc:~$ sudo apt-get purge mysql-server-5.5 mysql-client-5.5
myuser@mypc:~$ sudo apt-get autoremove
myuser@mypc:~$ sudo apt-get install mysql-server-5.6 mysql-client-5.6

Controlla il sito di Tocker per maggiori dettagli


3
Non utilizzare PURGE. mantenere la configurazione sui server in esecuzione. basta modificare i file di configurazione! link
TD_Nijboer,

11

puoi scaricare il file .deb più recente su oracle.com

sito di download di oracle dev

ed esegui semplicemente il comando

dpkg -i mysql-5.6.7-rc-debian6.0-x86_64.deb

Non l'ho installato, quindi non posso promettere il risultato atteso.


Stephan, grazie per il tuo aiuto! Sfortunatamente, l'ho già provato. Si è installato correttamente, ma si è installato /opte non ha impostato nulla in /etc, o /etc/init.d, o lasciatemi iniziare service, o aggiungere /opt/mysql/server-5.6/binal percorso o altro.
Ross Smith II

@Ross, prova prima a installare MySQL 5.5, utilizzando apt-gete quindi installa il file .deb su di esso.
Vecchio professionista

@OldPro: Non credo che funzionerà, come 5.5 installerà in /etc, /usr/binecc, e 5,6 installerà in opt.
Ross Smith II,

Bene, quindi si installano in / opt ... Dal momento che "il modo Debian" è in realtà solo per essere un amministratore pigro, vivrei con esso e regolerei i file di avvio in /etc/init.d di conseguenza. Forse ci sono anche alcuni file di avvio pronti per il collegamento simbolico in / opt.
Paul Hänsch,


4

Ho appena scritto un post sul blog che tratta questo argomento. Cercare a Mysql 5.6 installazione . Spero che questo ti possa aiutare!


1
Grazie Eric, un paio di cose: il tuo link di commento è rotto su quella pagina anche se devi usare il client mysql5.5 con il server mysql 5.6 devi collegare my.cnf a /etc/mysql/my.cnf da / etc / my.cnf
JD Schmidt

2

Ovviamente puoi installare tutto ciò che è richiesto Mysql-5.5dai repository sia in 12.04 che in 12.10, ma quanto segue dovrebbe aiutarti a Mysql-5.6installarlo.

In primo luogo, dovrei provare a installare il file deb dal sito ufficiale in Software Centreo Gdebi, poiché quei programmi risolvono le dipendenze, dpkgno.


La compilazione mysqlè la tua prossima opzione:

Nota : farlo nel "modo Debian" (come accennato) ti prenderà solo mysql-5.5e non 5.6: ad es

sudo apt-get source mysql-5.5

in quanto non esiste alcuna altra fonte disponibile per impostazione predefinita. Se si desidera utilizzare l'ultimo codice di sviluppo, è necessario scaricarlo dal sito ufficiale, che è meglio che provare ad abilitare un repository instabile o un altro.

Al momento non ci sono anche ppas disponibili (oltre a quello che hai provato), quindi il seguente modo di compilare mysql-5.6è in realtà il modo più semplice e unico al momento di ottenere ciò che desideri.


Tuttavia, poiché dici di essere interessato a compilare l'ultima versione di sviluppo di mysql 5.6, le seguenti istruzioni dovrebbero aiutarti:

Scarica l'ultimo codice sorgente di sviluppo dal sito mysql e verifica il download. Al momento attuale vuoi mysql-5.6.7-rc.tar.gz; andare in fondo alla pagina, selezionare le versioni di sviluppo e quindi selezionare il codice sorgente nella casella.

Adesso corri

tar xzvf mysql-5.6.7-rc.tar.gz

cd nella cartella e creare una cartella chiamata bld:

cd mysql-5.6.7-rc
mkdir bld
cd bld

A questo punto è importante recuperare le dipendenze con

sudo apt-get install build-essential cmake libaio-dev

Importante documentazione è disponibile qui sul processo di compilazione, ma ciò che probabilmente si desidera fare è semplicemente utilizzare le opzioni standard utilizzate dalla compilazione ufficiale. Per questo, come indicato qui , esegui (mentre bldsei nella cartella):

cmake -DBUILD_CONFIG=mysql_release .. 

Quindi quando la cmakeconfigurazione è terminata ed è soddisfatta (prendere nota di eventuali dipendenze mancanti menzionate; se ce ne sono alcune mancanti scaricarle e quindi eliminare tutto nella blddirectory ed eseguire cmakenuovamente il comando sopra )

Ora sei pronto per eseguire la compilazione con make ed eventuali opzioni che puoi aggiungere:

make

Al termine della compilazione (ci vorrà circa un'ora), eseguire uno dei due

sudo make install or sudo checkinstall

Ora dovresti avere mysqlun'installazione. Ogni ulteriore informazione dovrebbe essere disponibile nella guida ufficiale molto dettagliata .


Mik, apprezzo molto la tua risposta, ma sto cercando come farlo usando il metodo Debian standard. Ma grazie!
Ross Smith II,

@RossSmithII vedo la mia modifica su come farlo nel modo 'Debian' non ti farà ottenere l'ultima versione di mysql-5.6.

1
La tua risposta, sebbene molto utile e istruttiva, non risponde veramente alla domanda, poiché l'installazione da sorgente, "Debian Way", usa apt-get source -bo dpkg-buildpackage.
Ross Smith II,

1

My SQL 5.6 è disponibile per il download qui: My SQL 5.6 Download

Penso che dovrai andare con il pacchetto non rpm in fondo all'elenco.

E qui puoi trovare i dettagli su come installare questa versione: Come installare usando il pacchetto binario

Spero che sia di aiuto :)

Per installare e utilizzare una distribuzione binaria MySQL, la sequenza di comandi di base è simile alla seguente:

shell> groupadd mysql
shell> useradd -r -g mysql mysql
shell> cd /usr/local
shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz
shell> ln -s full-path-to-mysql-VERSION-OS mysql
shell> cd mysql
shell> chown -R mysql .
shell> chgrp -R mysql .
shell> scripts/mysql_install_db --user=mysql
shell> chown -R root .
shell> chown -R mysql data

Next command is optional

shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> bin/mysqld_safe --user=mysql &

Next command is optional

shell> cp support-files/mysql.server /etc/init.d/mysql.server

Questa risposta è un duplicato di askubuntu.com/a/203335/98419 e la mia risposta è stata: ... l'ho già provato. È stato installato correttamente, ma è stato installato in / opt e non ha impostato nulla in / etc, o /etc/init.d, né mi ha permesso di avviarlo con il servizio, o aggiungere /opt/mysql/server-5.6/bin al percorso o qualsiasi altra cosa.
Ross Smith II,

Per installare MySQL, la sequenza di comandi di base è simile alla seguente: shell> groupadd mysql shell> useradd -r -g mysql mysql shell> cd / usr / local shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz shell> ln -s percorso completo-mysql-VERSIONE-OS mysql shell> cd mysql shell> chown -R mysql shell> chgrp -R mysql shell> script / mysql_install_db --user = mysql shell> chown -R root shell > chown -R mysql data # Shell cmd successiva facoltativa> cp support-files / my-medium.cnf /etc/my.cnf shell> bin / mysqld_safe --user = mysql & # Next cmd shell opzionale> cp support-files / mysql.server /etc/init.d/mysql.server
Vikash Singh

Descrizione dettagliata disponibile nel link sopra menzionato: Come installare utilizzando il pacchetto binario
Vikash Singh

Grazie per il tuo seguito. Sfortunatamente, non sto chiedendo come installare MySQL 5.6 a mano. Questo è stato documentato in numerosi luoghi. Sto chiedendo come installare MySQL 5.6 usando i metodi Debian standard, sia i binari (preferiti) o via sorgente.
Ross Smith II,

0

Ecco un altro approccio rispetto alla risposta di empi89, usando uno script mysql init modificato. Sì, questo è manuale, ma questo è il prezzo da pagare per essere al limite. Oracle non fornisce un repository. Dai un'occhiata a questo post .

MODIFICA : In breve, è possibile copiare l'originale /etc/init.d/mysql in /etc/init.d/mysql-opt e modificarlo come appropriato:

  1. Sostituisci /etc/mysql/my.cnf con /etc/mysql/my-opt.cnf
  2. Sostituisci le chiamate ai binari mysql con quelle opt (es. / Usr / bin / mysqld_safe in /opt/mysql/server-5.6/bin/mysqld_safe)
  3. Sostituisci la chiamata a / etc / mysql / debian-start con / etc / mysql / debian-start-opt

Quindi, copia / etc / mysql / debian-start in / etc / mysql / debian-start-opt e modifica come appropriato:

  1. Sostituisci le chiamate ai binari mysql con quelle opt (es. / Usr / bin / mysqld_safe in /opt/mysql/server-5.6/bin/mysqld_safe)
  2. Renderlo eseguibile

    # chmod a+x /etc/mysql/debian-start-opt
    

Quindi, copia /etc/mysql/my.cnf in /etc/mysql/my-opt.cnf e modifica:

  1. Nella sezione [mysqld_safe], aggiungi la seguente riga:

     mysqld = mysqld --defaults-file=/etc/mysql/my-opt.cnf
    
  2. Nella sezione [mysqld], modifica le seguenti righe:

     basedir = /opt/mysql/server-5.6
     lc-messages-dir = /opt/mysql/server-5.6/share
    
  3. Anche se hai abilitato questo, come ho fatto io

     log_slow_queries = <log>
    

    che ora è obsoleto, dovrebbe essere sostituito dalle seguenti due righe:

     slow-query-log = TRUE
     slow-query-log-file = <log>
    

Tempo per il test Stop mysql

# /etc/init.d/mysql stop

Conservare un backup dei dati nel caso in cui sia necessario ripristinare i vecchi dati

# cp -rp /var/lib/mysql /var/lib/mysql.old

Rendi eseguibile lo script init

# chmod a+x /etc/init.d/mysql-opt

Inizia il test mysql-opt.

NOTA: questo aggiornerà le attuali tabelle interne mysql. Hai fatto il backup dei dati, vero?

# /etc/init.d/mysql-opt start

Verificare la presenza di errori nei registri. Durante il debug di un server che non si avvia è possibile eseguire manualmente l'emissione

# /opt/mysql/server-5.6/bin/mysqld_safe --defaults-file=/etc/mysql/my-opt.cnf

Se tutto è andato bene, è possibile abilitare il server opt mysql durante l'avvio. Disabilita l'esecuzione del vecchio script su init.

# update-rc.d -f mysql remove

Installa il nuovo, ignorando gli avvisi.

# update-rc.d mysql-opt defaults

Verifica che sia installato.

# ls -l /etc/rc3.d | grep mysql

Il comando precedente dovrebbe ora produrre qualcosa del tipo:

lrwxrwxrwx 1 root root 19 May 10 15:55 S17mysql-opt -> ../init.d/mysql-opt

-2

Qui hai tutte le istruzioni per installarlo dai file binari, oltre ai passaggi per installarlo /usr/bine configurarlo come servizio come richiesto ...

Installazione di Mysql 5.6


2
Grazie per questo link, ma sfortunatamente, queste istruzioni sono per l'installazione manuale del binario . la domanda è come installare mysql usando i metodi Debian standard, come apt-get.
Ross Smith II,
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.