MySQL-3.23.55

Introducción a MySQL

Localización de descarga (HTTP):		http://mysql.he.net/Downloads/MySQL-3.23/mysql-3.23.55.tar.gz
Localización de descarga (FTP):			ftp://mirror.mcs.anl.gov/pub/mysql/Downloads/MySQL-3.23/mysql-3.23.55.tar.gz
Versión usada:					3.23.55
Tamaño del paquete:				11 MB
Estimación del espacio necesario en disco:	70 MB

El paquete MySQL contiene la librería mysql, el servidor y las utilidades cliente.

Instalación de mysql

Por razones de seguridad, ejecutar el servidor con un usuario y grupo sin privilegios es súmamente recomendable:

groupadd mysql &&
useradd -c mysql -d /dev/null -g mysql -s /bin/false mysql

Construye e instala mysql ejecutando los siguientes comandos:

cp configure configure.old &&
sed -e "s%mysql-test/Makefile%%" -e "s% mysql-test%%" configure.old > configure &&
./configure --prefix=/usr \
            --sysconfdir=/etc \
            --libexecdir=/usr/sbin \
            --localstatedir=/var/lib/mysql \
            --enable-thread-safe-client \
            --without-debug \
            --without-bench &&
make &&
make install

Explicación de los comandos

sed -e "s%mysql-test/Makefile%%" -e "s% mysql-test%%" configure.old > configure: Este sed se usa para desactivar los tests de mysql.

Configuración de mysql

Información sobre la configuración

Puedes usar varios ficheros con configuraciones predefinidas, que están en /usr/share/mysql.

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

Ahora podemos crear una base de datos y cambiar el propietario al usuario y grupo sin privilegios.

mysql_install_db
chown -R mysql:mysql /var/lib/mysql

Para completar la configuración es necesario que el servidor mysql se esté ejecutando:

safe_mysqld 2>&1 >/dev/null &

La instalación por defecto no establece una contraseña para el administrador. Así que nos conectaremos y le pondremos una. Sugerimos encarecidamente que cambies 'nueva-contraseña' por la tuya propia.

mysql -uroot mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2 to server version: 3.23.51-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> UPDATE user SET password=password('nueva-contraseña') WHERE user='root';
Query OK, 2 rows affected (0.00 sec)
Rows matched: 2  Changed: 2  Warnings: 0

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

mysql> EXIT;
bye

Ahora que hemos terminado la configuración del servidor podemos cerrarlo.

kill `pidof -x safe_mysqld mysqld`

Guión de init.d para mysql

Para automatizar la ejecución de mysql, usa los siguientes comandos para crear el guión init.d:

cat > /etc/rc.d/init.d/mysql << "EOF"
#!/bin/bash
# Inicio $rc_base/init.d/

# Basado en el guión sysklogd de LFS-3.1 y anteriores.
# Reescrito por Gerard Beekmans  - gerard@linuxfromscratch.org

source /etc/sysconfig/rc
source $rc_functions

case "$1" in
        start)
                echo "Iniciando el demonio MySQL..."
                /usr/bin/safe_mysqld 2>&1 >/dev/null &
                evaluate_retval
                ;;

        stop)
                echo "Parando el demonio MySQL..."
                killproc mysqld
                ;;

        restart)
                $0 stop
                sleep 1
                $0 start
                ;;

        status)
                statusproc /usr/sbin/mysqld
                ;;

        *)
                echo "Usage: $0 {start|stop|restart|status}"
                exit 1
                ;;
esac

# Fin $rc_base/init.d/
EOF
chmod 755 /etc/rc.d/init.d/mysql

Crea los enlaces simbólicos a este fichero en el directorio rc.d con los siguientes comandos:

cd /etc/rc.d/init.d &&
ln -sf ../init.d/mysql ../rc0.d/K26mysql &&
ln -sf ../init.d/mysql ../rc1.d/K26mysql &&
ln -sf ../init.d/mysql ../rc2.d/K26mysql &&
ln -sf ../init.d/mysql ../rc3.d/S34mysql &&
ln -sf ../init.d/mysql ../rc4.d/S34mysql &&
ln -sf ../init.d/mysql ../rc5.d/S34mysql &&
ln -sf ../init.d/mysql ../rc6.d/K26mysql

Contenido

El paquete mysql contiene mysql, mysqladmin, mysqlcheck, mysqlshow, mysqldump, mysqlimport, mysqltest, mysqlbinlog, replace, comp_err, perror, resolveip, my_print_defaults, resolve_stack_dump, isamchk, isamlog, pack_isam, myisamchk, myisamlog, myisampack, safe_mysqld, mysql_install_db, msql2mysql, mysql_config, mysql_fix_privilege_tables, mysql_setpermission, mysql_zap, mysqlacess, mysqlbug, mysql_convert_table_format, mysql_find_rows, mysqlhotcopy, mysqldumbslow, mysqld_multi y mysqld.

Descripción

Un listado del paquete sería demasiado largo. Sugerimos, en su lugar, consultar los detalles completos en la documentación de mysql.

Ciertos programas de soporte de mysql pueden necesitar que instales los módulos DBI de perl para funcionar correctamente.