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.
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 |
sed -e "s%mysql-test/Makefile%%" -e "s% mysql-test%%" configure.old > configure: Este sed se usa para desactivar los tests de mysql.
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` |
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 |
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.