martes, 21 de junio de 2016

Instalar MySQL 5.7.x y utilerias en Fedora 24

Con la llegada de Fedora 24, ahora toca actualizar todos nuestros paquetes a las versiones más recientes. Esto no obligatorio obviamente, pero si es recomendable hacerlo.

La instalación de MySQL, y MySQL Workbench requiere del repositorio oficial de MySQL para permitir la instalación. Además, en los primeros meses usualmente no está disponible Workbench, sin embargo siempre podemos utilizar DBeaver, una alternativa para Workbench.

1.- Primero que nada descargar el repositorio

2.- Instalarlo
$ mysql57-community-release-fc24-8.noarch.rpm
3.- Habilitar MySQL 5.7.x ya que por default viene activada la opción 5.6.x
$ sudo dnf config-manager --enable mysql57-community
$ sudo dnf repolist enabled | grep "mysql.*-community.*"
$ sudo dnf config-manager --disablerepo mysql56-community-source
$ sudo dnf config-manager --disablerepo mysql56-community
$ sudo dnf -y update

4.- Instalar MySQL
sudo dnf -y install mysql-community-server
5.- Iniciar MySQL
sudo systemctl start mysqld.service
6.- Antes de proseguir con la configuración de MySQL es necesario buscar la contraseña temporal que se le asigna al servidor con el siguiente comando:
sudo grep 'temporary password' /var/log/mysqld.log
Y les mostrará algo así:
2016-06-21T23:50:02.789634Z 1 [Note] A temporary password is generated for root@localhost: ej2VXy(eNN.p

7.- Iniciar configuración de MySQL:

$ mysql_secure_installation

y lanzará en la terminal lo siguiente:

Set root password? [Y/n] Y
New password: 
Re-enter new password: 
Password updated successfully!
Reloading privilege tables..
 ... Success!


By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.

Remove anonymous users? [Y/n] Y
 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n
 ... skipping.

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] n
 ... skipping.

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] Y
 ... Success!




All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!


Cleaning up...

Ya han finalizado la instalación de mysql: para probarlo ingresar en la terminal:

mysql -u root -p

Les pedirá la contraseña, al ingresarla les mostrará lo siguiente:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 5.7.13 MySQL Community Server (GPL)

Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

Si les muestra ese resultado, entonces todo ha ido perfecto.

Debido a que en los repositorios oficiales de MySQL aún no está disponible MySQL Workbench, no se puede instalar.
Pero cuando ya está disponible, la instalación es la siguiente:

Listar todas las utilerias disponibles para instalar:

sudo dnf --disablerepo=\* --enablerepo='mysql*-community*' list available

Y les mostrará una lista de todos los elementos disponibles, lo que hay que hacer es:

sudo dnf install mysql-workbench-community

Gracias por Visitar...

14 comentarios:

  1. Tengo el problema que no me muestra la contraseña temporal para poder hacer la instalacion segura, sabras que pueda ser?

    ResponderBorrar
    Respuestas
    1. Gracias por comentar...

      no me ha pasado ese problema...

      pero antes de eso, estás actualizando de alguna versión anterior o es nueva la instalación? si es así, desinstala todo, y elimina los directorios de mysql en donde sea que estén, archivos de configuración, etc, y vuelve a instalar...

      ejecuta el comando en modo root...

      Borrar
  2. Al tratar de cambiar la contraseña de "root", obtuve el error: "... Failed! Error: Your password does not satisfy the current policy requirements". Aquí está la documentación que resuelve el problema: "https://dev.mysql.com/doc/refman/5.7/en/validate-password-plugin.html".

    ResponderBorrar
    Respuestas
    1. Gracias por el comentario... y pues como lo dice el error, se debe a que la contraseña no es lo suficientemente fuerte...

      Borrar
  3. Si se logra instalar el paquete "mysql-workbench-community", se instala una utilidad gráfica que sirve para administrar las bases de datos. A esa utilidad se puede ingresar mediante la terminal, con el comando "mysql-workbench".

    ResponderBorrar
    Respuestas
    1. Claro que sí. No sé si tu comentario es pregunta, duda o confirmación... pero sí, efectivamente lo que dices es correcto...

      Borrar
    2. Es una afirmación. Lo que pasa es que no sabía para qué sirve esa utilidad y quise compartir mi descubrimiento.

      Borrar
    3. Oh, me parece bien... Y si prefieres usar MariaDB entonces te recomiendo Dbeaver

      Borrar
    4. Lo que pasa es que antes hacía ese trabajo con phpMyAdmin, pero ahora no podía. Por eso compartí el descubrimiento para aquellos que quieran trabajar con este MySQL en vez de MariaDB, pues hace el mismo trabajo que phpMyAdmin.

      Borrar
    5. ok. gracias por comentar y segerir, en la entrada ya incluye la instalación de WOrkbench.

      Borrar
  4. Aquí comparto el siguiente enlace: "http://www.elguillemola.com/index.php/2015/04/como-conectar-a-una-base-de-datos-de-mysql-en-un-servidor-web-desde-net/". Se podría intentar acceder mediante esa clase a un servidor MySQL en Linux, desde punto NET y luego tratar de instalar la aplicación en Fedora, valiéndose de la utilidad Wine.

    ResponderBorrar
    Respuestas
    1. Es todo un caso complicado lo que dices. Aunque cuando migras a linux, definitivamente no es buena idea hacer lo que mencionas. Además en los últimos días, ya está disponible net para linux.

      Ahora, que si quieres una aplicación para conectarse a mysql, pues, siempre está la opción de hacerlo con java

      Borrar
    2. Se trata de una sugerencia que se podría probar para migrar a Linux las aplicaciones de acceso a base de datos que se tienen en Windows. Además punto NET tiene la ventaja de que le provee de mucha infraestructura al programador de la que se puede valer, sin tener que empezar desde 0. Por otra parte, es mucho mejor para un usuario de una aplicación trabajar en Linux que en Windows. Por eso valdría la pena hacer la prueba.

      Borrar
    3. De todos modos, con la clase que compartí de acceso a bases de datos MySQL desde punto NET, lo primero que se podría hacer es tratar de programar el acceso a bases de datos MySQL, aunque sean de servidores Windows, luego tratar de conseguir el acceso a bases de datos ubicadas en servidores Linux y por último, lograr que funcione la aplicación de punto NET en Linux. Yo pienso que con la evolución de Fedora, en un futuro no muy lejano funcionarán muchas aplicaciones de Windows allí y valdría la pena esperar.

      Borrar