MySQL è un server di database SQL veloce ed ampiamente utilizzato. È un'implementazione client/server che consiste di un demone server e diversi programmi client e librerie.
Download (HTTP): http://mysql.he.net/Downloads/MySQL-4.1/mysql-4.1.8a.tar.gz
Download (FTP): ftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-4.1/mysql-4.1.8a.tar.gz
Download MD5 sum: 2886edbe5cc826727fbb79a79d41145c
Dimensione del download: 22 MB
Stima dello spazio su disco richiesto: 117 MB
Stima del tempo di costruzione: 4.65 SBU
OpenSSL-0.9.7e, tcpwrappers-7.6, libedit (come alternativa a readline), ORBit-0.5.17 (rilevato solo se è installato which-2.16), Doxygen-1.4.1 e TeX-2.0.2
Per motivi di sicurezza, è fortemente consigliato di eseguire il server come utente e gruppo non privilegiato:
groupadd mysql &&
useradd -c mysql -d /dev/null -g mysql -s /bin/false mysql
Compilare ed installare MySQL eseguendo i seguenti comandi:
CPPFLAGS="-D_GNU_SOURCE" ./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/sbin --localstatedir=/srv/mysql \
--enable-thread-safe-client --enable-assembler \
--enable-local-infile --with-named-thread-libs=-lpthread \
--with-unix-socket-path=/var/run/mysql/mysql.sock \
--without-debug --without-bench --without-readline &&
make testdir=/usr/lib/mysql/mysql-test &&
make testdir=/usr/lib/mysql/mysql-test install &&
cd /usr/lib &&
ln -sf mysql/libmysqlclient{,_r}.so* .
--libexecdir=/usr/sbin: questo switch installa il demone mysqld in una locazione appropriata.
--localstatedir=/srv/mysql: questo switch forza MySQL ad usare /srv/mysql per i file del database e altri dati variabili.
--enable-thread-safe-client: questo switch compila una libreria client MySQL thread-safe.
--enable-assembler: questo switch permette di usare versioni assembler di alcune funzioni per le stringhe.
--enable-local-infile: questo switch abilita l'istruzione SQL LOAD DATA INFILE.
CPPFLAGS="-D_GNU_SOURCE" --with-named-thread-libs=-lpthread: questa variabile di ambiente e switch di configurazione abilita la costruzione su sistemi NPTL.
--with-unix-socket-path=/var/run/mysql: questo switch mette il socket relativo al dominio unix nella directory /var/run/mysql invece che in quella di default /tmp.
--without-bench: questo switch salta la costruzione della suite di benchmark.
--without-readline: questo switch forza il processo di costruzione ad usare la copia di sistema di readline invece di quella del pacchetto.
make testdir=...: questo installa la suite di test in /usr/lib/mysql/mysql-test. BLFS sta attualmente cercando un modo per omettere del tutto l'installazione della suite di test.
ln -sf mysql/libmysqlclient{,_r}.so* .: questo comando rende disponibili in run-time ad altri pacchetti le librerie condivise di MySQL.
--with-libwrap: questo switch aggiunge a MySQL il supporto per i tcpwrapper.
--with-openssl: questo switch aggiunge a MySQL il supporto per OpenSSL.
Ci sono parecchi file di configurazione di default disponibili in /usr/share/mysql che si possono usare. Creare /etc/my.cnf usando il seguente comando:
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
Adesso si può installare un database e darne la proprietà ad un utente e gruppo non privilegiato.
mysql_install_db --user=mysql
Per ulteriori configurazioni è richiesto che il server MySQL sia in esecuzione:
install -o mysql -d /var/run/mysql &&
mysqld_safe --user=mysql 2>&1 >/dev/null &
Un'installazione di default non imposta la password per l'amministratore, per cui si può usare il seguente comando per averne una. Sostituire [new-password] con la propria password.
mysqladmin -u root password [new-password]
La configurazione del server adesso è completa. Terminare l'esecuzione del server usando il seguente comando:
mysqladmin -p shutdown
Installare lo script di inizializzazione /etc/rc.d/init.d/mysql incluso nel pacchetto blfs-bootscripts-6.0.
make install-mysql
Il pacchetto MySQL contiene client_test, comp_err, isamchk, isamlog, make_win_binary_distribution, make_win_src_distribution, msql2mysql, my_print_defaults, myisam_ftdump, myisamchk, myisamlog, myisampack, mysql, mysql_config, mysql_convert_table_format, mysql_create_system_tables, mysql_explain_log, mysql_find_rows, mysql_fix_extensions, mysql_fix_privilege_tables, mysql_install_db, mysql_secure_installation, mysql_setpermission, mysql_tableinfo, mysql_tzinfo_to_sql, mysql_waitpid, mysql_zap, mysqlacess,mysqladmin, mysqlbinlog, mysqlbug, mysqlcheck, mysqld, mysqld_multi, mysqld_safe, mysqldump, mysqldumpslow, mysqlhotcopy, mysqlimport, mysqlmanager, mysqlmanager-pwgen, mysqlmanagerc, mysqlshow, mysqltest, pack_isam, perror, replace, resolve_stack_dump, resolveip, libdbug, libheap, libmerge, libmyisam, libmyisammrg, libmysqlclient, libmysqlclient_r, libmystrings, libmysys, libnisam e libvio.
Un elenco esaustivo del pacchetto occuperebbe parecchie pagine. Consultare la documentazione MySQL per i dettagli completi.
Alcuni programmi di supporto a MySQL potrebbero richiedere i moduli DBI Perl per funzionare correttamente.
Last updated on