2012-05-16 7 views
5

Ho bisogno di un modo generico per installare MySQL 5.5 in quasi tutti i sistemi operativi Linux da utenti non root. Quindi ho pensato di installare MySQL dalla sua origine e installarlo dove mi serve.Come installare MySQL 5.5 usando Source da un utente Linux non root?

È davvero possibile installare MySQL in home utente non root? Qualcuno ha qualche idea per questo? Si prega di condividere la tua esperienza per lo stesso.

Il vincolo principale qui è che ho bisogno di installare MySQL 5.5 da qualsiasi utente non root in modo generico e possibilmente per quasi tutti i sistemi operativi Linux.

Qualsiasi suggerimento sarebbe apprezzato.

Grazie.

CONCLUSIONE Ho provato con Ubuntu-11.10, finalmente sono stato in grado di installare MySQL-5.5 da utente non root con il vincolo che MySQL non è accessibile dal prompt della console/comandi. Poiché mysqld è attivo e funzionante, MySQL è facilmente accessibile tramite qualsiasi strumento GUI che si collega a MySQL tramite connettori JDBC. Se si tenta di accedere a MySQL da prompt dei comandi utilizzando radice

mysql -u -p

comando stava dando problemi segmentation fault. Un'altra cosa che ho provato per Fedora Linux anche da utente non root, in quanto mysqld stava fallendo e non posso accedere a mysql comunque :(.

risposta

1

Immagino che questo dovrebbe essere possibile ma non necessariamente facile da fare. per costruire dal sorgente e modificare il Makefile in modo che la destinazione dell'installazione punti alla directory locale dell'utente, inoltre, penserei che avresti bisogno di gironzolare con altre opzioni di configurazione predefinite in MySQL, che possono anche essere modificate dai file di configurazione. Alla fine, dovresti essere in grado di lanciare mysqld a patto che non ti leghi a nessuna porta inferiore a 1000 (il che è comunque il caso in cui MySQL viene eseguito di default sulla porta 3306)

5

Devi personalizzare queste tre variabili :

MYSQL_DATADIR 
SYSCONFDIR 
CMAKE_INSTALL_PREFIX 

Esempio:

$ cd <mysql_src_dir> 
$ cmake -i . 
    Would you like to see advanced options? [No]:Yes 
    Please wait while cmake processes CMakeLists.txt files.... 
    ... 
    Variable Name: CMAKE_INSTALL_PREFIX 
    Description: install prefix 
    Current Value: /usr/local/mysql 
    New Value (Enter to keep current value): /home/user/mysql 
    ... 
    Variable Name: MYSQL_DATADIR 
    Description: default MySQL data directory 
    Current Value: /usr/local/mysql/data 
    New Value (Enter to keep current value): /home/user/mysql/data 
    ... 
    Variable Name: SYSCONFDIR 
    Description: config directory (for my.cnf) 
    Current Value: /usr/local/mysql/etc 
    New Value (Enter to keep current value): /home/user/mysql/etc 
$ make 
$ make install 

Invece di cmake -i . è possibile utilizzare cmake -D MYSQL_DATADIR=/home/user/mysql/data -D SYSCONFDIR=/home/user/mysql/etc -D CMAKE_INSTALL_PREFIX=/home/user/mysql .

+0

Grazie per la risposta. Finalmente l'ho installato, cambiato la password di root e poi dopo aver provato ad accedere, visualizza un messaggio di benvenuto e subito dopo dà l'errore: "errore di segmentazione". – SmartSolution

+0

Ho appena combattuto con CMake per una build MySQL non root e ho trovato che più '-D' args non erano supportati con la mia versione di CMake. Lezione appresa: Scarica l'ultima versione di CMake prima di provare quanto sopra. – kevinarpe

Problemi correlati