MySQL-4.1.8a

Introduzione a MySQL

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.

Informazioni sul pacchetto

Dipendenze di MySQL

Opzionali

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

Installazione di MySQL

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* .

Spiegazioni dei comandi

--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.

Configurazione di MySQL

File di configurazione

/etc/my.cnf, ~/.my.cnf

Informazioni di configurazione

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

Contenuti

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.

Descrizione

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