Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
f1:mysql_server [2019/01/23 14:29] – lmachuca | f1:mysql_server [2023/10/12 12:47] (actual) – lmachuca | ||
---|---|---|---|
Línea 1: | Línea 1: | ||
- | ====== | + | ====== |
- | Proceso de instalación de MySQL Server. Obviamente requieren tener en el equipo el permiso para instalar software. | + | Proceso de instalación de MySQL Server. Obviamente requieren tener en el equipo el permiso para instalar software |
+ | |||
+ | ===== Resumen ===== | ||
+ | |||
+ | Los servicios de MySQL para Helpcom se instalan usando por defecto el motor **MariaDB**, | ||
+ | |||
+ | Para ser usable con Helpcom, se debe ajustar el servicio de BDD con ciertas configuraciones. Las más importantes incluyen: | ||
+ | |||
+ | * Optimizar el tiempo de commit y escritura al disco duro. | ||
+ | * Abrir el puerto a la red local, de modo de poder conectarnos desde las aplicaciones cliente. | ||
+ | * Optimizar algunos recursos como memoria o canidad de conexiones disponibles, | ||
+ | |||
+ | La paquetería de Helpcom incluye un archivo de configuración que ve la mayoría de estas variables. | ||
===== Linux ===== | ===== Linux ===== | ||
- | <note warning> | + | **Descarga Oficial**: |
- | Instalar | + | * desde el gestor de paquetes de la distribución |
- | # Debian 7 u 8 --> MySQL 5.5 | + | <note>El tutorial actual considera la instalación del servidor //MariaDB// 10.2 o posterior para Debian 9 en adelante. |
- | apt-get install mysql-server | + | |
- | # Debian 9 con las notas arriba | + | |
- | apt-get install -t unstable mysql-server | + | |
- | # Ubuntu 16.04 o posterior --> MySQL 5.7 | + | |
- | apt-get install mysql-server | + | |
- | (Tomar nota en los mensajes | + | Para habilitar un servidor |
+ | </ | ||
+ | Se asume aquí que se parte desde [[: | ||
- | El sistema preguntará la **contraseña del usuario '' | + | Instalar desde el gestor |
- | El archivo de configuración resultante es por defecto ''/ | + | # Debian 9 en adelante paquetería base de Helpcom |
+ | apt install helpcom-servidor-mysql | ||
+ | # Si se queja de ambigüedades, | ||
+ | apt install helpcom-servidor-base mariadb-server mariadb-client | ||
+ | |||
+ | # Ubuntu 16.04 a 18.04 --> MySQL 5.7 | ||
+ | apt install mysql-server helpcom-servidor-mysql | ||
+ | |||
+ | # Ubuntu 20.04 en adelante | ||
+ | apt install helpcom-servidor-mysql | ||
+ | |||
+ | El archivo de configuración resultante es por defecto ''/ | ||
+ | |||
+ | El árbol de la base de datos está guardado por defecto en ''/ | ||
====Postinstalación==== | ====Postinstalación==== | ||
- | Los siguientes elementos deben configurarse en el servidor **antes** de crear las primeras bases de datos e ingresar datos: | + | |
+ | Los siguientes elementos deben configurarse en el servidor **antes** de crear las primeras bases de datos e ingresar datos. Como '' | ||
1.- Detener el servicio. | 1.- Detener el servicio. | ||
Línea 30: | Línea 53: | ||
service mysql stop | service mysql stop | ||
- | 2.- Editar | + | 2.- Ir a la carpeta de configuración de MySQL y copiar el archivo |
- | <file my.cnf.agregar> | + | <code bash> |
- | [mysqld] | + | cd / |
- | # Agregar los siguientes campos: | + | cp my.helpcom.cnf ./ |
+ | </ | ||
- | # Permitir conexión desde fuera: | + | 3.- Editar el archivo resultante con las configuraciones que deseamos. |
- | bind-address = * | + | |
- | # Puerto de conexión: | + | |
- | port = 3306 | + | |
- | # Modelo de almacenamiento de binarios | + | |
- | innodb_file_per_table = 1 | + | |
- | # Modelo de sincronización en disco | + | |
- | innodb_flush_method = O_DIRECT | + | |
- | </file> | + | <code bash> |
+ | nano mariadb.conf.d/ | ||
+ | </code> | ||
+ | |||
+ | Esto debe mostrar algunas configuraciones base para el servidor. Podemos aprovechar de configurar lo que necesitemos. | ||
+ | |||
+ | Guardar y salir. | ||
3.- Reiniciar el servicio: | 3.- Reiniciar el servicio: | ||
service mysql start | service mysql start | ||
- | |||
- | 4.- Agregar el siguiente paquete a la instalación: | ||
- | |||
- | apt-get install mysql-utilities | ||
A este punto, antes de continuar, conviene chequear las **[[# | A este punto, antes de continuar, conviene chequear las **[[# | ||
+ | ==== Carga de Credenciales ==== | ||
+ | Si se ha seguido la paquetería de Helpcom, es bastante fácil cargar las credenciales por defecto (los usuarios " | ||
+ | |||
+ | <code bash> | ||
+ | mysql < / | ||
+ | </ | ||
===== Windows ===== | ===== Windows ===== | ||
+ | |||
+ | <note warning> Configuración no recomendada. Windows no es bueno para servidores, ni menos cuando al mismo tiempo se usa como caja. Es mejor hacer una [[: | ||
+ | |||
+ | **Descarga Oficial**: | ||
+ | |||
+ | * [[https:// | ||
+ | * Escoger " | ||
+ | |||
[{{ : | [{{ : | ||
- | Para instalar se usa uno de los instaladores de MySQL Server, " | + | Para instalar se usa uno de los instaladores de MariaDB |
Se escogen en general las siguientes opciones de instalación: | Se escogen en general las siguientes opciones de instalación: | ||
Línea 97: | Línea 130: | ||
# Permitir conexión desde fuera: | # Permitir conexión desde fuera: | ||
+ | # (chequear también Firewall de Windows) | ||
bind-address = * | bind-address = * | ||
# Puerto de conexión: | # Puerto de conexión: | ||
Línea 118: | Línea 152: | ||
===== Configuración Inicial ===== | ===== Configuración Inicial ===== | ||
- | Completados estos pasos y ya andando el servicio de MySQL lo que queda es **[[f1: | + | Completados estos pasos y ya andando el servicio de MySQL lo que queda es **[[f1: |
+ | |||
+ | - Configurar el acceso para el usuario '' | ||
+ | - Abrir el puerto para que otros equipos cliente puedan conectarse. | ||
+ | - Crear los usuarios y privilegios base de Helpcom. | ||
+ | |||
+ | ==== Carga de Credenciales ==== | ||
+ | |||
+ | La carga de credenciales en Windows debe hacerse manualmente, | ||
===== Desinstalar ===== | ===== Desinstalar ===== | ||
- | Para desinstalar **correctamente** ver los pasos en [[.MySQL Server Desinstalar]]. | + | Para desinstalar **correctamente** ver los pasos en [[.MySQL Server Desinstalar]], o seguir la documentación oficial. |
===== Notas ===== | ===== Notas ===== | ||
- | ====Debian9 MySQL==== | + | ====Windows I/O Error en Equipos de 64-bit==== |
- | <note info>: | + | <note info>:!: Para: Equipos con Windows 8 en adelante 64-bit, en particular notebooks, cuando instalan MySQL 5.5 o anterior.</ |
- | 1.- Crear el siguiente archivo de repositorio: | + | Este caso afecta particularmente a clientes como Daos. |
- | 2.- Colocar en el archivo la siguiente línea:\\ '' | + | FIXME Pendiente |
- | 3.- Guardar y salir. | + | ====root tiene contraseña==== |
- | 4.- Crear el siguiente archivo:\\ '' | + | **Síntoma**: Windows MySQL Setup Wizard dice que root tiene contraseña |
- | Con el siguiente contenido: | + | <note info>:!: Para: Equipos con Windows que ya tenían una instalación previa de MySQL Server.</ |
- | < | + | Si el equipo ya tenía una instalación de MySQL Server previa, tanto el servicio de Windows como el binario de la base de datos guardan información de la cuenta y permisos anteriores de '' |
- | Package: mysql-server | + | |
- | Pin: release a=unstable | + | |
- | Pin-Priority: | + | |
- | </ | + | Para solucionar este problema es necesario seguir los siguientes pasos **en orden**: |
- | 5.- Guardar y salir. | + | - Detener el servicio de MySQL. |
+ | - Desinstalar MySQL server [[mysql server desinstalar|como se indica en la página de desinstalación]], | ||
+ | - Borrar el directorio de MySQL Server en //Program Files//. | ||
+ | - Verificar manualmente que el servicio de MySQL está eliminado. | ||
+ | | ||
- | 6.- Actualizar los repositorios. | + | Luego de esto, proceder a la instalación de servidor de MySQL desde cero. |
- | apt-get update | + | ====Usuario local login a root==== |
- | Luego de esto [[#Linux|continuar | + | <note info>:!: Para: Linux con MySQL 5.7 en adelante.</ |
- | ====Windows I/O Error en Equipos | + | Desde MySQL 5.7 (o MariaDB 10.1), el acceso a '' |
- | <note info>:!: Para: Equipos | + | * crear un nuevo superusuario |
+ | * cambiar la autenticación del usuario '' | ||
- | Este caso afecta particularmente | + | **a) Crear un nuevo superusuario** |
- | FIXME Pendiente | + | :!: Esta estrategia se seguirá empezando con los servidores Linux que lance Helpcom desde Marzo de 2020 en adelante. |
- | ====Windows MySQL Setup Wizard dice que root tiene contraseña==== | + | La paquetería de Helpcom incluye un script |
- | <note info>:!: Para: Equipos con Windows que ya tenían una instalación previa de MySQL Server.</note> | + | sh /usr/ |
- | FIXME Pendiente | + | El script pedirá una contraseña para el nuevo root y creará el usuario. |
- | ====Usuario local login a root==== | + | La creación debiera ser equivalente al procedimiento SQL siguiente: |
- | <note info>:!: Para: Linux con MySQL 5.7 en adelante.</ | + | <code mysql> |
+ | CREATE USER ' | ||
+ | GRANT ALL on *.* TP ' | ||
+ | GRANT SUPER TO ' | ||
+ | FLUSH PRIVILEGES; | ||
- | Desde MySQL 5.7, el acceso a '' | + | </code> |
- | alter user root@' | + | **b) Cambiar el acceso para el usuario |
- | flush privileges; | + | |
- | (Cambiar "'' | + | Entrar a la consola |
- | Una vez ejecutados estos pasos es posible confirmar que es posible acceder a la consola de '' | + | # MySQL 5.7 |
+ | ALTER USER root@' | ||
+ | FLUSH PRIVILEGES; | ||
+ | |||
+ | # MariaDB | ||
+ | UPDATE mysql.user SET password=password(' | ||
+ | FLUSH PRIVILEGES; | ||
+ | |||
+ | |||
+ | (Cambiar "'' | ||
+ | |||
+ | Una vez ejecutados estos pasos es posible confirmar que es posible acceder a la consola de '' | ||
mysql -h localhost -u root -p | mysql -h localhost -u root -p | ||
- | # Alternativamente | ||
mysql -h 127.0.0.1 -u root -p | mysql -h 127.0.0.1 -u root -p | ||
+ | |||
+ | :!: **Nota**: Si debido a una actualización de sistema cambia la versión de MySQL server, puede ser necesario ejecutar estos pasos nuevamente. | ||
+ | |||
+ | :!: **Nota**: Al seguir este procedimiento, | ||
Línea 190: | Línea 251: | ||
<note info>:!: Para: Servidores MySQL donde el cliente puede conectarse con un '' | <note info>:!: Para: Servidores MySQL donde el cliente puede conectarse con un '' | ||
- | En MySQL 5.5, algunas tablas pueden insertar o leer información en el '' | + | En MySQL 5.5, algunas tablas pueden insertar o leer información en el '' |
Para asegurarse que las tablas se generan en el sistema con el COLLATION correcto por defecto, es necesario editar '' | Para asegurarse que las tablas se generan en el sistema con el COLLATION correcto por defecto, es necesario editar '' |