[2025-jun-17] The SlackDocs mailing lists at https://lists.alienbase.nl/mailman/listinfo have been retired. No one has been using these lists for years and it's time to say goodbye. The list archives remain available at https://scalzi.slackware.nl/mailman/listinfo/slackdocs

[2025-jun-17] The SlackDocs Wiki has moved to a new server, in order to make it more performant.

Welcome to the Slackware Documentation Project

¡Esta es una revisión vieja del documento!


“Work in progress (antares_alf)”

Instalar MySQL en Slackware

Instalación de MySQL

Instalar MySQL desde los discos oficiales de Slackware usando slackpkg. Si realizó una instalación completa de Slackware, entonces ya tiene MySQL en su computadora.

Configurar MySQL

  1. Cree la(s) base(s) de datos necesaria(s) y establezca sus permisos correctamente
    Como root, ejecute:
    root@darkstar# mysql_install_db --user=mysql

El usuario especificado por –user será el propietario de los archivos de la base de datos, por lo que es importante establecer el usuario correcto, de lo contrario, MySQL no podrá escribir en sus bases de datos. De forma predeterminada, MySQL en Slackware se ejecuta como usuario “mysql”, por lo que esa es la opción segura.

  1. Habilite la ejecución del script rc script para iniciar MySQL automaticamente en el arranque
    Esto es opcional.
    root@darkstar# chmod 755 /etc/rc.d/rc.mysqld
  2. Habilite las redes si es necesario
    Las redes están deshabilitadas de forma predeterminada para mejorar la seguridad. Si desea permitir conexiones de red, comente esta línea en /etc/rc.d/rc.mysqld:
    rc.mysqld
    #SKIP="--skip-networking"
  3. Iniciar mysqld
    root@darkstar# /etc/rc.d/rc.mysqld start

    y proceda a la sección “Seguridad de MySQL”.

Seguridad de MySQL

Tienes una opción: configuración manual o automática de acceso seguro.

Configuración automática de acceso seguro.

  1. Ejecute el siguiente comando, y responda las pregruntas
    root@darkstar# /usr/bin/mysql_secure_installation

    La contraseña inicial de root es “” (una cadena vacía), así que solo presione ENTER cuando el comando anterior solicite la contraseña.

Configuración manual del acceso seguro

  1. Asignar una contraseña para MySQL de la cuenta root
    root@darkstar# mysqladmin -u root password 'new-password-here'

    Si habilitó la conexión de red, usted deberá, además, ejecutar este comando:

    root@darkstar# mysqladmin -u root -h 'your-hostname' password 'new-password'
Verifique los resultados de mysql_install_db, estos comandos están impresos, puede copiarlos/pegarlos. El nombre de host ya será reemplazado por el suyo.

Conectando a su servidor MySQL

  1. Conectese a su servidor MySQL usando el siguiente comando.
    user@darkstar$ mysql -u root -p
  2. Por razones de seguridad debes eliminar el usuario anónimo
    • Para el servidor localhost:
      mysql> use mysql
      mysql> SELECT user, host FROM user;
      mysql> DELETE FROM user WHERE host='localhost' AND user='';
    • Si habilitó la red, debería ejecutar este comando en su lugar:
      mysql> use mysql
      mysql> SELECT user, host FROM user;
      mysql> DELETE FROM user WHERE user='';

Agregar soporte Unicode

  1. Cambie de directorio al directorio /etc/ y seleccione la configuración que prefiera. Para un servicio de base de datos simple sin una gran carga de MySQL, se recomienda utilizar “my-large.cnf” si tiene 2 GB de RAM o más. Copie el archivo de configuración elegido y asigne el nombre /etc/my.cnf a la copia.
  2. Edite el archivo /etc/my.cnf adicionando estas lineas en la sección “[mysqld]”:
    [mysqld]
    collation-server = utf8_unicode_ci
    init-connect='SET NAMES utf8'
    character-set-server = utf8

    Esto le brindará soporte total para UTF8 en su servidor MySQL, después de reiniciarlo.

En el enlace se describe más sobre la compatibilidad con el juego de caracteres Unicode/UTF8: http://stackoverflow.com/questions/3513773/change-mysql-default-character-set-to-utf8-in-my-cnf

Solución de problemas

  • Los errores de inicio del servidor se pueden ver en el registro de errores que se encuentra de forma predeterminada en /var/lib/mysql/<hostname>.err. Otra opción es ejecutar el servidor directamente y dirigir la salida a la consola (use Ctrl+\ para detener el servidor). Ejecute:
    root@darkstar# /usr/bin/mysqld_safe --console
  • Se puede restablecer la contraseña de root creando un nuevo archivo cnf y agregando las siguientes líneas (cambie la contraseña en este ejemplo):
    mysql_new.cnf
    UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE USER='root';
    FLUSH PRIVILEGES;

    Guarde este archivo (cualquier nombre serviría) e inicie el servidor con el argumento -init-file:

    root@darkstar# /usr/bin/mysqld_safe --defaults-file="new_cnf_file.cnf"

Sources

QR Code
QR Code es:howtos:databases:install_mysql_on_slackware (generated for current page)