====== Instalar MySQL en Slackware ======
===== Instalación de MySQL =====
Instalar MySQL desde los discos oficiales de Slackware usando [[slackware:slackpkg|slackpkg]]. Si realizó una instalación completa de Slackware, entonces ya tiene MySQL en su computadora.
===== Configurar MySQL =====
- 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.
- 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
- 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'':
#SKIP="--skip-networking"
- 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. ====
- 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 ====
- 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 =====
- Conectese a su servidor MySQL usando el siguiente comando.
user@darkstar$ mysql -u root -p
- 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 ==
- 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.
- 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/.err''. Otra opción es ejecutar el servidor directamente y dirigir la salida a la consola (use C-\ 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):
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 ======
* Originally written by [[wiki:user:arfon | arfon]]
* Traducido al español por: [[wiki:user:antares_alf | antares_alf]] \\
{{tag>howtos software mysql database author_arfon needs_content}}